/* ============================================
   NETIM /content-marketing/ - reading-room aesthetic
   Inna od /pozycjonowanie/ (editorial-archival masthead) i /ppc/ (dashboard).
   Tu: workshop atelier, open book, readable typography essay-like.
   Dziedziczy bazę z home-v2.css (Montserrat, brand vars, nav, marquee, footer).
   ============================================ */

:root{
  --cm-ease: cubic-bezier(.23,1,.32,1);
  --cm-paper: #fafbff;
}
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ============================================
   BREADCRUMB
   ============================================ */

/* ============================================
   HERO - granat jak glowna, sygnet Uklad 5, dokument w redakcji
   ============================================ */
.cm-hero{position:relative;padding:clamp(56px,8vh,69px) 0 clamp(60px,9vh,110px);background:radial-gradient(1100px 560px at 80% -12%,rgba(30,94,159,.35),transparent 60%),var(--granat);color:var(--white);overflow:hidden}
.cm-bgsyg{position:absolute;left:2.5%;bottom:-14%;width:min(46%,720px);z-index:0;pointer-events:none;
  -webkit-mask:linear-gradient(to top,#000 32%,rgba(0,0,0,.55) 62%,transparent 94%);
  mask:linear-gradient(to top,#000 32%,rgba(0,0,0,.55) 62%,transparent 94%)}
.cm-bgsyg path{fill:none;stroke-width:2;vector-effect:non-scaling-stroke}
.cm-bgsyg .bo1{stroke:rgba(255,255,255,.09)}
.cm-bgsyg .bo2{stroke:rgba(128,223,160,.13)}

.cm-hero-grid{display:grid;grid-template-columns:1fr;gap:48px;position:relative;z-index:2;align-items:center}
@media(min-width:1024px){.cm-hero-grid{grid-template-columns:1.04fr .96fr;gap:clamp(40px,5vw,80px)}}

.cm-hero-meta{font:600 13.5px/1.4 'Montserrat';color:rgba(250,251,255,.62);margin:0 0 22px}
.cm-hero-title{font-family:'Montserrat';font-weight:800;font-size:clamp(38px,2.9vw + 2.2vh,82px);line-height:1.02;letter-spacing:-.023em;color:var(--white);margin:0 0 24px;max-width:20ch;text-wrap:balance}
@media(max-height:780px){.cm-hero-title{font-size:clamp(34px,2.6vw + 1.9vh,64px)}}
.cm-hero-lede{font:500 17.5px/1.6 'Montserrat';color:rgba(250,251,255,.82);max-width:48ch;margin:0 0 32px}
.cm-hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin:0 0 30px}
.cm-hero .btn-link{font:600 14px/1 'Montserrat';color:var(--white);border-bottom:1px solid rgba(250,251,255,.4);padding-bottom:6px;transition:border-color .25s var(--cm-ease),color .25s var(--cm-ease)}
.cm-hero .btn-link:hover{color:var(--mint);border-bottom-color:var(--mint)}
.cm-hero-trust{display:flex;gap:22px;flex-wrap:wrap;font:600 12.5px/1 'Montserrat';color:rgba(250,251,255,.55)}
.cm-hero-trust span::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--mint);margin-right:8px;vertical-align:2px}

