/* seo.css — страницы /kamen/* (SSR). Версия в seo-pages.js → CSS_V.
   Палитра и шрифты — как на /rostov/ и в каталоге. */

:root{
  --graphite:#211E1A;
  --ivory:#F6F3EC;
  --brass:#A9722E;
  --brass-hi:#c08739;
  --line:rgba(246,243,236,.14);
  --muted:rgba(246,243,236,.62);
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  background:var(--graphite);
  color:var(--ivory);
  font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;
  font-size:16px;
  line-height:1.55;
}
a{color:inherit}

/* --- шапка / подвал --- */
.seo-top{
  display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;
  max-width:1100px;margin:0 auto;padding:20px;
  border-bottom:1px solid var(--line);
}
.seo-logo{font-family:Fraunces,serif;font-size:20px;font-weight:600;text-decoration:none}
.seo-top nav a{margin-left:18px;font-size:14px;color:var(--muted);text-decoration:none}
.seo-top nav a:hover{color:var(--ivory)}

.seo-foot{
  max-width:1100px;margin:0 auto;padding:40px 20px 60px;
  border-top:1px solid var(--line);font-size:14px;color:var(--muted);
}
.seo-foot a{color:var(--muted)}
.seo-foot a:hover{color:var(--ivory)}
.seo-foot p{margin:10px 0 0;max-width:60ch}

/* --- контейнер --- */
.seo-wrap{max-width:1100px;margin:0 auto;padding:36px 20px 8px}

h1{font-family:Fraunces,serif;font-weight:600;font-size:clamp(24px,4.4vw,38px);line-height:1.18;margin:0 0 18px}
h2{font-family:Fraunces,serif;font-weight:600;font-size:clamp(20px,3vw,27px);margin:44px 0 18px}

.seo-lead{font-size:16px;color:var(--muted);max-width:64ch;margin:0 0 14px}
.seo-desc{max-width:64ch;margin:22px 0}

.seo-crumbs{font-size:13px;color:var(--muted);margin:0 0 16px}
.seo-crumbs a{color:var(--muted);text-decoration:none;border-bottom:1px solid transparent}
.seo-crumbs a:hover{color:var(--ivory);border-color:var(--ivory)}
.seo-crumbs span{color:var(--ivory)}

/* --- индекс брендов --- */
.seo-brands{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin-top:26px}
.seo-brand{
  display:flex;flex-direction:column;gap:4px;
  padding:16px 18px;border:1px solid var(--line);border-radius:12px;text-decoration:none;
  transition:border-color .15s;
}
.seo-brand:hover{border-color:var(--brass)}
.seo-brand b{font-family:Fraunces,serif;font-size:18px;font-weight:600}
.seo-brand i{font-style:normal;font-size:13px;color:var(--muted)}

/* --- сетка камней --- */
.seo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;margin-top:22px}
.seo-card{
  display:flex;flex-direction:column;
  border:1px solid var(--line);border-radius:12px;overflow:hidden;text-decoration:none;
  transition:border-color .15s;
}
.seo-card:hover{border-color:var(--brass)}
.seo-card img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;background:#2c2822}
.seo-card-noimg{
  width:100%;aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;
  font-size:12px;color:var(--muted);background:#2c2822;
}
.seo-card-meta{padding:9px 11px;display:flex;flex-direction:column;gap:2px}
.seo-card-meta b{font-size:14px}
.seo-card-meta i{font-style:normal;font-size:12px;color:var(--muted)}

/* --- карусель фото --- */
.seo-gallery{position:relative;margin:0 0 24px}
.seo-shots{
  display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;padding-bottom:6px;
  align-items:flex-start;
}
.seo-shots img{
  height:min(60vh,440px);width:auto;flex:0 0 auto;
  border-radius:12px;scroll-snap-align:center;background:#2c2822;
}
.seo-shots::-webkit-scrollbar{height:6px}
.seo-shots::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}

/* стрелки — поверх краёв фото, полупрозрачная подложка */
.seo-shots-nav{
  position:absolute;top:50%;transform:translateY(-50%);
  width:40px;height:40px;border-radius:50%;padding:0;cursor:pointer;z-index:2;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;line-height:1;
  border:1px solid var(--line);background:rgba(33,30,26,.72);color:var(--ivory);
}
.seo-shots-nav:hover{background:rgba(33,30,26,.9)}
.seo-shots-nav[hidden]{display:none}
.seo-shots-prev{left:8px}
.seo-shots-next{right:8px}

/* узкие экраны: один слайд на ширину, высота — под текущее фото, без обрезки */
@media(max-width:600px){
  .seo-shots{transition:height .18s ease}
  .seo-shots img{
    flex:0 0 100%;width:100%;height:auto;max-height:55vh;object-fit:contain;
  }
}

/* --- блок цены --- */
.seo-price{
  border:1px solid var(--brass);border-radius:12px;padding:16px 18px;margin:6px 0 4px;
  display:flex;flex-direction:column;gap:6px;max-width:64ch;
}
.seo-price b{font-family:Fraunces,serif;font-size:22px;font-weight:600}
.seo-price span{font-size:14px;color:var(--muted)}
.seo-price a{color:var(--brass)}
.seo-price a:hover{color:var(--ivory)}

/* --- таблица характеристик --- */
.seo-facts{border-collapse:collapse;width:100%;max-width:520px;margin:22px 0;font-size:15px}
.seo-facts th,.seo-facts td{
  text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:top;
}
.seo-facts th{font-weight:400;color:var(--muted);width:44%}

/* --- CTA --- */
.seo-cta{
  display:inline-block;margin:8px 0 8px;
  background:var(--brass);color:var(--ivory);text-decoration:none;
  font-size:16px;padding:15px 28px;border-radius:10px;
}
.seo-cta:hover{background:var(--brass-hi)}

.seo-similar{margin-top:8px}

@media(max-width:600px){
  .seo-wrap{padding:24px 16px 8px}
  .seo-top,.seo-foot{padding-left:16px;padding-right:16px}
  .seo-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}
}
