/* SŁOWIK DIGITAL — OFERTA v1.9 / STICKY STACK
   Desktop: sticky intro + 3 sticky sheets.
   Mobile: normal vertical flow.
   Square corners only. No image padding. No text over imagery. */

.sd-offer-v1{
  --ink:#08264d;
  --copy:#667c97;
  --cyan:#13bce9;
  --line:#d7e6f1;
  --paper:#fff;
  --header-h:var(--sdh-height,76px);
  position:relative;
  isolation:isolate;
  overflow:clip;
  padding:clamp(76px,6.6vw,108px) 0 clamp(48px,4.2vw,68px);
  color:var(--ink);
  background:
    radial-gradient(52% 44% at 91% 17%,rgba(189,225,247,.34),transparent 75%),
    radial-gradient(46% 44% at 7% 76%,rgba(220,236,247,.38),transparent 76%),
    linear-gradient(135deg,#fbfdff 0%,#f5f9fc 48%,#edf6fb 100%);
  font-family:"Manrope","Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
}
.sd-offer-v1__ambient{
  position:absolute;
  z-index:-1;
  inset:0;
  pointer-events:none;
}
.sd-offer-v1__ambient::before,
.sd-offer-v1__ambient::after{
  content:"";
  position:absolute;
  left:-10%;
  width:125%;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(166,208,235,.25),rgba(255,255,255,.94),transparent);
  filter:drop-shadow(0 0 12px rgba(121,198,239,.20));
}
.sd-offer-v1__ambient::before{top:25%;transform:rotate(7deg)}
.sd-offer-v1__ambient::after{top:69%;transform:rotate(-6deg)}
.sd-offer-v1__container{width:min(1380px,calc(100% - 48px));margin:0 auto}
.sd-offer-v1__layout{
  display:grid;
  grid-template-columns:minmax(455px,1.06fr) minmax(0,1.54fr);
  gap:clamp(34px,3.5vw,58px);
  align-items:start;
}