/* dokument w redakcji */
.cm-doc{position:relative;background:var(--cm-paper);color:var(--granat);border-radius:var(--r-xl);box-shadow:0 30px 70px -30px rgba(0,0,0,.55);padding:30px 32px 24px;max-width:560px;width:100%;justify-self:end}
.cm-doc-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:20px}
.cm-doc-name{font:700 13px/1.3 'Montserrat';color:var(--ink-soft)}
.cm-doc-stages{display:flex;gap:6px}
.cm-doc-stage{font:700 11px/1 'Montserrat';padding:6px 10px;border-radius:6px;color:var(--mute);background:var(--bg-soft);transition:background .4s var(--cm-ease),color .4s var(--cm-ease)}
.cm-doc-stage.on{background:var(--granat);color:var(--white)}
.cm-doc-h{font:800 20px/1.25 'Montserrat';letter-spacing:-.015em;color:var(--granat);margin:0 0 14px;min-height:2.5em}
.cm-doc-caret{display:inline-block;width:2px;height:1em;background:var(--blue);vertical-align:-2px;margin-left:2px;animation:cm-caret 1s steps(1) infinite}
@keyframes cm-caret{50%{opacity:0}}
.cm-doc-line{height:9px;border-radius:5px;background:var(--line);margin-bottom:10px;transform-origin:left;transform:scaleX(0);transition:transform .8s var(--cm-ease)}
.cm-doc-line.w{transform:scaleX(1)}
.cm-doc-line.w92{width:92%}.cm-doc-line.w98{width:98%}.cm-doc-line.w85{width:85%}.cm-doc-line.w60{width:60%}
.cm-doc-line.hl{background:rgba(128,223,160,.65)}
.cm-doc-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;padding-top:16px;border-top:1px solid var(--line)}
.cm-doc-foot .who{display:flex;align-items:center;gap:10px}
.cm-doc-foot .who img{width:34px;height:34px;border-radius:50%;object-fit:cover;object-position:center top}
.cm-doc-foot .who span{font:600 12px/1.3 'Montserrat';color:var(--mute)}
.cm-doc-ok{font:700 12px/1 'Montserrat';color:var(--granat);background:var(--mint);border-radius:99px;padding:7px 12px;opacity:0;transform:translateY(6px) scale(.96);transition:opacity .5s var(--cm-ease),transform .5s var(--cm-ease)}
.cm-doc-ok.show{opacity:1;transform:none}

@media(prefers-reduced-motion:reduce){
  .cm-doc-caret{animation:none;display:none}
  .cm-doc-line{transition:none}
}
@media(max-width:767px){
  .cm-hero{padding:48px 0 64px}
  .cm-doc{padding:24px 22px 20px}
}

/* ============================================
   FILOZOFIA - gora lodowa
   ============================================ */
.cm-lab{display:block;font:600 13.5px/1.4 'Montserrat';color:var(--mute);margin-bottom:16px}
.cm-iceberg{padding:clamp(64px,9vh,79px) 0;background:var(--bg-dark);color:var(--white)}
.cm-iceberg .cm-lab{color:rgba(250,251,255,.6)}
.cm-ice-grid{display:grid;grid-template-columns:1fr;gap:clamp(36px,5vw,72px);align-items:center}
@media(min-width:960px){.cm-ice-grid{grid-template-columns:1fr 1fr}}
.cm-ice-text h2{font-family:'Montserrat';font-weight:800;font-size:clamp(32px,3.4vw,50px);line-height:1.05;letter-spacing:-.02em;color:var(--white);margin:0 0 20px;text-wrap:balance}
.cm-ice-text p{font:500 15.5px/1.65 'Montserrat';color:rgba(250,251,255,.78);max-width:52ch;margin:0}
.cm-ice-text p + p{margin-top:14px}
.cm-berg{display:flex;flex-direction:column;gap:8px}
.cm-berg-layer{border-radius:var(--r-md);padding:16px 22px;display:flex;justify-content:space-between;align-items:center;gap:14px}
.cm-berg-layer .n{font:700 15px/1.3 'Montserrat'}
.cm-berg-layer .d{font:600 12.5px/1.35 'Montserrat';opacity:.75;text-align:right}
.cm-berg-layer.top{background:var(--mint);color:var(--granat);width:56%;align-self:center}
.cm-berg-water{display:flex;align-items:center;gap:12px;color:rgba(250,251,255,.4);font:700 11.5px/1 'Montserrat';margin:4px 0}
.cm-berg-water::before,.cm-berg-water::after{content:'';height:1px;background:rgba(250,251,255,.22);flex:1}
.cm-berg-layer.b1{background:rgba(30,94,159,.55);width:72%;align-self:center}
.cm-berg-layer.b2{background:rgba(30,94,159,.38);width:84%;align-self:center}
.cm-berg-layer.b3{background:rgba(30,94,159,.24);width:94%;align-self:center}
.cm-berg-layer.b4{background:rgba(30,94,159,.14);width:100%}
@media(max-width:640px){.cm-berg-layer.top{width:78%}.cm-berg-layer.b1{width:86%}.cm-berg-layer.b2{width:92%}.cm-berg-layer.b3{width:97%}}

