/* ============================================================
   PODPOŘ NEZÁVISLÉ — REDESIGN
   Globální header/footer zůstávají v css/style.css.
   ============================================================ */

.support-page{
  background:#fffdfa;
}


/* ============================================================
   HERO
   ============================================================ */

.support-hero{
  position:relative;
  overflow:hidden;
  padding:74px 0 78px;
  background:
    radial-gradient(circle at 77% 20%,rgba(242,189,63,.11),transparent 26%),
    linear-gradient(180deg,#fffdfa 0%,#fffdf9 100%);
}

.support-hero-layout{
  display:grid;
  grid-template-columns:minmax(0,.94fr) minmax(460px,1.06fr);
  gap:70px;
  align-items:center;
}

.support-hero-copy{
  position:relative;
  z-index:2;
}

.support-hero-copy h1{
  max-width:690px;
  margin:15px 0 23px;
  color:#17324a;
  font-size:clamp(3.6rem,6.2vw,6.25rem);
  line-height:.93;
  letter-spacing:-.065em;
}

.support-hero-copy h1 .green{
  color:#0a7f83;
}

.support-hero-lead{
  max-width:610px;
  margin:0;
  color:#29485b;
  font-size:1.04rem;
  line-height:1.65;
}

.support-hero-claim{
  margin:21px 0 0;
  color:#0a7f83;
  font-size:.92rem;
  font-weight:850;
}


/* Hero obrázek je ZÁMĚRNĚ bez boxu. */

.support-hero-art{
  position:relative;
  min-height:400px;
  display:grid;
  place-items:center;
}

.support-hero-art > img{
  width:100%;
  height:400px;
  display:block;
  object-fit:contain;
}

.support-hero-fallback{
  width:100%;
  height:400px;
  display:grid;
  place-items:center;
}

.support-hero-fallback svg{
  width:100%;
  height:100%;
  display:block;
}


/* ============================================================
   FLOW
   ============================================================ */

.support-flow{
  position:relative;
  padding:82px 0 34px;
  background:
    linear-gradient(
      180deg,
      #fffdfa 0%,
      #faf7ef 48%,
      #fffdfa 100%
    );
}

.support-flow-inner{
  position:relative;
  width:min(1080px,calc(100% - 40px));
}


/* vertikální osa */

.support-flow-inner::before{
  content:"";
  position:absolute;
  left:21px;
  top:25px;
  bottom:150px;
  width:1px;
  background:#cfddda;
}


.support-flow-step{
  position:relative;
  display:grid;
  grid-template-columns:44px minmax(0,.86fr) minmax(430px,1.14fr);
  gap:0 42px;
  align-items:center;
  min-height:340px;
  margin-bottom:88px;
}


.support-number{
  grid-column:1;
  align-self:start;
  position:relative;
  z-index:4;
  width:43px;
  height:43px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#0a7f83;
  color:#fff;
  font-size:1.05rem;
  font-weight:900;
  box-shadow:0 8px 20px rgba(10,127,131,.2);
}


.support-flow-copy{
  grid-column:2;
  min-width:0;
}

.support-flow-copy h2{
  margin:8px 0 15px;
  color:#17324a;
  font-size:clamp(2rem,3.25vw,2.65rem);
  line-height:1.06;
  letter-spacing:-.045em;
}

.support-flow-copy > p{
  max-width:510px;
  margin:0;
  color:#667b87;
  font-size:.94rem;
  line-height:1.67;
}

.support-kicker{
  color:#0a7f83;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}


/* ============================================================
   STEP 1
   ============================================================ */

.support-choice-panel{
  grid-column:3;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  padding:14px;
  border:1px solid #dbe5e3;
  border-radius:22px;
  background:rgba(255,255,255,.78);
  box-shadow:0 11px 30px rgba(23,50,74,.055);
}


.support-choice-card{
  min-width:0;
  padding:9px;
  border:1px solid transparent;
  border-radius:15px;
  background:transparent;
  color:#17324a;
  font:inherit;
  text-decoration:none;
  text-align:center;
  cursor:pointer;
  transition:
    background .16s ease,
    border-color .16s ease,
    box-shadow .16s ease,
    transform .16s ease;
}

.support-choice-card:hover,
.support-choice-card.is-selected{
  transform:translateY(-1px);
  border-color:rgba(10,127,131,.18);
  background:#fff;
  box-shadow:0 8px 22px rgba(23,50,74,.07);
}

.support-choice-card > strong{
  display:block;
  margin:9px 2px 3px;
  color:#17324a;
  font-size:.76rem;
  line-height:1.3;
}


.choice-visual{
  position:relative;
  height:150px;
  display:block;
  overflow:hidden;
  border-radius:12px;
  background:linear-gradient(145deg,#eef8f5,#fff4d4);
}


/* plakát */

.choice-fence-line{
  position:absolute;
  left:0;
  right:0;
  top:98px;
  height:3px;
  background:#aab5af;
}

.choice-fence-post{
  position:absolute;
  top:25px;
  width:11px;
  height:100px;
  border-radius:3px;
  background:#9aa39d;
}

.choice-fence-post::before{
  content:"";
  position:absolute;
  left:-3px;
  top:-8px;
  border-left:8px solid transparent;
  border-right:8px solid transparent;
  border-bottom:10px solid #9aa39d;
}

.choice-fence-post.p1{left:13px}
.choice-fence-post.p2{left:45px}
.choice-fence-post.p3{right:15px}


.choice-mini-poster{
  position:absolute;
  left:50%;
  top:20px;
  transform:translateX(-50%);
  width:75px;
  height:101px;
  display:flex;
  flex-direction:column;
  padding:9px;
  border-radius:4px;
  background:linear-gradient(155deg,#0a7f83,#075d65);
  color:#fff;
  box-shadow:0 8px 17px rgba(23,50,74,.2);
}

.choice-mini-poster small{
  font-size:.44rem;
  font-weight:800;
}

.choice-mini-poster strong{
  margin:auto 0;
  font-size:.69rem;
  line-height:1.05;
}


/* mobil + QR */

.choice-phone{
  display:grid;
  place-items:center;
}

.choice-phone-body{
  position:relative;
  z-index:2;
  width:72px;
  height:119px;
  display:grid;
  place-items:center;
  border:5px solid #17324a;
  border-radius:16px;
  background:#fff;
  transform:rotate(6deg);
}

.choice-fake-qr{
  width:54px;
  height:54px;
  background:
    linear-gradient(90deg,#17324a 7px,transparent 7px) 0 0/17px 17px,
    linear-gradient(#17324a 7px,transparent 7px) 0 0/17px 17px,
    linear-gradient(45deg,transparent 42%,#17324a 43% 58%,transparent 59%) 0 0/12px 12px,
    #fff;
}

.choice-hand{
  position:absolute;
  left:23px;
  bottom:-30px;
  width:67px;
  height:92px;
  border:3px solid #17324a;
  border-radius:50% 50% 20px 20px;
  background:#fff8e9;
  transform:rotate(-24deg);
}


/* online */

.choice-online{
  display:grid;
  place-items:center;
}

.choice-mobile{
  width:68px;
  height:112px;
  display:grid;
  place-items:center;
  border:5px solid #17324a;
  border-radius:16px;
  background:#fff;
  color:#0a7f83;
  font-size:1.3rem;
  font-weight:900;
}

.online-dot{
  position:absolute;
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  font-style:normal;
  font-size:.72rem;
  font-weight:900;
}

.online-dot.d1{
  left:18px;
  top:24px;
  background:#0a7f83;
}

.online-dot.d2{
  right:15px;
  top:20px;
  background:#f2bd3f;
  color:#17324a;
}

.online-dot.d3{
  right:16px;
  bottom:18px;
  background:#8ecfca;
  color:#17324a;
}


/* ============================================================
   STEP 2
   ============================================================ */

.support-step-two{
  grid-template-columns:44px minmax(430px,1.12fr) minmax(0,.88fr);
}

.support-step-two .support-number{
  grid-column:1;
}

.support-material-visual{
  grid-column:2;
  position:relative;
  min-height:310px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #dbe5e3;
  border-radius:22px;
  background:rgba(255,255,255,.82);
  box-shadow:0 11px 30px rgba(23,50,74,.06);
}

.support-material-visual > img{
  width:100%;
  height:310px;
  display:block;
  object-fit:contain;
}

.support-material-fallback{
  width:100%;
  min-height:310px;
  display:grid;
  grid-template-columns:1fr 54px 1fr;
  gap:24px;
  place-items:center;
  padding:30px;
  background:linear-gradient(145deg,#f8fbfa,#fff9e9);
}

.material-poster{
  justify-self:end;
  width:145px;
  height:205px;
  display:flex;
  flex-direction:column;
  padding:17px;
  border-radius:6px;
  background:linear-gradient(155deg,#0a7f83,#075d65);
  color:#fff;
  box-shadow:0 13px 27px rgba(23,50,74,.17);
}

.material-poster small{
  font-size:.6rem;
  font-weight:800;
}

.material-poster strong{
  margin:auto 0;
  font-size:1.08rem;
  line-height:1.07;
}

.material-poster span{
  color:#fff0bd;
  font-size:.5rem;
}

.material-or{
  width:49px;
  height:49px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff0bd;
  color:#17324a;
  font-size:.65rem;
  font-weight:850;
}

.material-qr-card{
  justify-self:start;
  width:145px;
  height:205px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:16px;
  border:2px solid #d8e3e1;
  border-radius:8px;
  background:#fff;
}

.material-qr-card strong{
  color:#0a7f83;
  font-size:.68rem;
}

.material-qr{
  width:90px;
  height:90px;
  background:
    linear-gradient(90deg,#17324a 10px,transparent 10px) 0 0/27px 27px,
    linear-gradient(#17324a 10px,transparent 10px) 0 0/27px 27px,
    linear-gradient(45deg,transparent 42%,#17324a 43% 58%,transparent 59%) 0 0/18px 18px,
    #fff;
}

.support-copy-right{
  grid-column:3;
  padding-left:22px;
}

.material-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:22px;
}

.support-primary-action,
.support-secondary-action{
  min-height:43px;
  padding:0 16px;
  border-radius:9px;
  font:inherit;
  font-size:.8rem;
  font-weight:850;
  cursor:pointer;
}

.support-primary-action{
  display:inline-flex;
  align-items:center;
  gap:12px;
  border:1px solid #0a7f83;
  background:#0a7f83;
  color:#fff;
  box-shadow:0 7px 17px rgba(10,127,131,.16);
}

.support-secondary-action{
  border:1px solid #cddbd8;
  background:#fff;
  color:#0a7f83;
}


/* ============================================================
   STEP 3 — FORM
   ============================================================ */

.support-step-three{
  align-items:start;
}

.support-step-three .support-flow-copy{
  padding-top:38px;
}

.support-privacy{
  margin-top:20px;
  border:1px solid #dbe5e3;
  border-radius:10px;
  background:#fff;
}

.support-privacy summary{
  padding:11px 13px;
  color:#0a7f83;
  font-size:.78rem;
  font-weight:850;
  cursor:pointer;
}

.support-privacy div{
  padding:0 13px 13px;
}

.support-privacy p{
  margin:7px 0 0;
  color:#667b87;
  font-size:.72rem;
  line-height:1.55;
}


.support-form-shell{
  grid-column:3;
  overflow:hidden;
  border:1px solid #dbe5e3;
  border-radius:21px;
  background:#fff;
  box-shadow:0 12px 34px rgba(23,50,74,.07);
}

.support-delivery-form{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 180px;
  gap:18px 24px;
  padding:24px;
}

.support-form-fields{
  display:grid;
  gap:12px;
}

.support-form-fields label{
  display:grid;
  gap:5px;
  color:#17324a;
  font-size:.73rem;
  font-weight:850;
}

.support-form-fields label > span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.support-form-fields label small{
  color:#8a9aa2;
  font-size:.61rem;
  font-weight:650;
}

.support-form-fields input,
.support-form-fields select,
.support-form-fields textarea{
  width:100%;
  padding:10px 11px;
  border:1px solid #d7e2e0;
  border-radius:8px;
  background:#fff;
  color:#17324a;
  font:inherit;
  font-size:.8rem;
  outline:none;
}

.support-form-fields input:focus,
.support-form-fields select:focus,
.support-form-fields textarea:focus{
  border-color:#0a7f83;
  box-shadow:0 0 0 3px rgba(10,127,131,.08);
}

.support-form-fields textarea{
  min-height:77px;
  resize:vertical;
}


/* obrázek / mailbox je uvnitř formulářové kompozice */

.support-delivery-art{
  position:relative;
  min-height:245px;
  display:grid;
  place-items:center;
  align-self:center;
}

.support-delivery-art > img{
  width:100%;
  height:245px;
  object-fit:contain;
}

.delivery-fallback{
  position:relative;
  width:165px;
  height:215px;
}

.mailbox-post{
  position:absolute;
  left:75px;
  top:105px;
  width:11px;
  height:102px;
  border-radius:4px;
  background:#17324a;
}

.mailbox-body{
  position:absolute;
  left:31px;
  top:49px;
  width:111px;
  height:79px;
  border:4px solid #17324a;
  border-radius:38px 38px 9px 9px;
  background:#0a7f83;
}

.mailbox-door{
  position:absolute;
  left:-4px;
  top:22px;
  width:51px;
  height:57px;
  border:4px solid #17324a;
  border-radius:4px;
  background:#fff;
}

.mailbox-flag{
  position:absolute;
  right:15px;
  top:-45px;
  width:7px;
  height:58px;
  background:#17324a;
}

.mailbox-flag::after{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:33px;
  height:22px;
  border:3px solid #17324a;
  border-radius:2px;
  background:#f2bd3f;
}

.mail-envelope{
  position:absolute;
  left:5px;
  top:102px;
  width:67px;
  height:47px;
  border:3px solid #17324a;
  border-radius:3px;
  background:#fff;
  transform:rotate(-6deg);
  z-index:2;
}

.mail-envelope::before,
.mail-envelope::after{
  content:"";
  position:absolute;
  top:7px;
  width:38px;
  height:3px;
  background:#17324a;
}

.mail-envelope::before{
  left:1px;
  transform:rotate(31deg);
}

.mail-envelope::after{
  right:1px;
  transform:rotate(-31deg);
}

.mail-grass{
  position:absolute;
  bottom:7px;
  width:50px;
  height:33px;
  border-radius:50% 50% 10% 10%;
  background:#8ecfca;
}

.mail-grass.g1{
  left:25px;
}

.mail-grass.g2{
  right:18px;
  width:61px;
  background:#e6f3ef;
}


.support-consent{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:18px 1fr;
  gap:10px;
  align-items:start;
  padding:12px 13px;
  border-radius:9px;
  background:#f6f8f7;
  color:#60747e;
  font-size:.66rem;
  line-height:1.5;
  cursor:pointer;
}

.support-consent input{
  margin-top:3px;
}

.support-submit{
  grid-column:1/-1;
  width:100%;
  justify-content:center;
}

.support-form-status{
  grid-column:1/-1;
  min-height:20px;
  margin:0;
}


/* ============================================================
   STEP 4 — ONLINE
   ============================================================ */

.support-step-online{
  grid-template-columns:44px minmax(300px,.77fr) minmax(0,.73fr) minmax(220px,.5fr);
  gap:0 34px;
  align-items:center;
  margin-bottom:64px;
}


/* hlavní sociální ilustrace bez boxu */

.support-social-art{
  grid-column:2;
  min-height:310px;
  display:grid;
  place-items:center;
}

.support-social-art > img{
  width:100%;
  height:310px;
  object-fit:contain;
}

.support-social-fallback{
  width:100%;
  height:310px;
  display:grid;
  place-items:center;
}

.support-social-fallback svg{
  width:100%;
  height:100%;
}


.support-online-copy{
  grid-column:3;
}

.support-share-actions{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:18px;
}

.support-share-actions button{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:39px;
  padding:0 10px;
  border:1px solid #d3dfdd;
  border-radius:999px;
  background:#fff;
  color:#0a7f83;
  font:inherit;
  font-size:.7rem;
  font-weight:850;
  cursor:pointer;
}

.support-share-actions button:hover{
  border-color:rgba(10,127,131,.42);
  box-shadow:0 6px 16px rgba(23,50,74,.06);
}

.share-symbol{
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#e8f6f3;
  font-size:.67rem;
  font-weight:900;
}

.support-share-status{
  min-height:19px;
  margin:7px 0 0;
  color:#667b87;
  font-size:.7rem;
}


/* jediný box v online části je skutečný náhled příspěvku */

.support-share-preview{
  grid-column:4;
  padding:12px;
  border:1px solid #dbe5e3;
  border-radius:15px;
  background:#fff;
  box-shadow:0 9px 26px rgba(23,50,74,.06);
}

.preview-label{
  display:block;
  margin-bottom:7px;
  color:#29485b;
  font-size:.63rem;
  font-weight:850;
}

.support-preview-image{
  position:relative;
  height:108px;
  overflow:hidden;
  border-radius:8px;
  background:#e9f5f1;
}

.support-preview-image > img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.preview-fallback{
  position:absolute;
  inset:0;
  overflow:hidden;
  background:#e7f5f1;
}

.preview-sun{
  position:absolute;
  right:15px;
  top:12px;
  width:42px;
  height:42px;
  border-radius:50%;
  background:#fff0bd;
}

.preview-ground{
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:16px;
  background:#0a7f83;
}

.preview-person{
  position:absolute;
  bottom:12px;
  width:28px;
  border-radius:14px 14px 4px 4px;
}

.preview-person::before{
  content:"";
  position:absolute;
  left:4px;
  top:-18px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#fff6e3;
}

.person-one{
  left:31px;
  height:52px;
  background:#0a7f83;
}

.person-two{
  left:67px;
  height:61px;
  background:#f2bd3f;
}

.person-three{
  left:104px;
  height:47px;
  background:#17324a;
}

.support-share-preview > strong{
  display:block;
  margin-top:9px;
  color:#17324a;
  font-size:.69rem;
  line-height:1.3;
}

.support-share-preview > span:not(.preview-label){
  display:block;
  margin-top:3px;
  color:#29485b;
  font-size:.61rem;
}

.support-share-preview > small{
  display:block;
  margin-top:5px;
  color:#84949c;
  font-size:.55rem;
}


/* ============================================================
   DALŠÍ MOŽNOSTI
   ============================================================ */

.support-more{
  padding:52px 0 80px;
  background:#fffdfa;
}

.support-more-container{
  width:min(1100px,calc(100% - 40px));
}

.support-more-heading{
  margin-bottom:24px;
  text-align:center;
}

.support-more-heading h2{
  margin:6px 0 0;
  color:#17324a;
  font-size:clamp(1.85rem,3vw,2.35rem);
  letter-spacing:-.04em;
}

.support-more-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:15px;
}

.support-more-card{
  display:grid;
  grid-template-columns:75px 1fr;
  gap:15px;
  align-items:center;
  min-height:126px;
  padding:16px;
  border:1px solid #dbe5e3;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px rgba(23,50,74,.05);
}

.support-more-card h3{
  margin:0 0 5px;
  color:#17324a;
  font-size:.88rem;
  line-height:1.25;
}

.support-more-card p{
  margin:0;
  color:#667b87;
  font-size:.71rem;
  line-height:1.5;
}


.support-neighbor-mini{
  position:relative;
  width:70px;
  height:70px;
  overflow:hidden;
  border-radius:50%;
  background:#e8f6f3;
}

.support-neighbor-mini > img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.neighbor-fallback{
  position:absolute;
  inset:0;
}

.neighbor-person{
  position:absolute;
  bottom:8px;
  width:23px;
  height:38px;
  border-radius:14px 14px 5px 5px;
}

.neighbor-person::before{
  content:"";
  position:absolute;
  left:3px;
  top:-17px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#fff5dd;
}

.neighbor-person.n1{
  left:13px;
  background:#0a7f83;
}

.neighbor-person.n2{
  right:11px;
  height:34px;
  background:#17324a;
}

.neighbor-bubble{
  position:absolute;
  left:24px;
  top:13px;
  padding:2px 7px 5px;
  border-radius:9px;
  background:#fff;
  color:#0a7f83;
  font-size:.55rem;
  font-weight:900;
}


.support-more-icon{
  width:66px;
  height:66px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff2c9;
  color:#0a7f83;
  font-size:1.25rem;
  font-weight:900;
}

.qr-icon{
  background:#fff0bd;
}

.mini-fake-qr{
  width:39px;
  height:39px;
  background:
    linear-gradient(90deg,#17324a 6px,transparent 6px) 0 0/13px 13px,
    linear-gradient(#17324a 6px,transparent 6px) 0 0/13px 13px,
    #fff;
  border:4px solid #fff;
}


.support-final{
  display:grid;
  grid-template-columns:64px 1fr auto;
  gap:22px;
  align-items:center;
  margin-top:29px;
  padding:25px 31px;
  border-radius:19px;
  background:linear-gradient(135deg,#08767d,#16a39f);
  color:#fff;
  box-shadow:0 15px 34px rgba(10,127,131,.15);
}

.support-final-heart{
  color:#f2bd3f;
  font-size:3rem;
  line-height:1;
}

.support-final h2{
  margin:0;
  color:#fff;
  font-size:1.35rem;
}

.support-final p{
  margin:4px 0 0;
  color:rgba(255,255,255,.79);
  font-size:.78rem;
}

.support-final-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:45px;
  padding:0 18px;
  border-radius:9px;
  background:#fff;
  color:#0a7f83;
  font-size:.78rem;
  font-weight:900;
  text-decoration:none;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media(max-width:1080px){

  .support-hero-layout{
    grid-template-columns:minmax(0,.92fr) minmax(400px,1.08fr);
    gap:38px;
  }

  .support-flow-step{
    grid-template-columns:44px minmax(260px,.9fr) minmax(370px,1.1fr);
    gap:0 31px;
  }

  .support-step-two{
    grid-template-columns:44px minmax(370px,1.08fr) minmax(260px,.92fr);
  }

  .support-step-online{
    grid-template-columns:44px minmax(250px,.78fr) minmax(230px,.72fr) minmax(190px,.5fr);
    gap:0 25px;
  }

}


@media(max-width:820px){

  .support-hero{
    padding:45px 0 55px;
  }

  .support-hero-layout{
    grid-template-columns:1fr;
    gap:25px;
  }

  .support-hero-copy{
    text-align:center;
  }

  .support-hero-copy h1{
    margin-left:auto;
    margin-right:auto;
    font-size:clamp(3.2rem,14vw,5rem);
  }

  .support-hero-lead{
    margin-left:auto;
    margin-right:auto;
  }

  .support-hero-art,
  .support-hero-fallback,
  .support-hero-art > img{
    height:320px;
    min-height:320px;
  }


  .support-flow{
    padding-top:56px;
  }

  .support-flow-inner{
    width:calc(100% - 28px);
  }

  .support-flow-inner::before{
    left:18px;
    bottom:120px;
  }


  .support-flow-step,
  .support-step-two,
  .support-step-online{
    grid-template-columns:38px minmax(0,1fr);
    gap:0 16px;
    min-height:0;
    margin-bottom:67px;
  }

  .support-number{
    grid-column:1;
    grid-row:1;
    width:37px;
    height:37px;
    font-size:.9rem;
  }

  .support-flow-copy,
  .support-copy-right,
  .support-online-copy{
    grid-column:2;
    grid-row:1;
    padding:0;
  }

  .support-choice-panel,
  .support-material-visual,
  .support-form-shell,
  .support-social-art,
  .support-share-preview{
    grid-column:2;
    grid-row:auto;
    margin-top:22px;
  }

  .support-choice-panel{
    grid-template-columns:repeat(3,1fr);
  }

  .support-material-visual{
    min-height:280px;
  }

  .support-material-fallback{
    min-height:280px;
  }

  .support-step-three .support-flow-copy{
    padding-top:0;
  }

  .support-social-art{
    min-height:270px;
  }

  .support-social-art > img,
  .support-social-fallback{
    height:270px;
  }

  .support-share-preview{
    width:min(320px,100%);
  }


  .support-more-grid{
    grid-template-columns:1fr;
  }

  .support-final{
    grid-template-columns:52px 1fr;
  }

  .support-final-button{
    grid-column:1/-1;
    width:100%;
  }

}


@media(max-width:620px){

  .support-choice-panel{
    grid-template-columns:1fr;
  }

  .support-choice-card{
    display:grid;
    grid-template-columns:120px 1fr;
    align-items:center;
    text-align:left;
  }

  .choice-visual{
    height:100px;
  }

  .support-choice-card > strong{
    margin:0;
    padding-left:8px;
    font-size:.82rem;
  }

  .choice-fence-line{
    top:70px;
  }

  .choice-fence-post{
    top:17px;
    height:70px;
  }

  .choice-mini-poster{
    top:13px;
    width:55px;
    height:73px;
  }

  .choice-mini-poster strong{
    font-size:.51rem;
  }

  .choice-phone-body{
    width:54px;
    height:84px;
  }

  .choice-fake-qr{
    width:38px;
    height:38px;
    background-size:13px 13px,13px 13px,10px 10px;
  }

  .choice-hand{
    left:15px;
    width:48px;
    height:64px;
  }

  .choice-mobile{
    width:51px;
    height:83px;
  }


  .support-material-fallback{
    grid-template-columns:1fr;
    gap:11px;
    padding:22px;
  }

  .material-poster,
  .material-qr-card{
    justify-self:center;
  }

  .material-or{
    width:42px;
    height:42px;
  }


  .support-delivery-form{
    grid-template-columns:1fr;
  }

  .support-delivery-art{
    min-height:180px;
  }

  .support-delivery-art > img{
    height:180px;
  }

  .delivery-fallback{
    transform:scale(.82);
    transform-origin:center;
    height:175px;
  }

  .support-consent,
  .support-submit,
  .support-form-status{
    grid-column:1;
  }

  .support-more-card{
    grid-template-columns:65px 1fr;
  }

  .support-more-container{
    width:calc(100% - 28px);
  }

}


/* FINAL FIX 2026-08-19: hidden + compact delivery form */

/*
 * CSS pravidla typu display:grid/display:block nesmí přebít
 * HTML atribut hidden. Jinak se zobrazí současně img i fallback.
 */
.support-page [hidden]{
  display:none !important;
}


@media(min-width:821px){

  /*
   * Krok 3 má odpovídat původnímu návrhu:
   * nízká horizontální karta, formulář vlevo, ilustrace vpravo.
   */
  .support-step-three{
    min-height:245px;
    align-items:center;
  }

  .support-step-three .support-flow-copy{
    padding-top:0;
  }

  .support-form-shell{
    align-self:center;
  }

  .support-delivery-form{
    grid-template-columns:minmax(0,1fr) 135px;
    gap:10px 16px;
    padding:17px 18px 15px;
  }

  .support-form-fields{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px 10px;
    align-content:start;
  }

  .support-form-fields label{
    gap:4px;
    font-size:.67rem;
  }

  .support-form-fields label > span{
    min-height:15px;
  }

  .support-form-fields input,
  .support-form-fields select,
  .support-form-fields textarea{
    padding:7px 9px;
    min-height:35px;
    font-size:.74rem;
  }

  .support-form-fields .support-note-field{
    grid-column:1/-1;
  }

  .support-form-fields textarea{
    height:42px;
    min-height:42px;
    max-height:75px;
  }


  /*
   * Ilustrace schránky už neurčuje výšku celé karty.
   */
  .support-delivery-art{
    min-height:122px;
    height:122px;
    align-self:center;
  }

  .support-delivery-art > img{
    width:100%;
    height:122px;
    object-fit:contain;
  }

  .delivery-fallback{
    width:165px;
    height:215px;
    transform:scale(.56);
    transform-origin:center center;
  }


  /*
   * Souhlas a CTA tvoří jeden kompaktní spodní řádek.
   */
  .support-consent{
    grid-column:1;
    min-height:40px;
    padding:7px 9px;
    gap:8px;
    align-self:stretch;
    font-size:.56rem;
    line-height:1.34;
  }

  .support-consent input{
    margin-top:2px;
  }

  .support-submit{
    grid-column:2;
    align-self:stretch;
    min-height:40px;
    padding:0 8px;
    font-size:.68rem;
    line-height:1.15;
  }

  .support-form-status{
    grid-column:1/-1;
    min-height:0;
    margin:0;
    font-size:.66rem;
  }

  .support-form-status:empty{
    display:none;
  }
}

/* SUPPORT FLOW V3 — CORRECT ORDER */


/* Méně vzduchu mezi hero a obsahem */
.support-hero{
  padding-bottom:34px;
}

.support-flow-v3{
  padding-top:32px;
  padding-bottom:24px;
}

.support-v3-inner{
  position:relative;
  width:min(1040px,calc(100% - 40px));
}


/* jemná společná osa */
.support-v3-inner::before{
  content:"";
  position:absolute;
  left:21px;
  top:20px;
  bottom:120px;
  width:1px;
  background:#d5e1df;
}


.support-v3-step{
  position:relative;
  display:grid;
  grid-template-columns:44px minmax(0,.9fr) minmax(390px,1.1fr);
  gap:0 38px;
  align-items:center;

  min-height:245px;
  margin-bottom:46px;
}

.support-v3-step:last-child{
  margin-bottom:20px;
}


.support-v3-copy{
  grid-column:2;
  min-width:0;
}

.support-v3-copy h2{
  margin:7px 0 13px;

  color:#17324a;

  font-size:clamp(1.9rem,3vw,2.5rem);
  line-height:1.04;
  letter-spacing:-.045em;
}

.support-v3-copy > p{
  max-width:500px;
  margin:0;

  color:#667b87;

  font-size:.9rem;
  line-height:1.62;
}


.support-v3-note{
  margin-top:13px !important;
  padding:10px 12px;

  border-radius:9px;

  background:#e8f6f3;

  color:#29485b !important;

  font-size:.78rem !important;
  line-height:1.5 !important;
}


/* ============================================================
   VOLNÉ ILUSTRACE — bez boxů
   ============================================================ */

.support-v3-art{
  grid-column:3;

  height:245px;
  min-width:0;

  display:grid;
  place-items:center;
}

.support-v3-art > img{
  width:100%;
  height:245px;

  object-fit:contain;
  display:block;
}

.support-v3-fallback{
  width:100%;
  height:245px;

  display:grid;
  place-items:center;
}

.support-v3-fallback svg{
  width:100%;
  height:100%;
  display:block;
}


/* ============================================================
   SHARE BUTTONS
   ============================================================ */

.support-v3-copy .support-share-actions{
  margin-top:15px;
}


/* ============================================================
   PLAKÁT / QR
   ============================================================ */

.support-v3-material{
  grid-column:3;

  overflow:hidden;

  border:1px solid #dbe5e3;
  border-radius:18px;

  background:#fff;

  box-shadow:0 9px 25px rgba(23,50,74,.055);
}


.support-v3-material-media{
  position:relative;

  height:205px;

  display:grid;
  place-items:center;

  overflow:hidden;

  background:
    linear-gradient(145deg,#f5faf8,#fff8e4);
}

.support-v3-material-media > img{
  width:100%;
  height:205px;

  object-fit:contain;
  display:block;
}


.support-v3-material-fallback{
  width:100%;
  height:205px;

  display:grid;
  grid-template-columns:1fr 48px 1fr;
  gap:18px;

  align-items:center;

  padding:18px 28px;
}


.v3-poster{
  justify-self:end;

  width:116px;
  height:164px;

  display:flex;
  flex-direction:column;

  padding:14px;

  border-radius:5px;

  background:
    linear-gradient(155deg,#0a7f83,#075d65);

  color:#fff;

  box-shadow:0 11px 23px rgba(23,50,74,.16);
}

.v3-poster small{
  font-size:.47rem;
  font-weight:800;
}

.v3-poster strong{
  margin:auto 0;

  font-size:.88rem;
  line-height:1.05;
}

.v3-poster span{
  color:#fff0bd;
  font-size:.43rem;
}


.v3-or{
  width:43px;
  height:43px;

  display:grid;
  place-items:center;

  border-radius:50%;

  background:#fff0bd;

  color:#17324a;

  font-size:.58rem;
  font-weight:850;
}


.v3-qr-card{
  justify-self:start;

  width:116px;
  height:164px;

  display:grid;
  place-items:center;
  align-content:center;

  gap:12px;

  border:2px solid #d8e3e1;
  border-radius:7px;

  background:#fff;
}

.v3-qr-card strong{
  color:#0a7f83;

  font-size:.56rem;
}


.v3-qr{
  width:69px;
  height:69px;

  background:
    linear-gradient(90deg,#17324a 8px,transparent 8px) 0 0/21px 21px,
    linear-gradient(#17324a 8px,transparent 8px) 0 0/21px 21px,
    linear-gradient(45deg,transparent 42%,#17324a 43% 58%,transparent 59%) 0 0/14px 14px,
    #fff;
}


.support-v3-material-actions{
  display:grid;
  grid-template-columns:1fr 1fr;

  gap:8px;

  padding:10px;
}


.support-v3-material-choice{
  display:grid;
  gap:2px;

  padding:9px 11px;

  border:1px solid #dbe5e3;
  border-radius:9px;

  background:#fff;

  color:#17324a;

  font:inherit;
  text-align:left;

  cursor:pointer;
}

.support-v3-material-choice strong{
  color:#0a7f83;

  font-size:.73rem;
}

.support-v3-material-choice span{
  color:#758992;

  font-size:.61rem;
}

.support-v3-material-choice:hover,
.support-v3-material-choice.is-active{
  border-color:rgba(10,127,131,.4);

  background:#f3faf8;
}


/* ============================================================
   FORMULÁŘ
   ============================================================ */

.support-v3-step-form{
  align-items:center;
  min-height:220px;
}


.support-v3-form-shell{
  grid-column:3;

  overflow:hidden;

  border:1px solid #dbe5e3;
  border-radius:17px;

  background:#fff;

  box-shadow:0 9px 25px rgba(23,50,74,.055);
}


.support-v3-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) 122px;

  gap:9px 15px;

  padding:15px 16px 13px;
}


.support-v3-fields{
  grid-column:1;

  display:grid;
  grid-template-columns:1fr 1fr;

  gap:8px 9px;
}


.support-v3-fields label{
  display:grid;
  gap:4px;

  color:#17324a;

  font-size:.64rem;
  font-weight:850;
}


.support-v3-fields label > span{
  display:flex;
  justify-content:space-between;
  gap:8px;
}


.support-v3-fields small{
  color:#8a9aa2;

  font-size:.54rem;
  font-weight:650;
}


.support-v3-fields input,
.support-v3-fields textarea{
  width:100%;

  min-height:32px;

  padding:6px 8px;

  border:1px solid #d7e2e0;
  border-radius:6px;

  background:#fff;

  color:#17324a;

  font:inherit;
  font-size:.68rem;

  outline:none;
}


.support-v3-fields input:focus,
.support-v3-fields textarea:focus{
  border-color:#0a7f83;

  box-shadow:0 0 0 3px rgba(10,127,131,.07);
}


.support-v3-note-field{
  grid-column:1/-1;
}


.support-v3-fields textarea{
  height:39px;
  min-height:39px;

  resize:vertical;
}


/*
 * Ilustrace má vlastní pevný sloupec.
 * Nemůže fyzicky zasáhnout do tlačítka.
 */
.support-v3-delivery-art{
  grid-column:2;
  grid-row:1;

  width:122px;
  height:112px;

  display:grid;
  place-items:center;

  align-self:center;
}


.support-v3-delivery-art > img{
  max-width:122px;
  width:100%;

  height:112px;

  object-fit:contain;
}


.support-v3-delivery-fallback{
  width:122px;
  height:112px;

  display:grid;
  place-items:center;
}

.support-v3-delivery-fallback svg{
  max-width:118px;
  max-height:108px;

  width:100%;
  height:100%;
}


/* spodní řádek */
.support-v3-consent{
  grid-column:1;
  grid-row:2;

  min-height:38px;

  padding:6px 8px;

  font-size:.53rem;
  line-height:1.33;
}


.support-v3-submit{
  grid-column:2;
  grid-row:2;

  width:100%;
  min-height:38px;

  padding:0 7px;

  justify-content:center;

  font-size:.63rem;
  line-height:1.1;
}


.support-v3-status{
  grid-column:1/-1;

  min-height:0;
  margin:0;

  font-size:.62rem;
}

.support-v3-status:empty{
  display:none;
}


/* ============================================================
   Po změně pořadí už mezi bloky nechceme obří mezery.
   ============================================================ */

.support-more{
  padding-top:32px;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media(max-width:900px){

  .support-v3-step{
    grid-template-columns:40px minmax(0,1fr);
    gap:0 18px;

    margin-bottom:54px;
  }

  .support-v3-inner::before{
    left:19px;
  }

  .support-v3-copy{
    grid-column:2;
    grid-row:1;
  }

  .support-v3-art,
  .support-v3-material,
  .support-v3-form-shell{
    grid-column:2;
    grid-row:auto;

    margin-top:18px;
  }

  .support-v3-art{
    height:235px;
  }

  .support-v3-art > img,
  .support-v3-fallback{
    height:235px;
  }

}


@media(max-width:620px){

  .support-hero{
    padding-bottom:20px;
  }

  .support-flow-v3{
    padding-top:22px;
  }

  .support-v3-inner{
    width:calc(100% - 28px);
  }

  .support-v3-step{
    grid-template-columns:37px minmax(0,1fr);
    gap:0 12px;

    margin-bottom:45px;
  }

  .support-v3-material-fallback{
    grid-template-columns:1fr;
    gap:8px;

    height:auto;
    min-height:350px;
  }

  .v3-poster,
  .v3-qr-card{
    justify-self:center;
  }

  .support-v3-material-actions{
    grid-template-columns:1fr;
  }


  .support-v3-form{
    grid-template-columns:1fr;
  }

  .support-v3-fields{
    grid-column:1;
  }

  .support-v3-delivery-art{
    grid-column:1;
    grid-row:auto;

    justify-self:center;

    height:95px;
  }

  .support-v3-consent{
    grid-column:1;
    grid-row:auto;
  }

  .support-v3-submit{
    grid-column:1;
    grid-row:auto;

    min-height:43px;
  }

}

/* ============================================================
   UNIFIED SUPPORT-MORE ICONS
   ============================================================ */

.support-more-icon.support-more-vector{
  width:66px;
  height:66px;

  display:grid;
  place-items:center;

  border-radius:50%;

  background:#fff2c9;
  color:#0a7f83;
}

.support-more-vector svg{
  width:31px;
  height:31px;

  fill:none;
  stroke:currentColor;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.support-more-vector .icon-dot{
  fill:currentColor;
  stroke:none;
}