/* LEFT / sticky message */
.sd-offer-v1__intro{
  position:sticky;
  top:calc(var(--header-h) + 42px);
  min-height:calc(100svh - var(--header-h) - 84px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding:4px 0 2px;
}
.sd-offer-v1__eyebrow{
  margin:0 0 30px;
  color:#6b84a5;
  font-size:11px;
  font-weight:700;
  line-height:1;
  letter-spacing:.30em;
  text-transform:uppercase;
}
.sd-offer-v1__eyebrow::after{
  content:"";
  display:block;
  width:42px;
  height:2px;
  margin-top:15px;
  background:var(--cyan);
}
.sd-offer-v1__title{
  margin:0;
  max-width:620px;
  color:var(--ink);
  font-size:clamp(34px,2.45vw,46px);
  font-weight:700;
  line-height:1.02;
  letter-spacing:-.055em;
}
.sd-offer-v1__title span{color:var(--cyan)}
@media (min-width:1181px){.sd-offer-v1__title{white-space:normal}.sd-offer-v1__title br:first-of-type{display:block}}
.sd-offer-v1__lead{
  max-width:455px;
  margin:20px 0 0;
  color:var(--copy);
  font-size:15px;
  line-height:1.56;
  letter-spacing:-.015em;
}
.sd-offer-v1__intro-cta{
  display:inline-flex;
  min-width:218px;
  min-height:54px;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-top:34px;
  padding:0 24px;
  border:1px solid #06366d;
  border-radius:0;
  background:#07366f;
  color:#fff;
  text-decoration:none;
  font-size:13.6px;
  font-weight:700;
  transition:background .25s ease,border-color .25s ease;
}
.sd-offer-v1__intro-cta i{
  color:var(--cyan);
  font-style:normal;
  font-size:24px;
  font-weight:300;
  transition:transform .28s ease;
}
.sd-offer-v1__intro-cta:hover,
.sd-offer-v1__intro-cta:focus-visible{background:#052d60;border-color:#052d60}
.sd-offer-v1__intro-cta:hover i,
.sd-offer-v1__intro-cta:focus-visible i{transform:translateX(5px)}
.sd-offer-v1__signature{
  margin:clamp(56px,8vh,92px) 0 0;
  padding-top:0;
  color:#7c94b1;
  font-size:9.5px;
  font-weight:700;
  line-height:1.65;
  letter-spacing:.28em;
}
.sd-offer-v1__signature::after{
  content:"";
  display:block;
  width:38px;
  height:2px;
  margin-top:13px;
  background:var(--cyan);
}

/* RIGHT / sticky stack */
.sd-offer-v1__stack{
  position:relative;
  padding-bottom:clamp(24px,3vw,44px);
}
.sd-offer-v1__sheet{
  position:sticky;
  top:calc(var(--header-h) + 26px + (var(--stack-index,0) * 18px));
  z-index:calc(10 + var(--stack-index,0));
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  min-height:min(66svh,620px);
  padding:14px 14px 16px;
  margin-bottom:clamp(42px,6vh,72px);
  border:1px solid rgba(177,207,226,.78);
  border-radius:0;
  background:rgba(249,252,254,.97);
  box-shadow:0 24px 46px rgba(8,38,77,.055);
  backdrop-filter:blur(9px);
  -webkit-backdrop-filter:blur(9px);
  transform:translateY(var(--sheet-y,0)) scale(var(--sheet-scale,1));
  transform-origin:50% 0;
  transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;
}
.sd-offer-v1__sheet[data-stack="1"]{--stack-index:0}
.sd-offer-v1__sheet[data-stack="2"]{--stack-index:1}
.sd-offer-v1__sheet[data-stack="3"]{--stack-index:2;margin-bottom:0}
.sd-offer-v1__sheet.is-active{
  border-color:#a7cfe6;
  box-shadow:0 28px 60px rgba(8,38,77,.075);
}

/* SERVICE CARD */
.sd-offer-v1__card{
  position:relative;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  min-width:0;
  min-height:470px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:0;
  background:#fff;
  color:inherit;
  text-decoration:none;
  box-shadow:none;
  transition:border-color .3s ease;
}
.sd-offer-v1__media{
  position:relative;
  min-height:0;
  overflow:hidden;
  background:#edf6fb;
}
.sd-offer-v1__media img{
  display:block;
  width:100%;
  height:100%;
  min-width:100%;
  min-height:100%;
  margin:0;
  padding:0;
  border:0;
  object-fit:cover;
  object-position:center;
  transform:scale(1.001) translate3d(var(--mx,0),var(--my,0),0);
  transition:transform .72s cubic-bezier(.2,.74,.2,1),filter .45s ease;
  will-change:transform;
}
.sd-offer-v1__body{
  display:flex;
  min-height:112px;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:17px 18px 17px;
  border-top:1px solid var(--line);
  background:#fff;
}
.sd-offer-v1__body>div{min-width:0}
.sd-offer-v1__body h3{
  margin:0;
  color:var(--ink);
  font-size:19px;
  font-weight:700;
  line-height:1.08;
  letter-spacing:-.035em;
}
.sd-offer-v1__body p{
  margin:7px 0 0;
  color:var(--copy);
  font-size:12px;
  line-height:1.38;
  letter-spacing:-.01em;
}
.sd-offer-v1__arrow{
  flex:0 0 auto;
  align-self:center;
  color:var(--cyan);
  font-size:28px;
  font-weight:300;
  line-height:1;
  transition:transform .28s ease,color .28s ease;
}
.sd-offer-v1__card:hover,
.sd-offer-v1__card:focus-visible{border-color:#a8cde4}
.sd-offer-v1__card:hover .sd-offer-v1__media img,
.sd-offer-v1__card:focus-visible .sd-offer-v1__media img{
  transform:scale(1.045) translate3d(var(--mx,0),var(--my,0),0);
  filter:saturate(1.03) contrast(1.02);
}
.sd-offer-v1__card:hover .sd-offer-v1__arrow,
.sd-offer-v1__card:focus-visible .sd-offer-v1__arrow{
  transform:translateX(5px);
  color:#058fc7;
}
.sd-offer-v1__card:focus-visible,
.sd-offer-v1__intro-cta:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:3px;
}

.sd-offer-v1__mobile-cta{display:none}

/* Reveal */
[data-offer-reveal]{
  opacity:0;
  transform:translateY(16px);
  transition:opacity .65s ease,transform .65s cubic-bezier(.2,.75,.2,1);
}
[data-offer-reveal].is-in{opacity:1;transform:none}

/* Medium desktop */
@media (max-width:1180px) and (min-width:901px){
  .sd-offer-v1__container{width:min(100% - 40px,1160px)}
  .sd-offer-v1__layout{grid-template-columns:minmax(390px,1fr) minmax(0,1.46fr);gap:30px}
  .sd-offer-v1__title{font-size:clamp(31px,2.65vw,40px);max-width:560px}
  .sd-offer-v1__card{min-height:430px}
  .sd-offer-v1__body h3{font-size:17px}
  .sd-offer-v1__body p{font-size:11px}
}

/* Tablet: no sticky stack, but still 2 columns. */
@media (max-width:900px) and (min-width:761px){
  .sd-offer-v1{overflow:hidden}
  .sd-offer-v1__container{width:min(100% - 40px,820px)}
  .sd-offer-v1__layout{display:block}
  .sd-offer-v1__intro{
    position:relative;
    top:auto;
    min-height:0;
    margin-bottom:34px;
  }
  .sd-offer-v1__title{max-width:640px;font-size:clamp(34px,5vw,44px)}
  .sd-offer-v1__lead{max-width:600px}
  .sd-offer-v1__signature{display:none}
  .sd-offer-v1__stack{display:grid;gap:16px}
  .sd-offer-v1__sheet{
    position:relative;
    top:auto;
    min-height:0;
    margin:0;
    padding:12px;
    transform:none!important;
  }
    .sd-offer-v1__card{min-height:390px}
}

/* Mobile: each service card is a separate sticky level. */
@media (max-width:760px){
  .sd-offer-v1{
    overflow:clip;
    padding:50px 0 28px;
    background:
      radial-gradient(100% 36% at 93% 20%,rgba(190,224,246,.40),transparent 74%),
      linear-gradient(180deg,#fbfdff 0%,#eff7fb 62%,#f8fbfd 100%);
  }
  .sd-offer-v1__container{width:calc(100% - 32px)}
  .sd-offer-v1__layout{display:block}

  .sd-offer-v1__intro{
    position:relative;
    top:auto;
    min-height:0;
    display:block;
    margin-bottom:24px;
    padding:0;
  }
  .sd-offer-v1__eyebrow{margin-bottom:18px;font-size:9.6px;letter-spacing:.27em}
  .sd-offer-v1__eyebrow::after{width:38px;margin-top:12px}
  .sd-offer-v1__title{
    max-width:none;
    font-size:clamp(25px,7.05vw,31px);
    line-height:1.14;
    letter-spacing:-.047em;
  }
  .sd-offer-v1__title br{display:none}
  .sd-offer-v1__lead{
    max-width:none;
    margin-top:14px;
    font-size:13.2px;
    line-height:1.5;
  }
  .sd-offer-v1__intro-cta{display:none}
  .sd-offer-v1__signature{display:none}

  .sd-offer-v1__stack{
    position:relative;
    display:block;
    padding-bottom:0;
  }

  /* Parents disappear so all six services form one continuous sticky stack. */
  .sd-offer-v1__sheet{display:contents}

  .sd-offer-v1__card{
    --mobile-card-top:calc(var(--header-h) + 14px);
    position:sticky;
    top:var(--mobile-card-top);
    z-index:calc(20 + var(--mobile-card-index,0));
    min-height:0;
    margin:0 0 16px;
    grid-template-rows:auto auto;
    border:1px solid #d2e4ef;
    background:#fff;
    box-shadow:0 12px 28px rgba(8,38,77,.045);
    transform:translateY(var(--card-y,0)) scale(var(--card-scale,1));
    transform-origin:50% 0;
    transition:
      transform .28s cubic-bezier(.2,.72,.2,1),
      box-shadow .28s ease,
      border-color .28s ease,
      background .28s ease;
  }
  .sd-offer-v1__sheet[data-stack="3"] .sd-offer-v1__card:last-of-type{margin-bottom:0}

  /* Heading / text on top, image below. */
  .sd-offer-v1__body{
    grid-row:1;
    min-height:78px;
    padding:12px 13px 12px;
    border-top:0;
    border-bottom:1px solid var(--line);
    background:#fff;
  }
  .sd-offer-v1__media{
    grid-row:2;
    height:clamp(168px,45vw,212px);
  }
  .sd-offer-v1__media::after{
    content:"";
    position:absolute;
    z-index:2;
    inset:-2px;
    pointer-events:none;
    opacity:0;
    background:
      linear-gradient(
        108deg,
        transparent 22%,
        rgba(255,255,255,0) 34%,
        rgba(255,255,255,.12) 43%,
        rgba(118,212,242,.08) 49%,
        rgba(255,255,255,.14) 54%,
        rgba(255,255,255,0) 64%,
        transparent 76%
      );
    transform:translate3d(-125%,0,0);
  }
  .sd-offer-v1__card.is-stack-active .sd-offer-v1__media::after{
    opacity:1;
    animation:sdOfferActiveSheen 3.4s cubic-bezier(.4,0,.2,1) infinite;
  }
  @keyframes sdOfferActiveSheen{
    0%,22%{transform:translate3d(-125%,0,0);opacity:0}
    32%{opacity:.68}
    58%{opacity:.46}
    72%,100%{transform:translate3d(125%,0,0);opacity:0}
  }

  .sd-offer-v1__body h3{font-size:15.6px;line-height:1.06}
  .sd-offer-v1__body p{margin-top:4px;font-size:10.4px;line-height:1.28}
  .sd-offer-v1__arrow{font-size:22px}

  /* Active / header-contact state. */
  .sd-offer-v1__card.is-stack-active{
    border-color:#a8cfe6;
    box-shadow:0 16px 34px rgba(8,38,77,.065);
  }
  .sd-offer-v1__card.is-stack-active .sd-offer-v1__body{
    background:#fbfdff;
  }
  .sd-offer-v1__card.is-stack-active .sd-offer-v1__body h3{
    color:#0a3e73;
  }

  .sd-offer-v1__card:active .sd-offer-v1__media img{transform:scale(1.022)}
  .sd-offer-v1__card:active .sd-offer-v1__arrow{transform:translateX(4px)}

  .sd-offer-v1__mobile-cta{
    display:block;
    margin-top:14px;
  }
  .sd-offer-v1__mobile-cta a{
    position:relative;
    display:flex;
    min-height:54px;
    align-items:center;
    justify-content:center;
    padding:0 52px;
    border:1px solid #06366d;
    border-radius:0;
    background:#07366f;
    color:#fff;
    text-align:center;
    text-decoration:none;
    font-size:15px;
    font-weight:700;
  }
  .sd-offer-v1__mobile-cta a>span{
    display:block;
    width:100%;
    text-align:center;
  }
  .sd-offer-v1__mobile-cta i{
    position:absolute;
    right:20px;
    top:50%;
    transform:translateY(-50%);
    color:var(--cyan);
    font-style:normal;
    font-size:24px;
    font-weight:300;
  }
}

@media (max-width:390px){
  .sd-offer-v1__card{margin-bottom:16px}
  .sd-offer-v1__media{height:156px}
  .sd-offer-v1__body h3{font-size:14.7px}
  .sd-offer-v1__body p{font-size:9.8px}
}

@media (prefers-reduced-motion:reduce){
  [data-offer-reveal]{opacity:1!important;transform:none!important;transition:none!important}
  .sd-offer-v1__sheet{transform:none!important;transition:none!important}
  .sd-offer-v1__media img,.sd-offer-v1__arrow{transition:none!important;transform:none!important}
}