/* ============================================
   FORMATY - zig-zag z probkami
   ============================================ */
.cm-sec-head{max-width:780px;margin-bottom:48px}
.cm-sec-head h2{font-family:'Montserrat';font-weight:800;font-size:clamp(32px,3.4vw,50px);line-height:1.05;letter-spacing:-.02em;color:var(--granat);margin:0 0 14px;text-wrap:balance}
.cm-sec-head .sub{font:500 15.5px/1.6 'Montserrat';color:var(--ink-soft);max-width:60ch;margin:0}
.cm-formats{padding:clamp(64px,9vh,79px) 0;background:var(--cm-paper);color:var(--granat)}
.cm-fmt-rows{display:flex;flex-direction:column;gap:clamp(36px,5vh,60px)}
.cm-fmt-row{display:grid;grid-template-columns:1fr;gap:clamp(24px,4vw,60px);align-items:center}
@media(min-width:900px){.cm-fmt-row{grid-template-columns:1fr 1fr}.cm-fmt-row.rev .cm-fmt-txt{order:2}}
.cm-fmt-txt .num{display:block;font:800 14px/1 'Montserrat';color:var(--granat);margin-bottom:12px}
.cm-fmt-txt .num::after{content:'';display:inline-block;width:34px;height:2px;background:var(--mint);margin-left:12px;vertical-align:3px}
.cm-fmt-txt h3{font:800 clamp(22px,2.2vw,28px)/1.2 'Montserrat';letter-spacing:-.014em;color:var(--granat);margin:0 0 12px}
.cm-fmt-txt p{font:500 15.5px/1.65 'Montserrat';color:var(--ink-soft);max-width:52ch;margin:0}
.cm-fmt-sample{background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:0 20px 40px -20px rgba(5,10,48,.18);padding:24px 26px}
.cm-fmt-sample{transition:transform .3s var(--cm-ease),box-shadow .3s var(--cm-ease)}
.cm-fmt-sample:hover{transform:translateY(-4px);box-shadow:0 30px 55px -24px rgba(5,10,48,.26)}
.cm-fmt-sample .bar{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:14px}
.cm-fmt-sample .bar .file{font:700 12.5px/1.3 'Montserrat';color:var(--ink-soft)}
.cm-fmt-sample .bar .tag{font:700 11px/1.3 'Montserrat';color:var(--mute)}
.cm-fmt-sample .tt{font:800 16px/1.3 'Montserrat';letter-spacing:-.012em;color:var(--granat);margin-bottom:8px}
.cm-fmt-sample .tx{font:500 14px/1.7 'Montserrat';color:var(--ink-soft);margin:0}
.cm-fmt-sample .tx .idea{background:rgba(128,223,160,.22);padding:0 2px;border-radius:3px}

/* ============================================
   DYSTRYBUCJA - hub i kanaly
   ============================================ */
