:root{
  --page-blue:#328bff;
  --page-blue-2:#58b9ff;
  --page-ink:#f7f9fb;
  --page-muted:#aeb8c2;
  --page-panel:#15191d;
  --page-panel-2:#1b2126;
  --page-line:rgba(255,255,255,.11);
}

body.service-subpage{
  background:#080909;
  color:var(--page-ink);
}

body.service-subpage > .categories,
body.page-repair > .shop-section,
body.page-repair > .config-section,
body.page-sell > .shop-section,
body.page-sell > .repair-section,
body.page-shop > .config-section,
body.page-shop > .repair-section{
  display:none;
}

body.service-subpage .nav-link-active{
  color:#fff;
}

body.service-subpage .nav-link-active::after{
  transform:scaleX(1);
}

body.service-subpage .hero{
  min-height:auto;
  padding:82px 0 66px;
  border-bottom:1px solid rgba(255,255,255,.08);
}

body.service-subpage .hero-grid{
  grid-template-columns:minmax(0,1.14fr) minmax(380px,.86fr);
  align-items:center;
  gap:72px;
}

body.service-subpage .hero h1{
  max-width:760px;
  font-size:clamp(46px,5.1vw,72px);
  line-height:.98;
}

body.service-subpage .hero p.lead{
  max-width:650px;
  margin-top:22px;
  font-size:17px;
  line-height:1.65;
}

.subpage-kicker{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:20px;
  color:#a9d8ff;
  font:800 11px/1 var(--font-display);
  letter-spacing:1.6px;
  text-transform:uppercase;
}

.subpage-kicker::before{
  content:"";
  width:28px;
  height:2px;
  background:var(--page-blue-2);
  box-shadow:0 0 14px rgba(88,185,255,.5);
}

body.service-subpage .hero-cta-row{
  grid-template-columns:minmax(230px,310px) minmax(190px,240px);
  max-width:570px;
  margin-top:30px;
}

body.service-subpage .hero-cta-row .btn-primary,
body.service-subpage .hero-cta-row .btn-ghost{
  min-height:58px;
}

body.service-subpage .hero-cta-row .btn-ghost{
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.04);
}

body.service-subpage .hero-stats{
  max-width:680px;
  margin-top:34px;
}

body.service-subpage .hero-stat strong{
  font-size:22px;
}

body.service-subpage .hero-stat > span{
  margin-top:5px;
}

body.service-subpage .ticker{
  min-height:0;
  padding:30px;
  border-radius:18px;
  background:
    radial-gradient(circle at 100% 0%,rgba(50,139,255,.16),transparent 36%),
    linear-gradient(155deg,#20252a,#111313 72%);
}

body.service-subpage .ticker-process-title{
  font-size:clamp(30px,3.3vw,44px);
  line-height:1.02;
  max-width:430px;
}

body.service-subpage .ticker-note{
  max-width:450px;
  margin-top:15px;
}

body.service-subpage .hero-process{
  margin-top:24px;
}

body.service-subpage .proof-actions{
  margin-top:24px;
}

body.service-subpage .proof-call{
  min-height:48px;
}

body.service-subpage .steps-section{
  padding:72px 0;
  background:
    radial-gradient(circle at 84% 8%,rgba(50,139,255,.08),transparent 30%),
    #0d0f10;
}

body.service-subpage .steps-section .section-head{
  max-width:780px;
  margin-bottom:30px;
}

body.service-subpage .steps{
  gap:14px;
}

body.service-subpage .step{
  min-height:220px;
  padding:26px;
  border:1px solid var(--page-line);
  border-radius:8px;
  background:linear-gradient(155deg,rgba(31,37,42,.96),rgba(16,17,17,.98));
}

body.service-subpage .step .num{
  color:var(--page-blue-2);
}

body.service-subpage .step h3{
  margin-top:28px;
  font-size:21px;
}

body.service-subpage .step p{
  max-width:340px;
}

.assurance-panel{
  display:grid;
  grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);
  gap:34px;
  align-items:start;
  margin-top:18px;
  padding:30px;
  border:1px solid var(--page-line);
  border-radius:8px;
  background:
    radial-gradient(circle at 0 0,rgba(50,139,255,.13),transparent 34%),
    #15191c;
}

.assurance-intro .subpage-kicker{
  margin-bottom:13px;
}

.assurance-intro h3{
  margin:0;
  font-size:clamp(25px,3vw,35px);
  line-height:1.08;
}

.assurance-intro p{
  margin:14px 0 0;
  color:var(--page-muted);
  font-size:14px;
  line-height:1.6;
}

.assurance-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}

.assurance-item{
  min-width:0;
  padding:17px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:8px;
  background:rgba(255,255,255,.035);
}

.assurance-item svg{
  width:22px;
  height:22px;
  color:var(--page-blue-2);
}

.assurance-item strong{
  display:block;
  margin-top:16px;
  font-size:14px;
  line-height:1.3;
}

.assurance-item span{
  display:block;
  margin-top:6px;
  color:var(--page-muted);
  font-size:12px;
  line-height:1.5;
}

