/* Shared bento layout system. Color primitives live in src/theme-root.css. */
.fs-playful{background:var(--fs-paper);--color-muted:var(--fs-copy)}
.fs-playful .container,.fs-playful .fw-wrap{max-width:1320px}
.fs-playful .section,.fs-playful .fw-section{padding-block:96px}
.fs-playful .section-tinted,.fs-playful .fw-lilac{background:var(--fs-paper);border-radius:0}
.fs-playful h1,.fs-playful h2,.fs-playful h3{text-wrap:balance}
.fs-playful .section h2,.fs-playful .fw-section h2{font-size:clamp(32px,4.1vw,58px);line-height:1.08;max-width:940px}
.fs-playful .section-head{margin-bottom:42px;max-width:940px}
.fs-playful .section-head>p{max-width:70ch;font-size:18px;line-height:1.7}
.fs-playful .section-eyebrow{font-size:12px;letter-spacing:.16em;margin-bottom:18px;display:block}
.fs-playful .hero,.fs-playful .hero-lite,.fs-playful .fw-hero{background:var(--fs-cloud);border-radius:0 0 48px 48px}
.fs-playful .hero::before{background:var(--fs-ice);width:620px;height:620px;right:-100px;top:120px}
.fs-playful .hero-inner{padding-block:145px 75px;gap:56px}
.fs-playful .hero h1{font-size:clamp(42px,4.4vw,66px);line-height:1.16}
.fs-playful .hero-sub{font-size:18px}
.fs-playful .clients{padding-block:24px 42px;border-top:1px solid var(--fs-line)}
.fs-playful .clients-title{font-size:10px}
.fs-playful .hero .eyebrow{border:0;background:transparent;padding:0;max-width:100%;border-radius:0;letter-spacing:.12em}
.fs-playful .btn-brand,.fs-playful .fw-page .btn.fw-button{border-radius:16px;box-shadow:none;padding:18px 26px}
.fs-playful .btn-brand:hover,.fs-playful .fw-page .btn.fw-button:hover{box-shadow:0 5px 0 var(--fs-ink);transform:translateY(-3px)}
.fs-playful .btn-nav{border-radius:999px;padding:14px 22px}
/* Asymmetry reflects priority: one detailed lead, then supporting answers. */
.fs-playful .fb-editorial{grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
.fs-playful .fb-card{grid-column:span 4;padding:var(--fb-card-pad);border-radius:var(--fb-card-radius);background:var(--fb-card-bg);min-height:300px;isolation:isolate;border:0}
.fs-playful .fb-card:nth-child(6n+2){--fb-card-bg:var(--fs-blue-gray)}
.fs-playful .fb-card:nth-child(6n+3){--fb-card-bg:var(--fs-soft-blue)}
.fs-playful .fb-card:nth-child(6n+4){--fb-card-bg:var(--fs-cloud)}
.fs-playful .fb-card:nth-child(6n+5){--fb-card-bg:var(--fs-gray)}
.fs-playful .fb-card h3{font-size:clamp(25px,2.4vw,34px);line-height:1.12;letter-spacing:-.04em;margin:0 0 20px;color:var(--fs-ink)}
.fs-playful .fb-card p{color:var(--fs-copy);font-size:17px;line-height:1.75;margin:0;max-width:54ch}
.fs-playful .fb-card-lead{grid-column:span 7;grid-row:span 2;min-height:600px;justify-content:space-between}
.fs-playful .fb-card-lead h3{font-size:clamp(32px,3.2vw,44px);max-width:16ch}
.fs-playful .fb-card:nth-child(2),.fs-playful .fb-card:nth-child(3){grid-column:span 5}
.fs-playful .fb-card-media{margin:38px -12px -80px;transform:rotate(-4deg);border:8px solid var(--fs-paper);border-radius:24px;overflow:hidden;box-shadow:0 24px 40px #102a451c}
.fs-playful .fb-card-media img{width:100%;height:300px;object-fit:cover;object-position:top;display:block}
.fs-playful .fb-art{color:var(--fs-ink);width:min(85%,380px);margin:30px auto 0;transform:rotate(-12deg);opacity:.9}
.fs-playful .fb-art svg{width:100%;height:240px}
.fs-playful .fs-topic{padding:96px 0;background:var(--fs-paper)}
.fs-playful .fb-deliverables-grid .fb-card-lead{--fb-card-bg:var(--fs-soft-blue)}
.fs-playful .fb-deliverables-grid .fb-card:nth-child(3){--fb-card-bg:var(--fs-gray)}
/* Ordered collaboration cards replace the old timeline and tiny badges. */
.fs-playful .fb-process-heading{margin-bottom:42px}
.fs-playful .fb-process-heading>p{color:var(--fs-copy);line-height:1.75;font-size:18px;max-width:55ch}
.fs-playful .fb-process{list-style:none;padding:0;margin:0;gap:20px}
.fs-playful .fb-process-card{padding:var(--fb-card-pad);background:var(--fs-cloud);border-radius:var(--fb-card-radius);min-height:380px;display:flex;flex-direction:column;justify-content:space-between;gap:35px}
.fs-playful .fb-process-card:first-child{background:var(--fs-ink);color:var(--fs-paper)}
.fs-playful .fb-process-card:nth-child(2){background:var(--fs-soft-blue)}
.fs-playful .fb-process-card:nth-child(3){background:var(--fs-blue-gray)}
.fs-playful .fb-process-card:nth-child(4){background:var(--fs-ice)}
.fs-playful .fb-process-number{font:800 clamp(58px,6vw,90px)/.9 var(--font-display);letter-spacing:-.08em;color:var(--fs-ink);opacity:.2}
.fs-playful .fb-process-card:first-child .fb-process-number{color:var(--fs-primary);opacity:1}
.fs-playful .fb-process-label{padding:8px 13px;border:1px solid currentColor;border-radius:999px;font-size:12px;max-width:60%;text-align:center}
.fs-playful .fb-process-copy h3{font-size:30px;letter-spacing:-.035em;line-height:1.15;margin:0 0 14px;color:inherit}
.fs-playful .fb-process-copy p{font-size:17px;line-height:1.7;color:var(--fs-copy);margin:0;max-width:57ch}
.fs-playful .fb-process-card:first-child p{color:#d4e0ee}
.fs-playful .fb-process-note{font-size:15px;color:var(--fs-copy);margin-top:24px;max-width:85ch}
/* Service directory: large clickable canvases and visible destinations. */
.fs-playful .bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;grid-auto-rows:auto}
.fs-playful .bento>.tile{grid-column:span 4;grid-row:auto;min-height:340px;padding:38px;background:var(--fs-cloud);border:0;border-radius:var(--fb-card-radius);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start}
.fs-playful .bento>.tile:first-child{grid-column:span 7;min-height:500px;background:var(--fs-ice)}
.fs-playful .bento>.tile:nth-child(2){grid-column:span 5;background:var(--fs-soft-blue)}
.fs-playful .bento>.tile:nth-child(3n+3){background:var(--fs-blue-gray)}
.fs-playful .bento>.tile:nth-child(5){background:var(--fs-gray)}
.fs-playful .bento>.tile:nth-last-child(1):nth-child(3n+2){grid-column:span 4}
.fs-playful .bento>.tile h3{font-size:32px;line-height:1.12;letter-spacing:-.04em;color:var(--fs-ink);max-width:90%;margin:0 0 18px}
.fs-playful .bento>.tile p{font-size:16px;line-height:1.75;color:var(--fs-copy);max-width:45ch;margin:0}
.fs-playful .bento .tile-ico{height:72px;width:72px;background:transparent;border:0;padding:0;margin:0 0 26px;color:var(--fs-ink)}
.fs-playful .bento .tile-ico svg{width:64px;height:64px}
.fs-playful .bento>.tile::after{content:'↗';font-size:26px;line-height:48px;text-align:center;background:var(--fs-paper);border-radius:50%;width:48px;height:48px;position:absolute;right:28px;top:28px;color:var(--fs-ink)}
.fs-playful .bento .tile-featured-body{width:100%;max-width:none;padding:0;position:relative;z-index:1}
.fs-playful .bento .tile-featured-img{position:relative;width:85%;height:230px;object-fit:cover;object-position:top;align-self:flex-end;bottom:-68px;right:-45px;transform:rotate(-6deg);border:7px solid var(--fs-paper);border-radius:20px;margin-top:10px}
.fs-playful .bento>.tile:hover{transform:translateY(-4px);box-shadow:0 15px 35px #102a4512}
.fs-playful .tile-tags{margin-top:auto;padding-top:24px}
/* Other existing layouts share the same card language, not a row of checks. */
.fs-playful .split-body{display:grid;gap:14px;margin-block:30px}
.fs-playful .split-body li{padding:22px 25px;background:var(--fs-cloud);border-radius:20px;display:block;font-size:16px;line-height:1.7}
.fs-playful .split-body strong{display:block;font-size:21px;margin-bottom:7px;line-height:1.25}
.fs-playful .split-ico,.fs-playful .kontakt-ikona{display:none}
.fs-playful .split-layout{gap:32px;align-items:stretch}
.fs-playful .split-layout>.split-text{background:var(--fs-cloud);padding:var(--fb-card-pad);border-radius:var(--fb-card-radius)}
.fs-playful .split-layout>.split-text .split-body li{background:var(--fs-paper)}
.fs-playful .marketing-visual,.fs-playful .funkcie-visual,.fs-playful .fs-logo-panel,.fs-playful .brand-side{border-radius:var(--fb-card-radius);overflow:hidden;background:var(--fs-soft-blue);display:grid;place-items:center}
.fs-playful .marketing-visual-img{height:100%;object-fit:cover}
.fs-playful .stats{background:transparent;border:0;padding:24px 0}
.fs-playful .grid-stats{gap:20px;grid-template-columns:repeat(4,minmax(0,1fr))}
.fs-playful .stat{padding:35px 25px;background:var(--fs-ice);border-radius:28px;min-height:170px;text-align:left;border:0}
.fs-playful .stat:nth-child(2){background:var(--fs-blue-gray)}
.fs-playful .stat:nth-child(3){background:var(--fs-soft-blue)}
.fs-playful .stat:nth-child(4){background:var(--fs-gray)}
.fs-playful .stat-num{font-size:clamp(38px,4vw,60px);letter-spacing:-.05em;line-height:1.05}
.fs-playful .stat-label{display:block;margin-top:15px;font-size:15px}
.fs-playful .grid-detail{gap:20px}
.fs-playful .grid-detail .tile{padding:38px;min-height:280px;border-radius:var(--fb-card-radius);border:0}
.fs-playful .grid-detail .tile-ico{display:none}
.fs-playful .grid-detail .tile h3{font-size:30px;line-height:1.2;letter-spacing:-.035em;margin-bottom:18px}
.fs-playful .brand-karta,.fs-playful .dovod-karta,.fs-playful .tim-karta{border:0;background:var(--fs-cloud);border-radius:var(--fb-card-radius);padding:35px}
.fs-playful .tim-karta:nth-child(2n){background:var(--fs-ice)}
.fs-playful .steps-3{display:grid;gap:20px}
.fs-playful .steps-3::before{display:none}
.fs-playful .steps-3 .step{padding:35px;background:var(--fs-cloud);border-radius:var(--fb-card-radius)}
.fs-playful .steps-3 .step-num{display:none}
/* Investment, evidence and conversion panels. */
.fs-playful .fs-price-explainer{padding:56px;background:var(--fs-ink);color:var(--fs-paper);border-radius:var(--fb-card-radius)}
.fs-playful .fs-price-explainer h2{color:var(--fs-paper)}
.fs-playful .fs-price-explainer p{color:#d4e0ee;max-width:85ch;font-size:18px}
.fs-playful .fs-price-explainer .highlight{background:transparent;padding:0}
.fs-playful .fs-price-explainer .btn{margin-top:18px}
.fs-playful .baliky{gap:20px;align-items:stretch}
.fs-playful .balik{border:0;border-radius:var(--fb-card-radius);padding:var(--fb-card-pad);background:var(--fs-cloud)}
.fs-playful .balik h3{font-size:34px;line-height:1.15;letter-spacing:-.04em}
.fs-playful .balik li{padding:14px 0;border-bottom:1px solid var(--fs-line);font-size:16px}
.fs-playful .balik-tmavy{background:var(--fs-ink)}
.fs-playful .balik-tmavy li{border-color:#ffffff25}
.fs-playful .balik-media{padding:0}
.fs-playful .balik-media-img{height:100%;object-fit:cover;border-radius:inherit}
.fs-playful .fw-price-sheet{background:var(--fs-ice);box-shadow:none;transform:none}
.fs-playful .fw-price-sheet li>span{display:none}
.fs-playful .faq-item,.fs-playful .fw-faq details{border:0!important;background:var(--fs-cloud)!important;border-radius:20px!important;padding:6px 24px;margin-bottom:12px}
.fs-playful .faq-item summary,.fs-playful .fw-faq summary{padding-block:22px;font-size:18px;line-height:1.5}
.fs-playful .faq-visual-frame{border-radius:var(--fb-card-radius);transform:none;box-shadow:none}
.fs-playful .faq-visual-caption{font-size:15px;line-height:1.7}
.fs-playful .kontakt{background:var(--fs-cloud);border-radius:48px 48px 0 0}
.fs-playful .kontakt-layout{gap:26px;align-items:stretch}
.fs-playful .kontakt-text{background:var(--fs-ice);padding:var(--fb-card-pad);border-radius:var(--fb-card-radius)}
.fs-playful .kontakt-text h2{font-size:clamp(34px,4vw,54px)}
.fs-playful .kontakt-form{border:0;box-shadow:none;border-radius:var(--fb-card-radius);padding:var(--fb-card-pad)}
.fs-playful .kontakt-kalk{background:var(--fs-paper);border:0;border-radius:24px;padding:25px}
.fs-playful .kontakt-udaj-ico{display:none}
.fs-playful .kontakt-udaje{gap:18px}
.fs-playful .kontakt-udaje a{font-size:clamp(16px,1.6vw,23px);text-decoration:underline;text-underline-offset:6px}
.fs-playful .blog-karta,.fs-playful .pf-karta,.fs-playful .island{border-radius:var(--fb-card-radius);box-shadow:none;border:0;background:var(--fs-cloud);overflow:hidden}
.fs-playful .grid-archiv{gap:26px}
.fs-playful .grid-archiv>.pf-karta:first-child{grid-column:span 2}
.fs-playful .show-frame,.fs-playful .pf-thumb{border-radius:var(--fb-card-radius)}
.fs-playful .fw-project-image{border-radius:28px}
.fs-playful .fw-stats>div{border-radius:24px;background:var(--fs-paper);padding:24px}
@media(max-width:1023px){
 .fs-playful .section,.fs-playful .fw-section,.fs-playful .fs-topic{padding-block:70px}
 .fs-playful .fb-card{grid-column:span 6;min-height:280px}.fs-playful .fb-card-lead{grid-column:span 6;min-height:560px}.fs-playful .fb-card:nth-child(2),.fs-playful .fb-card:nth-child(3){grid-column:span 6}
 .fs-playful .bento>.tile{grid-column:span 6!important}.fs-playful .bento>.tile:first-child{grid-column:span 12!important;min-height:400px}
 .fs-playful .bento .tile-featured-img{position:absolute;width:45%;height:280px;right:-20px;bottom:-35px}.fs-playful .bento .tile-featured-body{max-width:55%}
 .fs-playful .grid-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 .fs-playful{--fb-card-radius:25px;--fb-card-pad:27px}
 .fs-playful .section,.fs-playful .fw-section,.fs-playful .fs-topic{padding-block:52px}
 .fs-playful .hero-inner{padding-block:125px 45px;gap:35px}.fs-playful .hero h1{font-size:40px}.fs-playful .hero-sub{font-size:16px}
 .fs-playful .section-head{margin-bottom:28px}.fs-playful .section-head>p{font-size:16px}
 .fs-playful .fb-editorial{grid-template-columns:1fr;gap:15px}.fs-playful .fb-card,.fs-playful .fb-card-lead,.fs-playful .fb-card:nth-child(2),.fs-playful .fb-card:nth-child(3){grid-column:auto;grid-row:auto;min-height:0}
 .fs-playful .fb-card-lead{min-height:420px}.fs-playful .fb-card h3{font-size:28px}.fs-playful .fb-card p{font-size:16px}.fs-playful .fb-card-media{margin-bottom:-55px}.fs-playful .fb-card-media img{height:230px}
 .fs-playful .fb-art{width:200px}.fs-playful .fb-art svg{height:180px}
 .fs-playful .fb-process-heading{margin-bottom:28px}.fs-playful .fb-process-card{min-height:325px;gap:28px}.fs-playful .fb-process-copy h3{font-size:27px}.fs-playful .fb-process-copy p{font-size:16px}
 .fs-playful .bento{grid-template-columns:1fr}.fs-playful .bento>.tile,.fs-playful .bento>.tile:first-child{grid-column:auto!important;min-height:300px;padding:28px}.fs-playful .bento>.tile:first-child{min-height:480px}
 .fs-playful .bento .tile-featured-body{max-width:none}.fs-playful .bento .tile-featured-img{position:relative;width:95%;height:190px;bottom:-65px;right:-35px}.fs-playful .bento>.tile h3{font-size:30px}.fs-playful .bento>.tile::after{right:22px;top:22px}
 .fs-playful .stat{padding:25px 20px;min-height:145px}.fs-playful .stat-num{font-size:37px}.fs-playful .stat-label{font-size:13px}
 .fs-playful .fs-price-explainer{padding:28px}.fs-playful .fs-price-explainer p{font-size:16px}
 .fs-playful .grid-archiv>.pf-karta:first-child{grid-column:auto}
 .fs-playful .kontakt-layout{gap:16px}.fs-playful .kontakt{border-radius:28px 28px 0 0}.fs-playful .kontakt-text,.fs-playful .kontakt-form{padding:26px}
 .fs-playful .btn-nav{padding:12px 15px}
}
@media(min-width:1024px){.fs-playful .fb-card:last-child:nth-child(4){grid-column:span 12;min-height:230px}.fs-playful .fb-card:nth-child(4):nth-last-child(2),.fs-playful .fb-card:last-child:nth-child(5){grid-column:span 6}}
.fs-playful .reviews-layout{gap:20px;grid-template-columns:1.15fr 1fr}
.fs-playful .reviews-side{gap:20px}
.fs-playful .review{background:var(--fs-cloud);border:0;border-radius:var(--fb-card-radius);box-shadow:none;padding:35px}
.fs-playful .review-featured{background:var(--fs-soft-blue);padding:48px}
.fs-playful .review-featured blockquote{color:var(--fs-ink);font-size:clamp(23px,2.2vw,31px);line-height:1.45}
.fs-playful .review-quote-mark{display:none}
.fs-playful .review-stars{color:var(--fs-ink)}
.fs-playful .fb-more-reviews{margin-top:24px;border-top:1px solid var(--fs-line)}
.fs-playful .fb-more-reviews>summary{padding:24px 0;font-weight:700;cursor:pointer;list-style:revert}
.fs-playful .ad-choice-card,.fs-playful .ad-sample-card,.fs-playful .ad-audit-item{border:0;border-radius:var(--fb-card-radius);padding:35px;background:var(--fs-cloud)}
.fs-playful .ad-choice-card:nth-child(2),.fs-playful .ad-audit-item:nth-child(3n+2){background:var(--fs-soft-blue)}
.fs-playful .ad-audit-item:nth-child(3n+3){background:var(--fs-blue-gray)}
.fs-playful .ad-audit-item{display:block;min-height:220px}
.fs-playful .ad-audit-item h3{font-size:26px;letter-spacing:-.03em;margin-bottom:15px}
.fs-playful .ad-audit-grid{gap:20px}
.fs-playful .ad-web{background:var(--fs-ink);border-radius:40px}
.fs-playful .ad-web .section-eyebrow{color:var(--fs-primary)}
.fs-playful .ad-web-points li{padding:18px 0;border-top:1px solid #ffffff25}
.fs-playful .bonus-pas{background:var(--fs-cloud);border-radius:var(--fb-card-radius);padding:32px;border:0;gap:24px}
.fs-playful .bonus-pas li{border:0;display:block;padding:0}
@media(max-width:767px){.fs-playful .reviews-layout{grid-template-columns:1fr}.fs-playful .review,.fs-playful .review-featured{padding:28px}}
.fs-playful .pf-galeria{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.fs-playful .pf-galeria-item{border-radius:var(--fb-card-radius);overflow:hidden;background:var(--fs-cloud)}
.fs-playful .pf-galeria-item:first-child{grid-column:1/-1}
.fs-playful .pf-galeria-img{width:100%;height:auto}
@media(max-width:640px){.fs-playful .pf-galeria{grid-template-columns:1fr;gap:16px}}
.fs-playful .kalk-grid{gap:20px}
.fs-playful .kalk-card{padding:35px;border:0;border-radius:var(--fb-card-radius);background:var(--fs-ice);min-height:320px;gap:24px}
.fs-playful .kalk-card:nth-child(3n+2){background:var(--fs-soft-blue)}
.fs-playful .kalk-card:nth-child(3n+3){background:var(--fs-blue-gray)}
.fs-playful .kalk-card-ico{background:transparent;border:0;padding:0;width:60px;height:60px;color:var(--fs-ink)}
.fs-playful .kalk-card-ico svg{width:52px;height:52px}
.fs-playful .kalk-card-body strong{font-size:27px;letter-spacing:-.03em;line-height:1.15}
.fs-playful .kalk-card-go{color:var(--fs-ink);text-decoration:underline;text-underline-offset:5px}
.fs-playful .article-head{background:var(--fs-ice);padding:var(--fb-card-pad);border-radius:var(--fb-card-radius);margin-bottom:24px}
.fs-playful .article-title{font-size:clamp(32px,3.6vw,50px);line-height:1.13}
.fs-playful .article-cover{border-radius:var(--fb-card-radius);overflow:hidden}
.fs-playful .article-body h2{font-size:clamp(27px,3vw,37px);line-height:1.2}
.fs-playful .article-body h3{font-size:26px;line-height:1.3}
.fs-playful .article-related-title{font-size:32px!important}
@media(max-width:640px){.fs-playful .article-related .blog-grid[style]{grid-template-columns:1fr!important}.fs-playful .kalk-card{padding:28px;min-height:290px}}

/* Keep the restored, longer calculator label within the existing mobile header. */
@media(max-width:640px){.fs-playful .btn-nav[data-kalk-open]{max-width:145px;white-space:normal;font-size:11px;line-height:1.25;padding:10px 12px}}
/* Service calculators can contain more than the original three questions. */
.fs-playful .web-price-kalk-panel ul{counter-reset:calc-question}
.fs-playful .web-price-kalk-panel li{counter-increment:calc-question}
.fs-playful .web-price-kalk-panel li::before{content:counter(calc-question,decimal-leading-zero)}

/* Shared calculator: the established blue palette, with green only for success. */
.kalk-modal .kalk-dialog{max-width:720px;padding:40px;max-height:calc(100dvh - 32px)}
.kalk-modal .kalk-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.kalk-modal .kalk-service{display:flex;flex-direction:column;gap:8px;background:#e4f1ff;border:1px solid #d5e7f8;border-radius:20px;padding:22px;text-align:left;color:#102a45;font:inherit;cursor:pointer}
.kalk-service strong{font-size:1.06rem}.kalk-service span{font-size:.9rem;line-height:1.5}
.kalk-service:hover{background:#d5e7f8}.kalk-service:focus-visible,.kalk-opt:focus-visible{outline:3px solid #102a45;outline-offset:3px}
.kalk-modal .kalk-progress{margin-right:45px}.kalk-modal .kalk-progress span{background:#7cc2ff}
.kalk-modal .kalk-success{text-align:center;padding:24px 0}.kalk-success svg{width:72px;height:72px;color:#16803c;margin:0 auto 24px;display:block}
.kalk-modal .kalk-error{color:#9b2525;margin-top:16px}.kalk-modal .kalk-error:empty{display:none}
.kalk-modal [hidden]{display:none!important}.kalk-modal .kalk-title:focus{outline:none}
#kalkulacka{scroll-margin-top:110px}
@media(max-width:620px){.kalk-modal{padding:12px}.kalk-modal .kalk-dialog{padding:28px 20px}.kalk-modal .kalk-service{padding:16px}.kalk-modal .kalk-services{grid-template-columns:1fr}.kalk-modal .kalk-title{font-size:1.25rem}}
.kalk-modal .kalk-back{color:#102a45!important;background:#edf0f3!important;border-color:#d5e7f8!important;opacity:1}.kalk-modal .kalk-back:hover{background:#d5e7f8!important}

/* One button shape across templates, forms, cookie controls and calculators. */
body :is(.btn, button, input[type="submit"], input[type="button"], input[type="reset"], [role="button"], .wp-block-button__link) {
  border-radius: 9999px !important;
}
/* Embedded web calculator uses the same steps as the global dialog. */
.kalk-inline{min-width:0;background:#fff;padding:36px;border-radius:32px;align-self:start;color:#102a45}
.kalk-inline .kalk-title{padding-right:0}.kalk-inline .kalk-title:focus{outline:none}
.kalk-inline .kalk-progress span{background:#7cc2ff}
.kalk-inline .kalk-opt{padding:16px 24px;line-height:1.5}
.kalk-inline .kalk-back{background:#edf0f3!important;color:#102a45!important;opacity:1}
.kalk-inline .kalk-error{color:#9b2525;margin-top:16px}.kalk-inline .kalk-error:empty{display:none}
.kalk-inline .kalk-success{text-align:center;padding:20px 0}.kalk-inline .kalk-success p{overflow-wrap:anywhere}
@media(max-width:620px){.kalk-inline{padding:24px 20px;border-radius:26px}}
/* SEO service packages: scoped to this page; content remains in ACF. */
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby{scroll-margin-top:110px}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .baliky{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .balik{min-width:0;padding:32px;display:flex;flex-direction:column}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .balik h3{font-size:26px}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .fs-package-price{font-family:var(--font-display);font-size:40px;font-weight:800;color:inherit;margin:18px 0 24px;line-height:1.15}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .fs-package-price span{display:block;font-family:var(--font-body);font-size:14px;font-weight:400;margin-top:10px}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .balik .btn{margin-top:auto}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) .fs-package-note{max-width:900px;font-size:15px;margin:28px 0 0;line-height:1.7}
@media(max-width:1000px){:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .baliky{grid-template-columns:1fr}:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .balik{padding:28px}}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .balik>h3+p{min-height:52px}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .balik ul{gap:0;align-content:start;flex-grow:0;margin:8px 0 28px}
:is(.page-template-page-seo,.page-template-page-socialne-siete,.page-template-page-online-reklama,.page-template-page-logo-identita,.page-template-page-video) #cena-sluzby .balik li{padding:12px 0;line-height:1.5}

/* Four advertising packages remain roomy in a 2 × 2 grid. */
.page-template-page-online-reklama #cena-sluzby .baliky{grid-template-columns:repeat(2,minmax(0,1fr))}
.page-template-page-online-reklama #cena-sluzby .fs-package-price{font-size:36px;overflow-wrap:anywhere}
@media(max-width:760px){.page-template-page-online-reklama #cena-sluzby .baliky{grid-template-columns:1fr}}

.page-template-page-logo-identita #cena-sluzby .baliky{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){.page-template-page-logo-identita #cena-sluzby .baliky{grid-template-columns:1fr}}

.page-template-page-video #cena-sluzby .baliky{grid-template-columns:repeat(2,minmax(0,1fr))}
.page-template-page-video #cena-sluzby .fs-package-price{font-size:36px;overflow-wrap:anywhere}
@media(max-width:760px){.page-template-page-video #cena-sluzby .baliky{grid-template-columns:1fr}}

/* Compact Trustindex placements; the plugin owns widget rendering and its loader. */
.fs-hero-rating { margin-top: 24px; max-width: 100%; }
.fs-footer-rating { margin: 20px 0; max-width: 100%; }
.fs-hero-rating > div, .fs-footer-rating > div { max-width: 100%; }

/* Self-contained Google badge, shared by home hero and footer. */
.fs-google-badge { display:inline-flex; align-items:stretch; max-width:100%; width:340px; box-sizing:border-box; background:#fff; color:#171717; border:1px solid #edf0f3; border-radius:15px; box-shadow:0 4px 14px #102a4514; font-family:Arial,sans-serif; text-align:left; }
.fs-google-badge-logo { width:76px; flex:0 0 76px; display:flex; align-items:center; justify-content:center; border-right:1px solid #eee; padding:15px 0; }
.fs-google-badge-content { min-width:0; padding:14px 15px; display:flex; flex-direction:column; justify-content:center; gap:4px; }
.fs-google-badge-top { display:flex; align-items:center; gap:10px; line-height:1; }
.fs-google-badge-top strong { font-size:18px; font-weight:700; color:#171717; }
.fs-google-stars { position:relative; display:inline-block; font-size:24px; line-height:1; letter-spacing:0; white-space:nowrap; color:#dadce0; }
.fs-google-stars > span:last-child { position:absolute; top:0; left:0; overflow:hidden; color:#fbbc04; }
.fs-google-badge-label { font-size:15px; font-weight:700; line-height:1.3; color:#171717; }
@media(max-width:400px) { .fs-google-badge-logo { width:66px; flex-basis:66px; } .fs-google-badge-content { padding:13px 11px; } .fs-google-badge-label { font-size:14px; } }
.fs-hero-rating { margin-bottom:20px; }

/* Hide the review-count caption only in the embedded reviews section. */
.fs-trustindex-section .ti-rating-text:has(> .nowrap > strong[data-number-formatted="1"]) { display:none !important; }

/* Restore the original espresso illustration beside the contact invitation. */
.fs-playful .kontakt-text > .kontakt-ikona {
  display:block;
  width:64px;
  height:64px;
  object-fit:contain;
  margin-bottom:16px;
}

/* About: a conversation with the studio, rather than a logo panel. */
.fs-about-grid { display:grid; grid-template-columns:1.15fr 1fr; gap:22px; }
.fs-about-main { grid-row:span 2; background:#102a45; color:#fff; padding:clamp(30px,4vw,58px); border-radius:36px; display:flex; flex-direction:column; position:relative; overflow:hidden; }
.fs-about-main .section-eyebrow { color:#a8d7ff; margin-bottom:28px; }
.fs-about-main h2 { color:#fff; font-size:clamp(40px,4.7vw,66px); line-height:1.04; letter-spacing:-.045em; margin:0 0 28px; max-width:560px; }
.fs-about-main h2 mark,.fs-about-main h2 .hl { background:none; color:#7cc2ff; }
.fs-about-main p { color:#d5e7f8; font-size:17px; line-height:1.7; max-width:470px; margin:0 0 20px; }
.fs-about-bottom { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-top:auto; padding-top:24px; }
.fs-about-spark { font-size:86px; line-height:1; color:#7cc2ff; transform:rotate(-12deg); }
.fs-about-talk { background:#edf0f3; border-radius:36px; padding:32px 36px; position:relative; }
.fs-about-talk h3,.fs-about-meet h3 { color:#102a45; font-size:27px; line-height:1.18; letter-spacing:-.025em; margin:0 0 24px; }
.fs-about-dot { position:absolute; width:12px; height:12px; background:#7cc2ff; border:5px solid #d5e7f8; border-radius:50%; box-sizing:content-box; right:28px; top:30px; }
.fs-about-talk h3 { padding-right:25px; }
.fs-about-message { padding:16px 20px; max-width:88%; width:fit-content; font-size:17px; font-weight:600; line-height:1.45; }
.fs-about-message-you { background:#fff; border-radius:20px 20px 20px 4px; transform:rotate(-2deg); margin:0 0 20px; }
.fs-about-message-us { background:#7cc2ff; color:#102a45; border-radius:20px 20px 4px 20px; margin:0 0 22px auto; transform:rotate(2deg); }
.fs-about-talk p,.fs-about-meet p { color:#40596e; font-size:16px; line-height:1.6; margin:0; }
.fs-about-meet { background:#e4f1ff; border-radius:36px; padding:30px 36px; display:flex; align-items:center; gap:15px; }
.fs-about-meet h3 { margin-bottom:10px; }
.fs-about-meet > div { flex:1; }
.fs-about-mountains { flex:0 0 125px; width:125px; height:auto; transform:rotate(-5deg); }
@media(max-width:760px) {
 .fs-about-grid { grid-template-columns:1fr; gap:16px; }
 .fs-about-main { grid-row:auto; padding:30px 26px; border-radius:28px; }
 .fs-about-main h2 { font-size:44px; }
 .fs-about-talk,.fs-about-meet { padding:28px 26px; border-radius:28px; }
 .fs-about-talk h3,.fs-about-meet h3 { font-size:25px; }
 .fs-about-mountains { flex-basis:85px; width:85px; }
 .fs-about-spark { font-size:64px; }
}
.fs-about-main h2 .highlight { color:#7cc2ff; background:transparent; padding:0; }
.fs-about-spark { width:76px; height:76px; flex-shrink:0; }
@media(max-width:760px) { .fs-about-spark { width:58px; height:58px; } }

.kontakt-udaje li:has(.fs-contact-phone-note) { flex-wrap:wrap; row-gap:6px; }
.kontakt-udaje .fs-contact-phone-note { display:block; flex-basis:100%; font-size:14px; font-weight:400; line-height:1.5; color:#40596e; }

/* E-shop benefits: three small scenes, one coherent blue palette. */
.fs-shop-reasons { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.fs-shop-reason { border-radius:32px; overflow:hidden; background:#e4f1ff; color:#102a45; }
.fs-shop-reason-0 { background:#102a45; color:#fff; }
.fs-shop-reason-2 { background:#e6edf4; }
.fs-shop-art { height:285px; position:relative; display:flex; align-items:center; justify-content:center; padding:30px; overflow:hidden; }
.fs-shop-reason-copy { padding:0 30px 34px; }
.fs-shop-reason-copy h3 { font-size:27px; line-height:1.16; letter-spacing:-.025em; margin:0 0 15px; color:inherit; }
.fs-shop-reason-copy p { font-size:16px; line-height:1.7; margin:0; color:#40596e; }
.fs-shop-reason-0 .fs-shop-reason-copy p { color:#d5e7f8; }
.fs-shop-window { background:white; width:235px; height:190px; border-radius:15px; transform:rotate(-7deg); box-shadow:12px 12px 0 #ffffff12; padding:15px; color:#102a45; }
.fs-shop-window-top { display:flex; align-items:center; gap:4px; padding-bottom:12px; }
.fs-shop-window-top i { width:5px; height:5px; border-radius:50%; background:#9fb4c8; }
.fs-shop-window-top span { font-size:11px; margin-left:auto; font-weight:700; }
.fs-shop-mini-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.fs-shop-mini-grid > div { background:#edf0f3; border-radius:8px; padding:7px; }
.fs-shop-mini-grid svg { height:60px; width:100%; }
.fs-shop-mini-grid b,.fs-shop-mini-grid small { display:block; height:4px; border-radius:4px; background:#b4c6d6; margin-top:5px; width:70%; }
.fs-shop-mini-grid small { width:40%; }
.fs-shop-mini-cta { height:13px; width:45%; border-radius:20px; background:#7cc2ff; margin:10px 0 0 auto; }
.fs-shop-tag { position:absolute; padding:10px 14px; border-radius:50px; color:#102a45; background:#7cc2ff; font-weight:750; font-size:13px; box-shadow:0 6px 16px #0001; }
.fs-shop-tag-first { top:34px; right:18px; transform:rotate(7deg); }
.fs-shop-tag-first b { margin-left:10px; }
.fs-shop-tag-second { bottom:32px; left:22px; background:white; transform:rotate(-5deg); }
.fs-shop-speed-ring { width:170px; height:170px; border-radius:50%; background:#7cc2ff; border:16px solid #d5e7f8; outline:2px dashed #aac9e4; outline-offset:14px; display:grid; place-items:center; transform:rotate(8deg); }
.fs-shop-speed-ring svg { width:100px; height:100px; }
.fs-shop-route { position:absolute; background:white; border-radius:16px; padding:12px 18px; font-size:15px; font-weight:700; box-shadow:0 8px 18px #102a450a; }
.fs-shop-route-a { top:45px; left:20px; transform:rotate(-9deg); }
.fs-shop-route-b { right:20px; bottom:40px; transform:rotate(6deg); }
.fs-shop-route-b b { margin-left:14px; }
.fs-shop-speed-line { position:absolute; height:4px; border-radius:4px; background:#102a45; width:35px; left:42px; top:160px; transform:rotate(-12deg); }
.fs-shop-speed-line-b { width:22px; top:174px; left:54px; }
.fs-shop-orders { width:260px; padding:18px; background:white; border-radius:18px; transform:rotate(-4deg); box-shadow:10px 12px 0 #d5e7f8; color:#102a45; }
.fs-shop-orders-head { font-size:13px; font-weight:750; padding-bottom:16px; }
.fs-shop-orders-head > span { float:right; }
.fs-shop-orders > div:not(:first-child) { display:flex; gap:10px; align-items:center; padding:12px 0; border-top:1px solid #e6edf4; font-size:13px; }
.fs-shop-orders i { background:#e4f1ff; border-radius:7px; width:25px; height:25px; display:grid; place-items:center; font-style:normal; }
.fs-shop-orders b { width:25px; height:5px; border-radius:9px; background:#d5e7f8; margin-left:auto; }
.fs-shop-hand { position:absolute; right:18px; bottom:19px; transform:rotate(-10deg); width:64px; }
.fs-shop-hand svg { width:100%; }
@media(max-width:1000px) and (min-width:761px) { .fs-shop-art { padding:20px; height:250px; } .fs-shop-reason-copy { padding:0 23px 28px; } .fs-shop-reason-copy h3 { font-size:24px; } }
@media(max-width:760px) { .fs-shop-reasons { grid-template-columns:1fr; gap:18px; } .fs-shop-art { height:260px; } .fs-shop-reason { border-radius:28px; } .fs-shop-reason-copy { padding:0 26px 30px; } }

/* Keep the second sentence of the e-shop deliverables heading together. */
.page-template-page-e-shopy .fb-deliverables .section-head h2 .highlight {
  display:table;
  max-width:100%;
  margin-top:.08em;
  text-wrap:balance;
}

/* A quiet emphasis for the reassurance below the telephone number. */
.kontakt-udaje .fs-contact-phone-note {
  font-weight:500;
  color:#102a45;
  border-left:3px solid #7cc2ff;
  padding-left:10px;
  margin-top:2px;
}

/* Portfolio detail photos are static, without a zoom interaction. */
.single-portfolio .pf-galeria-item { cursor:default; }
.single-portfolio .pf-galeria-item:hover .pf-galeria-img { transform:none; }

/* Editable package labels and an encouraging ad-budget note. */
.fs-package-badge{align-self:flex-start;display:inline-flex;padding:7px 13px;margin:0 0 18px;border-radius:9999px;background:#7cc2ff;color:#102a45;font-size:12px;font-weight:750;line-height:1.3}
.page-template-page-online-reklama #cena-sluzby .fs-package-note{max-width:none;padding:24px 28px;border-radius:24px;background:#e4f1ff;border-left:4px solid #7cc2ff;color:#102a45;font-size:18px;font-weight:600;line-height:1.65}
@media(max-width:600px){.page-template-page-online-reklama #cena-sluzby .fs-package-note{padding:20px;font-size:16px}}

/* Advertising: tune an existing campaign or launch the first one. */
#situacia .ad-choice-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:24px;align-items:stretch}
#situacia .ad-choice-card{display:flex;flex-direction:column;gap:0;padding:36px 40px 40px;border:0;border-radius:36px;background:#e4f1ff;color:#102a45;box-shadow:none;overflow:hidden;transform:none}
#situacia .ad-choice-card-primary{background:#102a45;color:#fff}
#situacia .ad-choice-top{display:flex;justify-content:space-between;align-items:center;gap:16px}
#situacia .ad-choice-tag{font-size:13px;line-height:1.4;font-weight:700;border:1px solid currentColor;border-radius:999px;padding:7px 14px}
#situacia .ad-choice-dot{width:12px;height:12px;background:#7cc2ff;border-radius:50%;box-shadow:0 0 0 6px #7cc2ff22}
#situacia .ad-choice-art{height:150px;margin:16px 0 22px;pointer-events:none}
#situacia .ad-choice-art svg{width:100%;height:100%;transition:transform .25s ease}
#situacia .ad-choice-card:hover .ad-choice-art svg{transform:translateY(-4px) rotate(-1deg)}
#situacia .ad-choice-card h3{font-size:clamp(27px,2.6vw,38px);line-height:1.12;letter-spacing:-.035em;color:inherit;margin:0 0 20px;max-width:360px}
#situacia .ad-choice-card p{font-size:16px;line-height:1.75;color:#344f68;margin:0 0 24px}
#situacia .ad-choice-card-primary p{color:#d5e7f8}
#situacia .ad-choice-points{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0 0 32px}
#situacia .ad-choice-points li{padding:7px 11px;border-radius:10px;background:#fff8;font-size:12px;font-weight:600;line-height:1.5}
#situacia .ad-choice-card-primary .ad-choice-points li{background:#ffffff10;color:#d5e7f8}
#situacia .ad-choice-card .btn{margin-top:auto;align-self:flex-start;background:#7cc2ff;color:#102a45;border-color:#7cc2ff;border-radius:9999px}
@media(max-width:767px){#situacia .ad-choice-grid{grid-template-columns:1fr;gap:18px}#situacia .ad-choice-card{padding:26px 24px 30px;border-radius:28px}#situacia .ad-choice-art{height:120px;margin:12px 0 20px}#situacia .ad-choice-card .btn{width:100%;justify-content:center}#situacia .ad-choice-card h3{font-size:30px}}
@media(prefers-reduced-motion:reduce){#situacia .ad-choice-art svg{transition:none}#situacia .ad-choice-card:hover .ad-choice-art svg{transform:none}}