.cm-dist{padding:clamp(64px,9vh,79px) 0;background:var(--bg-soft);color:var(--granat)}
.cm-dist-map{display:grid;grid-template-columns:1fr;gap:20px;margin-top:8px}
@media(min-width:940px){.cm-dist-map{grid-template-columns:1fr auto 1fr;align-items:center;gap:clamp(24px,4vw,56px)}}
.cm-dist-hub{background:var(--granat);color:var(--white);border-radius:var(--r-xl);padding:30px 30px 26px;box-shadow:0 30px 70px -30px rgba(5,10,48,.45);max-width:340px;justify-self:start}
@media(min-width:940px){.cm-dist-hub{justify-self:end}}
.cm-dist-hub .k{font:700 12px/1 'Montserrat';color:var(--mint);margin-bottom:10px}
.cm-dist-hub .t{font:800 19px/1.3 'Montserrat';letter-spacing:-.015em}
.cm-dist-hub .m{font:600 12.5px/1.4 'Montserrat';color:rgba(250,251,255,.6);margin-top:14px}
.cm-dist-lines{display:none}
@media(min-width:940px){.cm-dist-lines{display:block}}
.cm-dist-lines path{stroke:#c4cdea;stroke-width:2;fill:none;stroke-dasharray:6 7}
.cm-dist-ch{display:flex;flex-direction:column;gap:12px}
.cm-dist-c{background:var(--white);border:1px solid var(--line);border-radius:var(--r-md);padding:16px 20px;display:flex;justify-content:space-between;gap:16px;align-items:baseline;transition:transform .25s var(--cm-ease),box-shadow .25s var(--cm-ease)}
.cm-dist-c:hover{transform:translateX(4px);box-shadow:0 20px 40px -20px rgba(5,10,48,.18)}
.cm-dist-c .n{font:700 15px/1.35 'Montserrat'}
.cm-dist-c .d{font:600 12.5px/1.4 'Montserrat';color:var(--mute);text-align:right}
.cm-dist-engines{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.cm-dist-engines .t{font:600 14px/1.4 'Montserrat';color:var(--mute)}
.cm-dist-engines .eng{font:700 13px/1 'Montserrat';background:var(--white);border:1px solid var(--line);border-radius:99px;padding:9px 16px}

/* ============================================
   WYBRANE TEKSTY - 4 real artykuły
   ============================================ */
.cm-selected{padding:70px 0;background:var(--white);color:var(--granat)}
.cm-selected-head{max-width:780px;margin-bottom:50px}
.cm-selected-head .kicker{display:inline-flex;align-items:center;gap:10px;font:600 11.5px/1 'Montserrat';color:var(--blue);letter-spacing:.18em;text-transform:uppercase}
.cm-selected-head .kicker .dot{width:7px;height:7px;background:var(--mint);border-radius:50%;box-shadow:0 0 0 3px rgba(128,223,160,.2)}
.cm-selected-head h2{font-family:'Montserrat';font-weight:800;font-size:clamp(32px,3.8vw,48px);line-height:1.05;letter-spacing:-.022em;color:var(--granat);margin:18px 0 14px}
.cm-selected-head h2 .italic{font-style:italic;font-weight:700;color:var(--blue)}
.cm-selected-head .lede{font:500 15.5px/1.6 'Montserrat';color:var(--ink-soft);max-width:54ch;margin:0}

.cm-selected-grid{display:grid;grid-template-columns:1fr;gap:24px}
@media(min-width:600px){.cm-selected-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.cm-selected-grid{grid-template-columns:repeat(4,1fr);gap:18px}}

.cm-selected-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit;background:var(--bg-paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:0;overflow:hidden;transition:transform .35s var(--cm-ease),border-color .35s var(--cm-ease),box-shadow .35s var(--cm-ease)}
.cm-selected-card:hover{transform:translateY(-6px);border-color:var(--blue);box-shadow:0 28px 50px -28px rgba(5,10,48,.25)}
.cm-selected-thumb{aspect-ratio:600/222;background:var(--bg-soft);overflow:hidden}
.cm-selected-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--cm-ease)}
.cm-selected-card:hover .cm-selected-thumb img{transform:scale(1.06)}
.cm-selected-cat{display:inline-block;font:700 10px/1 'Montserrat';color:var(--blue);letter-spacing:.16em;text-transform:uppercase;padding:0 22px;margin-top:4px}
.cm-selected-card h3{font:800 17px/1.3 'Montserrat';color:var(--granat);letter-spacing:-.014em;padding:0 22px;margin:4px 0 0;text-wrap:balance}
.cm-selected-meta{font:500 12px/1 'Montserrat';color:var(--mute);font-style:italic;padding:0 22px 22px;margin-top:auto;letter-spacing:.04em}