body.service-subpage .config-section,
body.service-subpage .repair-section,
body.service-subpage .shop-section{
  scroll-margin-top:74px;
}

body.page-repair .repair-section,
body.page-sell .config-section,
body.page-shop .shop-section{
  padding-top:74px;
}

body.service-subpage .trust{
  border-top:1px solid rgba(255,255,255,.09);
}

body.service-subpage .reviews .section-head h2{
  max-width:720px;
}

body.service-subpage .faq{
  max-width:900px;
}

body.service-subpage .faq-item{
  border:1px solid rgba(255,255,255,.09);
  border-bottom:0;
  background:rgba(255,255,255,.025);
}

body.service-subpage .faq-item:first-child{
  border-radius:8px 8px 0 0;
}

body.service-subpage .faq-item:last-child{
  border-bottom:1px solid rgba(255,255,255,.09);
  border-radius:0 0 8px 8px;
}

body.service-subpage .faq-q{
  padding:20px;
}

body.service-subpage .faq-a p{
  padding:0 20px 20px;
}

/* Sklep */
body.page-shop .shop-section{
  background:
    radial-gradient(circle at 12% 2%,rgba(50,139,255,.08),transparent 28%),
    #0b0d0e;
}

body.page-shop .shop-head{
  align-items:center;
  margin-bottom:24px;
}

body.page-shop .shop-head-copy{
  max-width:none;
}

body.page-shop .shop-head-copy h2{
  max-width:none;
  margin-bottom:0;
}

body.page-shop .shop-live-pill{
  display:none;
}

body.page-shop .shop-status{
  display:inline-flex;
  margin:0 0 26px;
  padding:7px 11px;
  border:1px solid rgba(88,185,255,.22);
  border-radius:999px;
  background:rgba(50,139,255,.07);
  color:#a9d8ff;
  font:800 11px/1 var(--font-display);
  letter-spacing:.4px;
}

body.page-shop .shop-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

body.page-shop .shop-card{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:#151719;
  box-shadow:0 18px 48px rgba(0,0,0,.28);
}

body.page-shop .shop-card:hover{
  transform:translateY(-5px);
  border-color:rgba(88,185,255,.46);
  box-shadow:0 28px 68px rgba(0,0,0,.4);
}

body.page-shop .shop-photo{
  aspect-ratio:3/4;
  padding:0;
  background:#eff1f3;
  border-bottom:1px solid rgba(0,0,0,.1);
}

body.page-shop .shop-photo img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  background:#eff1f3;
}

body.page-shop .shop-photo-empty{
  background:#eff1f3;
  color:#1d75e9;
}

body.page-shop .shop-badge,
body.page-shop .shop-photo-count{
  top:12px;
  padding:7px 10px;
  background:rgba(8,10,12,.82);
  backdrop-filter:blur(12px);
}

body.page-shop .shop-badge{
  left:12px;
  right:auto;
  z-index:5;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:max-content;
  max-width:calc(100% - 24px);
  white-space:nowrap;
  overflow:visible;
}

body.page-shop .shop-photo-count{
  right:12px;
}

body.page-shop .shop-body{
  padding:18px !important;
}

body.page-shop .shop-product-heading{
  display:grid;
  gap:6px;
  margin-bottom:12px;
}

body.page-shop .shop-title{
  margin:0 !important;
  font-size:22px !important;
  line-height:1.15 !important;
  overflow-wrap:anywhere;
}

body.page-shop .shop-price{
  margin:0 !important;
  color:var(--page-blue-2);
  font-size:30px !important;
}

body.page-shop .shop-specs{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:7px !important;
  margin:0 0 18px !important;
}

body.page-shop .shop-spec{
  min-width:0;
  padding:10px 11px !important;
  border-radius:7px;
  background:#1d2226;
}

body.page-shop .shop-spec-wide{
  grid-column:1 / -1 !important;
}

body.page-shop .shop-spec span{
  color:#80909b;
  font-size:9px !important;
}

body.page-shop .shop-spec b{
  display:block;
  color:#f5f7f8;
  font-size:12.5px !important;
  line-height:1.25;
  overflow-wrap:anywhere;
  white-space:normal;
}

body.page-shop .shop-actions{
  margin-top:2px;
}

