/* Страница товара — надстройка над style.css сайта «Жуковский хлеб».
   Палитра взята из style.css: #230C08 (текст), #e25b5b (акцент), #E8E5E5 (линии). */

.p-page{
  position:relative;
  background:#fff;
  color:#230C08;
  padding:150px 0 0;
}
.p-page .container{padding:0 30px;}

/* ---------- крошки ---------- */
.p-crumbs{
  display:flex;flex-wrap:wrap;gap:8px;
  list-style:none;padding:0;margin:0 0 26px;
  font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#6A5E5C;
}
.p-crumbs li+li:before{content:"—";margin-right:8px;color:#C9C2C0;}
.p-crumbs a{color:#6A5E5C;text-decoration:none;}
.p-crumbs a:hover{color:#e25b5b;}
.p-crumbs li:last-child{color:#230C08;font-weight:600;}

/* ---------- две колонки ---------- */
.p-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:56px;
  align-items:start;
}
.p-gallery{position:sticky;top:130px;}
.p-shot{
  margin:0;
  background:#F8F8F8;
  border:1px solid #E8E5E5;
  overflow:hidden;
  aspect-ratio:1/1;
}
.p-shot img{width:100%;height:100%;object-fit:cover;display:block;}

/* ---------- правая колонка ---------- */
.p-eyebrow{
  font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:#e25b5b;font-weight:700;margin:0 0 14px;
}
.p-info h1{
  font-size:38px;line-height:1.15;font-weight:700;letter-spacing:-.01em;
  margin:0;text-wrap:balance;
}
.p-lede{font-size:17px;line-height:1.6;margin:20px 0 0;max-width:54ch;}

.p-facts{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:26px 0 0;}
.p-facts li{
  border:1px solid #E8E5E5;background:#F8F8F8;
  padding:9px 15px;font-size:13px;font-weight:600;
}
.p-facts b{color:#e25b5b;}

.p-label{
  display:flex;align-items:center;gap:12px;
  font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:#6A5E5C;margin:42px 0 14px;
}
.p-label:after{content:"";flex:1;height:1px;background:#E8E5E5;}

/* ---------- таблица характеристик ---------- */
table.p-spec{width:100%;border-collapse:collapse;font-size:14.5px;}
table.p-spec th,table.p-spec td{
  text-align:left;padding:12px 0;border-bottom:1px solid #E8E5E5;vertical-align:top;
}
table.p-spec th{font-weight:400;color:#6A5E5C;width:46%;padding-right:20px;}
table.p-spec td{font-weight:600;}
table.p-spec td.p-empty{
  font-weight:400;color:#B7ADAB;font-style:italic;
}

/* ---------- БЖУ ---------- */
.p-nutri{
  display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:#E8E5E5;border:1px solid #E8E5E5;margin:0;
}
.p-nutri div{background:#fff;padding:16px 14px;text-align:center;}
.p-nutri dt{
  font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#6A5E5C;margin:0 0 6px;
}
.p-nutri dd{
  margin:0;font-size:22px;font-weight:700;letter-spacing:-.01em;
  font-variant-numeric:tabular-nums;
}
.p-nutri dd small{font-size:12px;font-weight:600;color:#6A5E5C;margin-left:3px;}

.p-note{font-size:12px;color:#8A7C79;margin:10px 0 0;line-height:1.5;}
.p-compose{font-size:14.5px;line-height:1.6;margin:0;max-width:62ch;}

/* ---------- где купить ---------- */
.p-cta{
  margin:44px 0 0;padding:26px 28px;
  background:#F8F8F8;border:1px solid #E8E5E5;border-left:3px solid #e25b5b;
}
.p-cta strong{display:block;font-size:16px;font-weight:700;margin-bottom:8px;}
.p-cta p{margin:0;font-size:14.5px;color:#6A5E5C;line-height:1.6;}
.p-cta a{color:#230C08;}
.p-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px;}
.p-btn{
  display:inline-block;text-decoration:none;
  font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
  padding:13px 24px;border:1px solid #e25b5b;background:#e25b5b;color:#fff;
  transition:opacity .2s ease;
}
.p-btn:hover{opacity:.85;color:#fff;}
.p-btn.ghost{background:transparent;color:#230C08;border-color:#D8D3D1;}
.p-btn.ghost:hover{border-color:#e25b5b;opacity:1;}
.p-btn:focus-visible{outline:2px solid #e25b5b;outline-offset:3px;}

/* ---------- похожие ---------- */
.p-related{border-top:1px solid #E8E5E5;margin-top:70px;padding:46px 0 80px;}
.p-related h2{font-size:22px;font-weight:700;margin:0 0 26px;}
.p-cards{
  display:grid;grid-template-columns:repeat(4,1fr);gap:24px;
  list-style:none;padding:0;margin:0;
}
.p-card{display:block;text-decoration:none;color:#230C08;}
.p-card-pic{
  display:block;background:#F8F8F8;border:1px solid #E8E5E5;
  overflow:hidden;aspect-ratio:1/1;
}
.p-card-pic img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease;}
.p-card:hover img{transform:scale(1.06);}
.p-card-name{display:block;font-size:14px;font-weight:600;line-height:1.35;margin:13px 0 4px;}
.p-card:hover .p-card-name{color:#e25b5b;}
.p-card-weight{display:block;font-size:13px;color:#6A5E5C;}
.p-card:focus-visible{outline:2px solid #e25b5b;outline-offset:4px;}

/* ---------- адаптив ---------- */
@media (max-width:1100px){
  .p-grid{gap:36px;}
  .p-info h1{font-size:32px;}
}
@media (max-width:900px){
  .p-page{padding-top:120px;}
  .p-grid{grid-template-columns:1fr;gap:30px;}
  .p-gallery{position:static;}
  .p-cards{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
  .p-page .container{padding:0 15px;}
  .p-info h1{font-size:26px;}
  .p-nutri{grid-template-columns:repeat(2,1fr);}
  .p-cta{padding:20px;}
}
@media (prefers-reduced-motion:reduce){
  .p-card-pic img,.p-btn{transition:none;}
}

/* дополнительные фото товара, если их несколько */
.p-shot-extra{margin-top:12px;}
.p-shot picture{display:block;width:100%;height:100%;}
.p-shot picture img{width:100%;height:100%;object-fit:cover;}
.p-card-pic picture{display:block;width:100%;height:100%;}
.p-card-pic picture img{width:100%;height:100%;object-fit:cover;}