.cm-selected-cta{display:flex;justify-content:center;margin-top:50px}

/* ============================================
   PROCESS - 4 steps editorial
   ============================================ */
.cm-process{padding:70px 0;background:var(--bg-paper);color:var(--granat);border-top:1px solid var(--line)}
.cm-proc-head{max-width:780px;margin-bottom:60px}
.cm-proc-head .kicker{display:inline-flex;align-items:center;gap:10px;font:600 11.5px/1 'Montserrat';color:var(--blue);letter-spacing:.18em;text-transform:uppercase}
.cm-proc-head .kicker .dot{width:7px;height:7px;background:var(--mint);border-radius:50%;box-shadow:0 0 0 3px rgba(128,223,160,.2)}
.cm-proc-head h2{font-family:'Montserrat';font-weight:800;font-size:clamp(32px,3.8vw,46px);line-height:1.05;letter-spacing:-.022em;color:var(--granat);margin:18px 0 0}
.cm-proc-head h2 .italic{font-style:italic;font-weight:700;color:var(--blue)}

.cm-proc-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}
@media(min-width:760px){.cm-proc-list{grid-template-columns:1fr 1fr;gap:0;border-top:none}}
.cm-proc-step{display:grid;grid-template-columns:auto 1fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}
@media(min-width:760px){
  .cm-proc-step{padding:36px 36px 36px 0;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
  .cm-proc-step:nth-child(2n){border-right:none;padding-right:0;padding-left:36px}
  .cm-proc-step:nth-last-child(-n+2){border-bottom:none}
}
.cm-proc-num{width:54px;height:54px;display:grid;place-items:center;background:var(--white);border:2px solid var(--line);border-radius:50%;font:800 15px/1 'Montserrat';color:var(--granat);letter-spacing:-.012em;font-style:italic;flex-shrink:0;transition:background .35s var(--cm-ease),border-color .35s var(--cm-ease),color .35s var(--cm-ease)}
.cm-proc-step:hover .cm-proc-num{background:var(--granat);border-color:var(--granat);color:var(--mint)}
.cm-proc-body h3{font:800 22px/1.25 'Montserrat';color:var(--granat);letter-spacing:-.014em;margin:6px 0 8px}
.cm-proc-body p{font:500 15px/1.65 'Montserrat';color:var(--ink-soft);margin:0;max-width:46ch}

/* ============================================
   TEAM CONTENT - 2 osoby
   ============================================ */
.cm-team{padding:70px 0 150px;background:var(--white);color:var(--granat)}
.cm-team-head{max-width:780px;margin-bottom:50px}
.cm-team-head .kicker{display:inline-flex;align-items:center;gap:10px;font:600 11.5px/1 'Montserrat';color:var(--blue);letter-spacing:.18em;text-transform:uppercase}
.cm-team-head .kicker .dot{width:7px;height:7px;background:var(--blue);border-radius:50%;box-shadow:0 0 0 3px rgba(30,94,159,.18)}
.cm-team-head h2{font-family:'Montserrat';font-weight:800;font-size:clamp(32px,3.8vw,46px);line-height:1.05;letter-spacing:-.022em;color:var(--granat);margin:18px 0 14px}
.cm-team-head h2 .italic{font-style:italic;font-weight:700;color:var(--blue)}
.cm-team-head .lede{font:500 15.5px/1.6 'Montserrat';color:var(--ink-soft);max-width:54ch;margin:0}

.cm-team-grid{display:grid;grid-template-columns:1fr;gap:24px}
@media(min-width:760px){.cm-team-grid{grid-template-columns:1fr 1fr;gap:28px}}
.cm-tm{display:flex;flex-direction:column;gap:18px;padding:32px 28px;background:var(--bg-paper);border:1px solid var(--line);border-radius:var(--r-lg);transition:transform .3s var(--cm-ease),border-color .3s var(--cm-ease)}
@media(min-width:760px){.cm-tm{flex-direction:row;align-items:start;gap:28px}}
.cm-tm:hover{transform:translateY(-4px);border-color:var(--mint)}
.cm-tm-photo{width:120px;height:120px;border-radius:50%;overflow:hidden;background:var(--granat);box-shadow:0 12px 28px -12px rgba(5,10,48,.35);flex-shrink:0}
.cm-tm-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:grayscale(.4) brightness(.95);transition:filter .4s var(--cm-ease),transform .5s var(--cm-ease)}
.cm-tm:hover .cm-tm-photo img{filter:grayscale(0) brightness(1);transform:scale(1.06)}
.cm-tm-text{flex:1;min-width:0}
.cm-tm-text .role{display:inline-block;font:700 10.5px/1 'Montserrat';color:var(--mint);background:var(--granat);padding:5px 10px;border-radius:99px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}
.cm-tm-text h3{font:800 20px/1.2 'Montserrat';color:var(--granat);letter-spacing:-.012em;margin:0 0 8px}
.cm-tm-text p{font:500 14.5px/1.6 'Montserrat';color:var(--ink-soft);margin:0;max-width:42ch}

