:root {
  --materials-navy: #092654;
  --materials-navy-deep: #061a38;
  --materials-graphite: #30343a;
  --materials-silver: #8b929a;
  --materials-line: #d7dce1;
  --materials-paper: #f5f7f9;
}

.ptb-shop-page { background: var(--materials-paper); color: #15283c; }
.ptb-shop-page main::before { display: none; }
.ptb-shop-page > header { border-bottom: 1px solid var(--materials-line); box-shadow: 0 8px 24px rgba(6,26,56,.06); }
.ptb-shop-page .announcement { background: var(--materials-navy-deep); }

.ptb-shop-page .ferka-catalogue-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
  margin: 20px 0 26px;
}
.ptb-shop-page .ferka-catalogue-pagination button,
.ptb-shop-page .ferka-catalogue-reset {
  padding: 13px 18px;
  border: 1px solid var(--materials-line);
  background: var(--materials-navy);
  color: #fff;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
}
.ptb-shop-page .ferka-catalogue-pagination button:disabled {
  opacity: .45;
  cursor: default;
}
.ptb-shop-page .ferka-catalogue-pagination strong { color: var(--materials-navy); }

.ptb-shop-hero {
  min-height: 300px;
  padding: 48px 6vw;
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(280px,.65fr);
  gap: 5vw;
  align-items: center;
  background: linear-gradient(118deg,var(--materials-navy-deep),var(--materials-navy));
  color: #fff;
  border-bottom: 8px solid var(--materials-graphite);
}
.ptb-shop-hero > div > span,
.ptb-conditions header > span { font-size: 12px; font-weight: 900; letter-spacing: 1.7px; color: #bfc6cd; }
.ptb-shop-hero h1 { margin: 14px 0; font-size: clamp(46px,6vw,82px); line-height: .88; letter-spacing: -3px; }
.ptb-shop-hero h1 strong { color: #fff; }
.ptb-shop-hero p { max-width: 720px; margin: 0; font-size: 17px; line-height: 1.6; color: #d8e0e8; }
.ptb-shop-hero > div > div { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 24px; }
.ptb-shop-hero a { padding: 14px 17px; border: 1px solid #8293a6; font-size: 14px; font-weight: 850; }
.ptb-shop-hero a:first-child { background: #fff; border-color: #fff; color: var(--materials-navy); }
.ptb-shop-hero aside { display: grid; gap: 11px; padding: 28px; background: #fff; color: #182b3b; border-top: 6px solid var(--materials-silver); }
.ptb-shop-hero aside b { font-size: 12px; letter-spacing: 1.4px; color: var(--materials-navy); }
.ptb-shop-hero aside strong { font-size: 28px; }
.ptb-shop-hero aside span { padding-top: 12px; border-top: 1px solid var(--materials-line); color: #53616d; }

.ptb-shop-page .ferka-live-catalog { margin: 0; max-width: none; padding: 46px 6vw 72px; background: #fff; color: #152b3c; border-top: 0; }
.ptb-shop-page .ferka-live-catalog > header { max-width: 1100px; }
.ptb-shop-page .ferka-live-catalog h2 { color: var(--materials-navy-deep); }
.ptb-shop-page .ferka-live-catalog header p { color: #5c6e7a; }
.ptb-shop-page .ferka-live-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; background: transparent; border: 0; }
.ptb-shop-page .ferka-live-grid article { min-height: 580px; padding: 18px; background: #fff; color: #132838; border: 1px solid var(--materials-line); border-top: 5px solid var(--materials-navy); box-shadow: 0 12px 32px rgba(6,26,56,.07); }
.ptb-shop-page .ferka-live-grid img { height: 185px; border: 1px solid #edf0f2; background: #fff; }
.ptb-shop-page .ferka-live-grid small { color: var(--materials-navy); }
.ptb-shop-page .ferka-live-grid h3 { color: #10273a; font-size: 18px; line-height: 1.28; }
.ptb-shop-page .ferka-live-grid p { color: #5d6e79; font-size: 14px; line-height: 1.55; }
.ptb-shop-page .ferka-product-price { display: grid; gap: 5px; margin-top: auto; padding-top: 14px; border-top: 1px solid #e4e8eb; }
.ptb-shop-page .ferka-product-price span { color: #647583; font-size: 13px; }
.ptb-shop-page .ferka-product-price b { color: var(--materials-navy-deep); font-size: 17px; }
.ptb-shop-page .ferka-ordering { display: grid !important; grid-template-columns: 1fr 82px; gap: 8px !important; margin: 13px 0 9px; padding: 0 !important; border: 0 !important; }
.ptb-shop-page .ferka-ordering label { display: grid; gap: 5px; }
.ptb-shop-page .ferka-ordering label span { color: #556776; font-size: 12px; font-weight: 800; }
.ptb-shop-page .ferka-ordering select,
.ptb-shop-page .ferka-ordering input { width: 100%; min-height: 43px; padding: 0 10px; border: 1px solid #abb5be; background: #fff; color: #14283a; font: inherit; }
.ptb-shop-page .ferka-add-cart { width: 100%; min-height: 45px; border: 0; background: var(--materials-navy); color: #fff; font-weight: 900; cursor: pointer; }
.ptb-shop-page .ferka-add-cart:hover { background: var(--materials-navy-deep); }
.ptb-shop-page .ferka-product-info { display: block; margin-top: 8px; padding: 10px; background: #eef1f4 !important; color: var(--materials-navy) !important; text-align: center; font-size: 13px; font-weight: 800; }

.ferka-catalogue-toolbar { margin-top: 24px; display: grid; grid-template-columns: 1.4fr 1fr auto; gap: 12px; align-items: end; }
.ferka-catalogue-toolbar label { display: grid; gap: 7px; }
.ferka-catalogue-toolbar label span { font-size: 12px; font-weight: 900; color: #526774; }
.ferka-catalogue-toolbar input,
.ferka-catalogue-toolbar select { min-height: 46px; padding: 0 14px; border: 1px solid #bdc9d0; background: #fff; color: #132838; font: inherit; }
.ferka-catalogue-toolbar strong { min-height: 46px; padding: 14px 18px; background: var(--materials-navy); color: #fff; font-size: 14px; white-space: nowrap; }

.ptb-conditions { padding: 64px 6vw; background: #edf1f4; }
.ptb-conditions header { max-width: 780px; display: block; height: auto; padding: 0; position: static; background: transparent; border: 0; box-shadow: none; }
.ptb-conditions h2 { margin: 12px 0; font-size: clamp(36px,4vw,58px); line-height: 1; color: var(--materials-navy-deep); }
.ptb-conditions header p { font-size: 16px; line-height: 1.6; color: #60727f; }
.ptb-condition-grid { margin-top: 30px; display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; }
.ptb-condition-grid article { padding: 25px; background: #fff; border-top: 4px solid var(--materials-navy); }
.ptb-condition-grid b { color: var(--materials-silver); }
.ptb-condition-grid h3 { margin: 16px 0 9px; font-size: 21px; color: var(--materials-navy-deep); }
.ptb-condition-grid p,
.ptb-legal-note { font-size: 15px; line-height: 1.6; color: #5d6f7b; }
.ptb-legal-note { margin: 20px 0 0; padding: 17px; background: #fff; border-left: 4px solid var(--materials-graphite); }

.ptb-footer { padding: 34px 6vw; display: grid; grid-template-columns: 1.2fr .7fr .7fr; gap: 28px; background: var(--materials-navy-deep); color: #c4d0d8; }
.ptb-footer > a { width: min(320px,100%); padding: 10px; background: #fff; }
.ptb-footer > a img { display: block; width: 100%; height: 70px; object-fit: contain; }
.ptb-footer div { display: grid; gap: 9px; }
.ptb-footer div b { color: #fff; }
.ptb-footer > p { grid-column: 1/-1; margin: 0; padding-top: 20px; border-top: 1px solid #324a5c; }

@media (max-width:1100px) { .ptb-shop-page .ferka-live-grid { grid-template-columns: repeat(3,1fr); } }
@media (max-width:850px) {
  .ptb-shop-hero { grid-template-columns: 1fr; }
  .ptb-condition-grid,
  .ptb-shop-page .ferka-live-grid,
  .ptb-footer { grid-template-columns: 1fr 1fr; }
  .ferka-catalogue-toolbar { grid-template-columns: 1fr; }
}
@media (max-width:560px) {
  .ptb-shop-hero { padding: 40px 5vw; }
  .ptb-shop-page .ferka-live-grid,
  .ptb-condition-grid,
  .ptb-footer { grid-template-columns: 1fr; }
  .ptb-shop-page .ferka-live-catalog { padding: 38px 5vw; }
  .ptb-shop-page .ferka-live-grid article { min-height: 0; }
}