body.page-shop .shop-contact{
  min-height:48px !important;
  border-radius:7px;
  background:linear-gradient(135deg,#328bff,#1f74e0);
  font-family:var(--font-body);
  font-size:14px;
}

body.page-shop .shop-order-modal .repair-modal-shell{
  border-color:rgba(88,185,255,.28);
}

body.page-shop .shop-detail-photo{
  flex:0 0 auto;
  background:#eff1f3;
  border-radius:8px;
}

body.page-shop .shop-detail-photo img{
  object-fit:contain;
  background:#eff1f3;
}

body.page-shop .shop-thumb{
  background:#eff1f3;
  border-radius:6px;
}

body.page-shop .shop-thumb img{
  object-fit:contain;
  background:#eff1f3;
}

body.page-shop .shop-empty{
  border-radius:8px;
  padding:36px;
}

@media (max-width:1050px){
  body.service-subpage .hero-grid{
    grid-template-columns:1fr;
    gap:36px;
  }

  body.service-subpage .hero h1{
    max-width:820px;
  }

  body.service-subpage .ticker{
    max-width:760px;
  }

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

  body.page-shop .shop-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  body.service-subpage .hero{
    padding:48px 0 44px;
  }

  body.service-subpage .hero-grid{
    gap:28px;
  }

  body.service-subpage .hero h1{
    font-size:clamp(38px,11vw,52px);
    line-height:1.02;
  }

  body.service-subpage .hero p.lead{
    margin-top:17px;
    font-size:15px;
    line-height:1.58;
  }

  body.service-subpage .hero-cta-row{
    grid-template-columns:1fr;
    max-width:none;
    gap:10px;
  }

  body.service-subpage .hero-stats{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    margin-top:28px;
  }

  body.service-subpage .hero-stat{
    min-width:0;
    padding-right:10px;
  }

  body.service-subpage .hero-stat strong{
    font-size:15px;
    overflow-wrap:anywhere;
  }

  body.service-subpage .hero-stat > span{
    font-size:10px;
    white-space:normal;
  }

  body.service-subpage .ticker{
    padding:23px 18px;
    border-radius:14px;
  }

  body.service-subpage .ticker-process-title{
    font-size:31px;
  }

  body.service-subpage .steps-section{
    padding:52px 0;
  }

  body.service-subpage .step{
    min-height:0;
    padding:22px;
  }

  body.service-subpage .step h3{
    margin-top:20px;
  }

  .assurance-panel{
    padding:22px;
  }

  .assurance-grid{
    grid-template-columns:1fr;
  }

  .assurance-item{
    display:grid;
    grid-template-columns:28px 1fr;
    column-gap:12px;
    align-items:start;
  }

  .assurance-item svg{
    grid-row:1 / span 2;
  }

  .assurance-item strong{
    margin-top:0;
  }

  .assurance-item span{
    margin-top:3px;
  }

  body.page-repair .repair-section,
  body.page-sell .config-section,
  body.page-shop .shop-section{
    padding-top:52px;
  }

  body.page-shop .shop-grid{
    grid-template-columns:1fr;
  }

  body.page-shop .shop-card{
    max-width:520px;
    margin-inline:auto;
  }

  body.page-shop .shop-order-grid{
    flex:0 0 auto;
  }

  body.page-shop .shop-detail-card{
    min-height:max-content;
  }

  body.page-shop .shop-detail-photo{
    width:min(100%,280px);
  }

  body.page-shop .shop-detail-info{
    flex:0 0 auto;
    overflow:visible;
  }

  body.page-shop .shop-body{
    padding:17px;
  }
}

@media (max-width:390px){
  body.service-subpage .hero-stat strong{
    font-size:13.5px;
  }

  body.service-subpage .hero-stat > span{
    font-size:9px;
  }
}

/* Distinct service-page mastheads */
body.service-subpage > .reviews,
body.service-subpage > .steps-section{
  display:block !important;
}

body.service-subpage > .reviews{
  padding:72px 0 78px;
  background:#0b0d0f;
}

.service-masthead{
  padding:52px 0 44px;
  border-bottom:1px solid rgba(255,255,255,.09);
  background:#090a0b;
}

.masthead-kicker{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:22px;
  color:#8fcaff;
  font:800 11px/1 var(--font-display);
  letter-spacing:1.5px;
}

.masthead-kicker > span{
  width:28px;
  height:2px;
  background:var(--page-blue-2);
}

.masthead-copy h1{
  max-width:800px;
  margin:0;
  color:#fff;
  font-size:54px;
  line-height:1.02;
  letter-spacing:0;
}

.masthead-copy h1 span{
  color:var(--page-blue-2);
}

.masthead-copy p{
  max-width:690px;
  margin:20px 0 0;
  color:#b9c3cb;
  font-size:16px;
  line-height:1.62;
}

.masthead-actions{
  display:flex;
  align-items:center;
  gap:16px;
  margin-top:30px;
}

.masthead-proof-group{
  display:inline-flex;
  align-items:stretch;
  gap:10px;
}

.masthead-primary{
  display:inline-flex;
  min-height:50px;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border-radius:7px;
  background:#2f86f6;
  color:#fff;
  font-weight:800;
  text-decoration:none;
  box-shadow:0 14px 32px rgba(47,134,246,.2);
}

.masthead-review-proof{
  display:inline-flex;
  min-height:50px;
  align-items:center;
  gap:12px;
  padding:8px 16px;
  border:1px solid rgba(255,189,63,.3);
  border-radius:7px;
  background:linear-gradient(145deg,rgba(255,189,63,.08),rgba(17,20,22,.98));
  color:#fff;
  text-decoration:none;
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
}

.masthead-review-proof:hover{
  border-color:rgba(255,189,63,.72);
  background:linear-gradient(145deg,rgba(255,189,63,.15),rgba(17,20,22,.98));
  box-shadow:0 10px 26px rgba(255,174,40,.09);
  transform:translateY(-1px);
}

.masthead-review-proof > strong{
  color:#ffbd3f;
  font-size:17px;
  letter-spacing:1px;
}

.masthead-review-proof > span{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.masthead-review-proof b{
  font-size:12px;
}

.masthead-review-proof small{
  color:#8f9ba4;
  font-size:10px;
}

.masthead-facebook-proof{
  display:inline-flex;
  min-height:50px;
  align-items:center;
  gap:10px;
  padding:8px 14px 8px 10px;
  border:1px solid rgba(67,143,255,.34);
  border-radius:8px;
  background:linear-gradient(145deg,rgba(24,119,242,.13),rgba(17,20,22,.98));
  color:#fff;
  text-decoration:none;
  transition:border-color .18s ease,background .18s ease,transform .18s ease;
}

.masthead-facebook-proof:hover{
  border-color:rgba(74,151,255,.72);
  background:linear-gradient(145deg,rgba(24,119,242,.2),rgba(17,20,22,.98));
  transform:translateY(-1px);
}

.fb-proof-icon{
  display:flex;
  width:31px;
  height:31px;
  flex:0 0 31px;
  align-items:flex-end;
  justify-content:center;
  overflow:hidden;
  border-radius:50%;
  background:#1877f2;
  color:#fff;
  font:900 27px/27px Arial,sans-serif;
  letter-spacing:0;
  box-shadow:0 0 0 4px rgba(24,119,242,.1);
}

.masthead-facebook-proof > span:last-child{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:2px;
}

.masthead-facebook-proof b{
  white-space:nowrap;
  font-size:12px;
}

.masthead-facebook-proof small{
  color:#95a4b1;
  font-size:10px;
}

.masthead-benefits{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:0;
}

.subpage-benefits-section{
  padding:30px 0 34px;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
  background:#0b0d0f;
}

.subpage-benefits-section .masthead-benefits{
  margin-top:0;
}

.masthead-benefit{
  display:flex;
  min-width:0;
  min-height:72px;
  align-items:center;
  gap:11px;
  padding:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  background:linear-gradient(145deg,rgba(27,32,36,.94),rgba(16,19,21,.98));
  transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
}

.masthead-benefit:hover{
  border-color:rgba(92,176,255,.36);
  background:linear-gradient(145deg,rgba(32,39,44,.98),rgba(18,22,24,.98));
  box-shadow:0 12px 28px rgba(0,0,0,.2);
  transform:translateY(-2px);
}

.masthead-benefit-icon{
  display:flex;
  width:36px;
  height:36px;
  flex:0 0 36px;
  align-items:center;
  justify-content:center;
  border:1px solid currentColor;
  border-radius:8px;
  background:color-mix(in srgb,currentColor 12%,transparent);
}

.masthead-benefit-icon svg{
  width:18px;
  height:18px;
}

.masthead-benefit > span:last-child{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:4px;
}

.masthead-benefit b{
  color:#fff;
  font-size:11px;
  line-height:1.2;
}

.masthead-benefit small{
  color:#aeb9c1;
  font-size:9.5px;
  line-height:1.35;
}

.masthead-benefit.tone-blue .masthead-benefit-icon{color:#49b7ff}
.masthead-benefit.tone-green .masthead-benefit-icon{color:#4be18b}
.masthead-benefit.tone-violet .masthead-benefit-icon{color:#9f83ff}
.masthead-benefit.tone-amber .masthead-benefit-icon{color:#f1a944}

.repair-masthead-grid{
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(440px,.82fr);
  gap:64px;
  align-items:end;
}

.repair-route{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-top:1px solid rgba(255,255,255,.13);
  border-bottom:1px solid rgba(255,255,255,.13);
}

.repair-route > div{
  min-width:0;
  padding:18px 14px;
}

.repair-route > div + div{
  border-left:1px solid rgba(255,255,255,.1);
}

.repair-route span,
.sell-progress-preview > span,
.sell-progress-preview > b{
  color:var(--page-blue-2);
  font:800 10px/1 var(--font-display);
  letter-spacing:1px;
}

.repair-route b,
.repair-route small{
  display:block;
}

.repair-route b{
  margin-top:10px;
  font-size:13px;
}

.repair-route small{
  margin-top:5px;
  color:#89959e;
  font-size:10.5px;
  line-height:1.35;
}

.sell-masthead-top{
  display:grid;
  grid-template-columns:minmax(0,1fr) 210px;
  gap:64px;
  align-items:end;
}

.sell-masthead-value{
  padding:6px 0 7px 28px;
  border-left:1px solid rgba(255,255,255,.16);
}

.sell-masthead-value strong,
.sell-masthead-value span,
.sell-masthead-value small{
  display:block;
}

.sell-masthead-value strong{
  color:var(--page-blue-2);
  font:800 42px/1 var(--font-display);
}

.sell-masthead-value span{
  margin-top:9px;
  color:#fff;
  font-weight:800;
}

.sell-masthead-value small{
  margin-top:5px;
  color:#89959e;
}

.sell-progress-preview{
  display:grid;
  grid-template-columns:54px minmax(0,1fr) 62px;
  gap:15px;
  align-items:center;
  margin-top:30px;
  padding:15px 0;
  border-top:1px solid rgba(255,255,255,.13);
  border-bottom:1px solid rgba(255,255,255,.13);
}

.sell-progress-preview > div{
  display:grid;
  grid-template-columns:repeat(10,minmax(0,1fr));
  gap:6px;
}

.sell-progress-preview i{
  display:flex;
  min-height:26px;
  align-items:center;
  justify-content:center;
  border-radius:5px;
  background:#151b20;
  color:#7891a4;
  font:700 10px/1 var(--font-display);
  font-style:normal;
  transition:background .2s ease,color .2s ease,box-shadow .2s ease,transform .2s ease;
}

.sell-progress-preview i.is-done{
  background:#173554;
  color:#73beff;
}

.sell-progress-preview i.is-active{
  background:linear-gradient(135deg,#2578dd,#45b7ff);
  color:#fff;
  box-shadow:0 0 0 3px rgba(69,183,255,.14),0 8px 18px rgba(33,118,214,.18);
  transform:translateY(-1px);
}

.shop-masthead-grid{
  display:block;
}

body.page-shop .shop-free-delivery-hero{
  display:inline-flex;
  align-items:center;
  gap:12px;
  margin-top:24px;
  padding:11px 14px 11px 11px;
  border:1px solid rgba(84,223,148,.34);
  border-radius:8px;
  background:linear-gradient(135deg,rgba(84,223,148,.13),rgba(50,139,255,.07));
  box-shadow:0 14px 32px rgba(0,0,0,.2);
}

body.page-shop .shop-free-delivery-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:7px;
  background:rgba(84,223,148,.14);
  color:#54df94;
}

body.page-shop .shop-free-delivery-icon svg{
  width:21px;
  height:21px;
}

body.page-shop .shop-free-delivery-hero > span:last-child{
  display:grid;
  gap:3px;
}

body.page-shop .shop-free-delivery-hero strong{
  color:#fff;
  font-size:14px;
}

body.page-shop .shop-free-delivery-hero small{
  color:#aebdc6;
  font-size:11.5px;
}

body.page-shop .shop-head-delivery{
  margin:10px 0 0;
  color:#aab7c0;
  font-size:14px;
}

body.page-shop .shop-free-delivery-card{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0 0 16px;
  padding:7px 10px;
  border:1px solid rgba(84,223,148,.28);
  border-radius:6px;
  background:rgba(84,223,148,.08);
  color:#72e5a6;
  font:800 11px/1 var(--font-display);
  letter-spacing:.25px;
}

body.page-shop .shop-free-delivery-card svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
}

.masthead-live{
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#91a0aa;
  font-size:12px;
}

.masthead-live i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#54df94;
  box-shadow:0 0 0 5px rgba(84,223,148,.1);
}

/* Core tools begin immediately after their dedicated masthead */
body.page-repair .repair-section,
body.page-sell .config-section,
body.page-shop .shop-section{
  padding-top:52px;
}

body.page-sell .config-section > .wrap > .section-head{
  display:none;
}

body.page-repair .repair-panel:not(.ready){
  display:none;
}

body.page-repair .repair-empty{
  padding:34px 24px;
}

/* Product photography: full frame in the original resolution */
body.page-shop .shop-photo{
  aspect-ratio:auto;
  isolation:isolate;
  background:#0f1214;
}

body.page-shop .shop-photo.has-photo{
  min-height:0;
  aspect-ratio:3/4;
}

body.page-shop .shop-photo-backdrop{
  position:absolute;
  z-index:0;
  inset:-14%;
  width:128%;
  height:128%;
  object-fit:cover;
  filter:blur(22px) saturate(.75) brightness(.58);
  transform:scale(1.04);
}

body.page-shop .shop-photo .shop-photo-main{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  background:transparent;
  image-rendering:auto;
}

body.page-shop .shop-photo.is-empty{
  aspect-ratio:3/4;
}

/* Shop details and reservation form */
body.page-shop .shop-order-modal .repair-modal-shell{
  width:min(1180px,calc(100vw - 28px));
  height:auto;
  max-height:calc(100dvh - 28px);
  overflow:auto;
}

body.page-shop .shop-order-grid{
  grid-template-columns:minmax(0,.9fr) minmax(430px,1.1fr);
  align-items:start;
  flex:1 1 auto;
  min-height:0;
  overflow-x:hidden;
  overflow-y:auto;
  scrollbar-gutter:stable;
  overscroll-behavior:contain;
}

body.page-shop .shop-detail-card,
body.page-shop .shop-order-form-card{
  min-width:0;
  min-height:0;
  align-self:start;
}

body.page-shop .shop-detail-card{
  overflow:hidden;
}

body.page-shop .shop-detail-photo{
  position:relative;
  isolation:isolate;
  width:100%;
  max-width:none;
  height:390px;
  aspect-ratio:auto;
  margin:0;
  border:0;
  border-radius:0;
  background:#0f1214;
}

body.page-shop .shop-detail-photo .shop-photo-backdrop{
  position:absolute;
  z-index:0;
  inset:-14%;
  width:128%;
  height:128%;
  object-fit:cover;
  filter:blur(24px) saturate(.78) brightness(.56);
  transform:scale(1.04);
}

body.page-shop .shop-detail-photo .shop-photo-main{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  background:transparent;
  image-rendering:auto;
}

body.page-shop .shop-detail-info{
  flex:0 0 auto;
  padding:15px 17px 18px;
  overflow:visible;
}

body.page-shop .shop-detail-desc{
  -webkit-line-clamp:3;
}

body.page-shop .shop-detail-specs{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

body.page-shop .shop-order-form-card{
  padding:22px;
  overflow:visible;
}

body.page-shop .shop-order-form-card > p{
  margin-bottom:18px;
}

body.page-shop .shop-order-form-card .contact-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:13px;
  margin:18px 0 16px;
}

body.page-shop .shop-order-form-card .form-field{
  min-width:0;
  gap:6px;
}

body.page-shop .shop-order-form-card .form-field input,
body.page-shop .shop-order-form-card .form-field textarea{
  width:100%;
  min-width:0;
  padding:12px 13px;
  font-size:14px;
}

body.page-shop .shop-order-form-card .form-field textarea{
  min-height:88px;
}

body.page-shop #shopNotes{
  resize:none;
}

body.page-shop .shop-order-form-card .terms-row{
  margin:14px 0 18px;
}

body.page-shop .shop-order-form-card .book-cta{
  min-height:48px;
}

@media (min-width:901px){
  body.page-shop .shop-order-modal .repair-modal-shell{
    height:calc(100dvh - 16px);
    max-height:calc(100dvh - 16px);
    overflow:hidden;
  }

  body.page-shop .shop-order-modal .repair-modal-top{
    padding:10px 20px;
  }

  body.page-shop .shop-order-grid{
    gap:16px;
    padding:10px 18px;
  }

  body.page-shop .shop-detail-photo{
    height:clamp(210px,30vh,290px);
  }

  body.page-shop .shop-detail-info{
    padding:12px 15px 14px;
  }

  body.page-shop .shop-detail-title{
    margin-bottom:4px;
    font-size:21px;
  }

  body.page-shop .shop-detail-price{
    margin-bottom:7px;
    font-size:28px;
  }

  body.page-shop .shop-detail-desc{
    margin-bottom:9px;
    -webkit-line-clamp:2;
  }

  body.page-shop .shop-detail-specs{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
  }

  body.page-shop .shop-detail-specs .shop-spec{
    min-height:0;
    padding:8px 9px;
  }

  body.page-shop .shop-detail-thumbs{
    margin-top:7px;
    flex-wrap:nowrap;
    overflow-x:auto;
  }

  body.page-shop .shop-order-form-card{
    padding:16px;
  }

  body.page-shop .shop-order-form-card h3{
    font-size:21px;
  }

  body.page-shop .shop-order-form-card > p{
    margin-bottom:10px;
    font-size:13px;
    line-height:1.35;
  }

  body.page-shop .shop-delivery-cards{
    gap:8px;
    margin-bottom:10px;
  }

  body.page-shop .shop-delivery-card{
    padding:10px 11px;
    border-radius:12px;
  }

  body.page-shop .shop-delivery-card b{
    margin-bottom:3px;
    font-size:13px;
  }

  body.page-shop .shop-delivery-card span{
    font-size:11.5px;
    line-height:1.3;
  }

  body.page-shop .shop-order-form-card .contact-grid{
    gap:9px;
    margin:10px 0;
  }

  body.page-shop .shop-order-form-card .form-field{
    gap:4px;
  }

  body.page-shop .shop-order-form-card .form-field input,
  body.page-shop .shop-order-form-card .form-field textarea{
    padding:9px 11px;
    font-size:13px;
  }

  body.page-shop .shop-order-form-card .form-field textarea{
    min-height:64px;
  }

  body.page-shop .shop-order-form-card .terms-row{
    margin:9px 0 11px;
  }

  body.page-shop .shop-order-form-card .book-cta{
    min-height:43px;
  }

  /* Keep payment and delivery controls stable while switching delivery method. */
  body.page-shop .shop-order-form-card{
    padding:12px 14px;
  }

  body.page-shop .shop-order-form-card > p{
    margin-bottom:7px;
  }

  body.page-shop .shop-order-form-card .shop-payment-cards{
    gap:7px;
    margin-bottom:9px;
  }

  body.page-shop .shop-order-form-card .shop-payment-card{
    display:grid;
    place-content:center;
    min-height:54px;
    padding:7px 10px;
  }

  body.page-shop .shop-order-form-card .shop-payment-card b{
    margin-bottom:2px;
  }

  body.page-shop .shop-order-form-card .shop-delivery-choice{
    margin-bottom:9px;
  }

  body.page-shop .shop-order-form-card .shop-delivery-choice h4{
    margin-bottom:6px;
  }

  body.page-shop .shop-order-form-card .shop-transfer-box{
    min-height:60px;
    padding:8px 10px;
    margin-bottom:6px;
  }

  body.page-shop .shop-order-form-card .shop-transfer-preview{
    grid-template-columns:34px minmax(0,1fr);
    gap:10px;
  }

  body.page-shop .shop-order-form-card .shop-transfer-preview-icon{
    width:34px;
    height:34px;
  }

  body.page-shop .shop-order-form-card .contact-grid{
    gap:6px;
    margin:5px 0;
  }

  body.page-shop .shop-order-form-card .form-field input,
  body.page-shop .shop-order-form-card .form-field textarea{
    padding:7px 10px;
  }

  body.page-shop .shop-order-form-card .form-field textarea{
    min-height:42px;
  }

  body.page-shop .shop-order-form-card .terms-row{
    margin:4px 0 5px;
  }

  body.page-shop .shop-order-form-card .book-cta{
    min-height:38px;
    height:38px;
    padding-block:0;
  }

  body.page-shop .shop-order-form-card:has(#shopAddressFields:not([hidden])) #shopAddressFields{
    gap:5px;
    margin:4px 0;
  }

  body.page-shop .shop-order-form-card:has(#shopAddressFields:not([hidden])){
    padding-bottom:10px;
  }

  body.page-shop .shop-order-form-card:has(#shopAddressFields:not([hidden])) #shopAddressFields input{
    padding-top:6px;
    padding-bottom:6px;
  }

  body.page-shop .shop-order-form-card:has(#shopAddressFields:not([hidden])) #shopAddressFields + .contact-grid{
    margin-top:4px;
    margin-bottom:4px;
  }

  body.page-shop .shop-order-form-card:has(#shopAddressFields:not([hidden])) #shopNotes{
    min-height:42px;
  }

  body.page-shop .shop-order-form-card:has(#shopAddressFields:not([hidden])) .terms-row{
    margin-top:2px;
    margin-bottom:3px;
  }

  body.page-shop .shop-order-form-card:has(#shopAddressFields:not([hidden])) .book-cta{
    min-height:38px;
  }
}

@media (min-width:901px){
  body.page-shop .shop-order-grid{ overflow-y:auto; }
  body.page-shop .shop-checkout-summary > div{
    min-height:29px;
    padding:4px 10px;
  }
  body.page-shop .shop-checkout-summary .shop-checkout-total{ min-height:36px; }
  body.page-shop #shopOrderStatus:empty{ display:none; }
}

@media (max-width:900px){
  .repair-masthead-grid,
  .sell-masthead-top,
  .shop-masthead-grid{
    grid-template-columns:1fr;
    gap:30px;
  }

  .repair-route{
    max-width:760px;
  }

  .sell-masthead-value{
    max-width:260px;
  }

  body.page-shop .shop-order-grid{
    display:flex;
    flex:0 0 auto;
    flex-direction:column;
    grid-template-columns:1fr;
    min-height:max-content;
    overflow:visible;
  }

  body.page-shop .shop-order-modal .repair-modal-shell{
    height:auto;
    max-height:calc(100dvh - 18px);
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
  }

  body.page-shop .shop-detail-card,
  body.page-shop .shop-order-form-card{
    flex:0 0 auto;
    width:100%;
    min-height:max-content;
    align-self:stretch;
  }

  body.page-shop .shop-detail-info{
    flex:0 0 auto;
    min-height:max-content;
    overflow:visible;
  }

  .masthead-benefits{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:760px){
  .service-masthead{
    padding:34px 0 30px;
  }

  .masthead-kicker{
    margin-bottom:16px;
    font-size:9.5px;
  }

  .masthead-copy h1{
    font-size:36px;
  }

  .masthead-copy p,
  .shop-masthead-info p{
    margin-top:15px;
    font-size:14.5px;
    line-height:1.55;
  }

  .repair-masthead-grid,
  .sell-masthead-top,
  .shop-masthead-grid{
    gap:24px;
  }

  .repair-route{
    grid-template-columns:1fr;
  }

  .repair-route > div{
    display:grid;
    grid-template-columns:34px 1fr;
    column-gap:10px;
    padding:12px 0;
  }

  .repair-route > div + div{
    border-left:0;
    border-top:1px solid rgba(255,255,255,.1);
  }

  .repair-route span{
    grid-row:1 / span 2;
  }

  .repair-route b{
    margin-top:0;
  }

  .sell-masthead-value{
    padding-left:20px;
  }

  .sell-progress-preview{
    grid-template-columns:42px minmax(0,1fr) 48px;
    gap:9px;
  }

  .sell-progress-preview > div{
    gap:3px;
  }

  .sell-progress-preview i{
    min-height:23px;
    font-size:8px;
  }

  .shop-masthead-points{
    grid-template-columns:1fr;
    gap:8px;
  }

  body.page-shop .shop-free-delivery-hero{
    width:100%;
  }

  .masthead-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    margin-top:23px;
  }

  .masthead-primary,
  .masthead-proof-group{
    width:100%;
  }

  .masthead-proof-group{
    display:grid;
    grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
    gap:8px;
  }

  .masthead-review-proof,
  .masthead-facebook-proof{
    min-width:0;
    justify-content:flex-start;
  }

  .masthead-review-proof{
    gap:8px;
    padding:7px 9px;
  }

  .masthead-review-proof > strong{
    font-size:13px;
    letter-spacing:0;
  }

  .masthead-review-proof b,
  .masthead-facebook-proof b{
    font-size:10.5px;
  }

  .masthead-review-proof small,
  .masthead-facebook-proof small{
    font-size:9px;
  }

  .masthead-facebook-proof{
    gap:8px;
    padding:7px 9px;
  }

  .fb-proof-icon{
    width:27px;
    height:27px;
    flex-basis:27px;
    font-size:24px;
    line-height:24px;
  }

  .masthead-benefits{
    gap:8px;
    margin-top:18px;
  }

  .masthead-benefit{
    min-height:78px;
    gap:9px;
    padding:10px;
  }

  .masthead-benefit-icon{
    width:32px;
    height:32px;
    flex-basis:32px;
  }

  .masthead-benefit-icon svg{
    width:16px;
    height:16px;
  }

  .masthead-benefit b{
    font-size:10px;
  }

  .masthead-benefit small{
    font-size:9px;
  }

  body.page-repair .repair-section,
  body.page-sell .config-section,
  body.page-shop .shop-section{
    padding-top:38px;
  }

  body.page-shop .shop-detail-photo{
    height:350px;
  }

  body.page-shop .shop-order-form-card{
    padding:17px;
  }

  body.page-shop .shop-order-form-card .contact-grid{
    grid-template-columns:1fr;
  }
}

/* Final subpage polish. */
body.page-shop .shop-masthead-grid{
  display:block;
  max-width:900px;
}

body.page-shop .masthead-shop .masthead-copy,
body.page-shop .masthead-shop .masthead-copy h1{
  max-width:900px;
}

body.page-shop .masthead-shop .masthead-actions{
  max-width:1040px;
}

body.page-shop .shop-grid{
  grid-template-columns:repeat(auto-fit,minmax(300px,360px)) !important;
  justify-content:center;
  gap:24px !important;
}

body.page-shop .shop-card{
  width:100%;
}

body.page-shop .shop-grid[data-item-count="1"]{
  grid-template-columns:minmax(300px,360px) !important;
  justify-content:start;
}

.shop-mobile-jump{
  display:none;
}

body.service-subpage > .reviews{
  padding-top:58px;
  padding-bottom:64px;
}

body.service-subpage > .reviews .section-head{
  margin-bottom:28px;
}

@media (max-width:900px){
  .shop-order-form-card{
    scroll-margin-top:76px;
  }

  .shop-order-modal.show .shop-mobile-jump:not([hidden]){
    position:fixed;
    z-index:1005;
    left:50%;
    bottom:max(12px,env(safe-area-inset-bottom));
    display:flex;
    width:min(330px,calc(100vw - 40px));
    min-height:46px;
    align-items:center;
    justify-content:center;
    gap:12px;
    border:1px solid rgba(111,197,255,.7);
    border-radius:7px;
    color:#fff;
    background:#287ff1;
    box-shadow:0 14px 38px rgba(0,0,0,.5);
    font-weight:900;
    transform:translateX(-50%);
  }
}

@media (max-width:760px){
  .sell-progress-preview{
    --preview-progress:10%;
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
    padding:13px 0;
  }

  .sell-progress-preview > span,
  .sell-progress-preview > b,
  .sell-progress-preview > div{
    display:none;
  }

  .sell-progress-preview::before{
    content:"Krok " attr(data-current-step) " z 10";
    color:#b9c4ce;
    font-family:var(--mono);
    font-size:10px;
    font-weight:900;
    letter-spacing:.1em;
    text-transform:uppercase;
  }

  .sell-progress-preview::after{
    content:"";
    display:block;
    width:100%;
    height:6px;
    border-radius:999px;
    background:linear-gradient(90deg,#378fff 0 var(--preview-progress),#182027 var(--preview-progress) 100%);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.06);
  }

  .sell-progress-preview[data-current-step="2"]{--preview-progress:20%}
  .sell-progress-preview[data-current-step="3"]{--preview-progress:30%}
  .sell-progress-preview[data-current-step="4"]{--preview-progress:40%}
  .sell-progress-preview[data-current-step="5"]{--preview-progress:50%}
  .sell-progress-preview[data-current-step="6"]{--preview-progress:60%}
  .sell-progress-preview[data-current-step="7"]{--preview-progress:70%}
  .sell-progress-preview[data-current-step="8"]{--preview-progress:80%}
  .sell-progress-preview[data-current-step="9"]{--preview-progress:90%}
  .sell-progress-preview[data-current-step="10"]{--preview-progress:100%}

  body.page-shop .shop-grid,
  body.page-shop .shop-grid[data-item-count="1"]{
    grid-template-columns:minmax(0,min(100%,360px)) !important;
    justify-content:center;
  }

  body.service-subpage > .reviews{
    padding-top:46px;
    padding-bottom:52px;
  }

  body.service-subpage > .reviews .section-head{
    margin-bottom:22px;
  }

  body.service-subpage .faq-section{
    padding-top:46px;
    padding-bottom:52px;
  }
}