/* ============================================
   FAQ
   ============================================ */
.cm-faq{padding:70px 0;background:var(--bg-paper);color:var(--granat)}
.cm-faq-head{max-width:780px;margin-bottom:40px}
.cm-faq-head .kicker{display:inline-flex;align-items:center;gap:10px;font:600 11.5px/1 'Montserrat';color:var(--blue);letter-spacing:.18em;text-transform:uppercase}
.cm-faq-head .kicker .dot{width:7px;height:7px;background:var(--blue);border-radius:50%;box-shadow:0 0 0 3px rgba(30,94,159,.18)}
.cm-faq-head h2{font-family:'Montserrat';font-weight:800;font-size:clamp(32px,3.8vw,46px);line-height:1.05;letter-spacing:-.022em;color:var(--granat);margin:18px 0 0}
.cm-faq-head h2 .italic{font-style:italic;font-weight:700;color:var(--blue)}

.cm-faq-list{max-width:880px;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}
.cm-faq-item{border-bottom:1px solid var(--line)}
.cm-faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;font:700 18px/1.35 'Montserrat';color:var(--granat);letter-spacing:-.012em;transition:color .25s var(--cm-ease)}
.cm-faq-item summary::-webkit-details-marker{display:none}
.cm-faq-item summary::after{content:'+';font:300 30px/1 'Montserrat';color:var(--blue);transition:transform .3s var(--cm-ease)}
.cm-faq-item[open] summary::after{transform:rotate(45deg)}
.cm-faq-item:hover summary{color:var(--blue)}
.cm-faq-body{padding:0 0 26px;animation:cm-faq-open .35s var(--cm-ease)}
.cm-faq-body p{font:500 15px/1.65 'Montserrat';color:var(--ink-soft);margin:0;max-width:62ch}
@keyframes cm-faq-open{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}

/* ============================================
   CTA
   ============================================ */
.cm-offer{position:relative;padding:70px 0;background:var(--granat);color:var(--white);overflow:hidden}
.cm-offer .sygnet-decor{position:absolute;width:280px;opacity:.1;pointer-events:none;color:var(--white)}
.cm-offer .sygnet-decor.tl{top:-40px;left:-50px}
.cm-offer .sygnet-decor.br{bottom:-40px;right:-50px}

.cm-offer-grid{display:grid;grid-template-columns:1fr;gap:50px;position:relative;z-index:2}
@media(min-width:900px){.cm-offer-grid{grid-template-columns:1.2fr 1fr;gap:70px;align-items:start}}

.cm-offer-text .kicker{display:inline-flex;align-items:center;gap:10px;font:600 11.5px/1 'Montserrat';color:var(--white);letter-spacing:.18em;text-transform:uppercase}
.cm-offer-text .kicker .dot{width:7px;height:7px;background:var(--mint);border-radius:50%;box-shadow:0 0 0 3px rgba(128,223,160,.2)}
.cm-offer-text h2{font-family:'Montserrat';font-weight:800;font-size:clamp(36px,4.4vw,56px);line-height:1.04;letter-spacing:-.024em;color:var(--white);margin:18px 0 22px}
.cm-offer-text p{font:500 16.5px/1.6 'Montserrat';color:rgba(255,255,255,.88);max-width:48ch;margin:0}

.cm-offer-contacts-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:var(--r-xl);padding:28px 26px;backdrop-filter:saturate(140%) blur(8px);-webkit-backdrop-filter:saturate(140%) blur(8px)}
.cm-offer-contacts-card .row{display:grid;grid-template-columns:130px 1fr;gap:16px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.14);font:600 14px/1.3 'Montserrat'}
.cm-offer-contacts-card .row:last-child{border-bottom:none}
.cm-offer-contacts-card .row .l{color:rgba(255,255,255,.6);letter-spacing:.06em;text-transform:uppercase;font-size:11px}
.cm-offer-contacts-card .row .v{color:var(--white)}
.cm-offer-contacts-card .row .v a{color:var(--white);text-decoration:none;transition:color .2s var(--cm-ease);font-weight:700}
.cm-offer-contacts-card .row .v a:hover{color:rgba(128,223,160,1)}

/* prefers-reduced-motion */
@media(prefers-reduced-motion:reduce){
  .cm-selected-card,.cm-tm{animation:none!important;opacity:1!important;transform:none!important}
  .cm-selected-card:hover,.cm-tm:hover,.cm-dist-c:hover{transform:none}
}

/* hero twist: licznik slow + pasek postepu */
.cm-doc{padding-bottom:30px}
.cm-doc-count{font:700 12px/1 'Montserrat';color:var(--mute);margin-left:auto;padding-right:10px;white-space:nowrap}
.cm-doc-prog{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--line);border-radius:0 0 var(--r-xl) var(--r-xl);overflow:hidden}
.cm-doc-prog i{display:block;height:100%;width:0;background:var(--mint);transition:width .5s var(--cm-ease)}

/* iceberg twist: hover = zdanie wiecej */
.cm-berg-layer{flex-wrap:wrap}
.cm-berg-layer .more{flex-basis:100%;font:500 12.5px/1.5 'Montserrat';opacity:0;max-height:0;overflow:hidden;transition:opacity .4s var(--cm-ease),max-height .4s var(--cm-ease),margin-top .4s var(--cm-ease);margin-top:0}
.cm-berg-layer:hover .more{opacity:.9;max-height:3.2em;margin-top:8px}
.cm-berg-layer.top .more{color:rgba(5,10,48,.85)}
@media(hover:none){.cm-berg-layer .more{opacity:.85;max-height:none;margin-top:8px}}

/* formaty twist: rzad zbiorczy pozostalych */
.cm-fmt-more{margin-top:clamp(36px,5vh,56px);border-top:1px solid var(--line);padding-top:26px;display:grid;gap:18px}
@media(min-width:820px){.cm-fmt-more{grid-template-columns:auto repeat(4,1fr);align-items:start;gap:28px}}
.cm-fmt-more .t{font:700 13.5px/1.4 'Montserrat';color:var(--mute)}
.cm-fmt-more .it b{display:block;font:800 15px/1.3 'Montserrat';color:var(--granat);margin-bottom:4px}
.cm-fmt-more .it span{font:500 13px/1.5 'Montserrat';color:var(--ink-soft)}

/* dystrybucja twist: linie plyna */
.cm-dist-lines path{animation:cm-dash 1.1s linear infinite}
@keyframes cm-dash{from{stroke-dashoffset:13}to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.cm-dist-lines path{animation:none}}

/* Wyrownanie szerokosci sekcji do standardu pozostalych podstron uslugowych (box 1500, nie bazowe 1600) */
.shell{max-width:1500px}
