

html{
 height:auto !important;
 min-height:100%;
 overflow-y:auto !important;
 overflow-x:hidden !important;
 scroll-behavior:auto !important;
}

body{
 height:auto !important;
 min-height:100%;
 overflow-y:auto !important;
 overflow-x:hidden !important;
 background:#fff;
}

#wrapper,
#middle,
#content,
.cnt,
.clr{
 height:auto !important;
 min-height:0 !important;
 overflow:visible !important;
}

#loader{
 pointer-events:none;
}

body.grab01-loaded #loader{
 display:none !important;
 opacity:0 !important;
 visibility:hidden !important;
}

/* фон ставим на секцию uCoz, а не на внутренний контейнер */
#middle.grab01-middle{
 width:100% !important;
 max-width:none !important;
 margin:0 !important;
 padding:0 !important;
 float:none !important;
 background:
 radial-gradient(circle at 16% 0%, rgba(95,127,93,.035) 0, rgba(95,127,93,0) 260px),
 linear-gradient(180deg,#fbfaf7 0%,#f8f8f5 38%,#ffffff 100%) !important;
}

#middle.grab01-middle #content{
 width:100% !important;
 max-width:none !important;
 float:none !important;
 margin:0 !important;
 padding:0 !important;
 background:transparent !important;
}

/* ---------- page ---------- */
.grab01-page{
 background:transparent;
 padding:24px 0 48px;
 font-family:'Open Sans', Arial, sans-serif;
 color:#141414;
}

.grab01-wrap{
 max-width:1280px !important;
 width:100% !important;
 margin:0 auto !important;
 padding:0 18px;
 box-sizing:border-box;
}

.grab01-breadcrumbs{
 margin:0 0 16px;
 font-size:14px;
 line-height:1.5;
 color:#747b82;
}

.grab01-breadcrumbs a{
 color:#747b82;
 text-decoration:none;
}

.grab01-breadcrumbs a:hover{
 color:#5f7f5d;
 text-decoration:underline;
}

/* ---------- product grid ---------- */
.grab01-product{
 display:grid;
 grid-template-columns:minmax(0, 720px) minmax(380px, 420px);
 gap:26px;
 justify-content:center;
 align-items:start;
}

.grab01-main-col,
.grab01-side{
 min-width:0;
}

.grab01-side{
 position:relative;
}

/* ---------- gallery ---------- */
.grab01-gallery-card{
 background:#fff;
 border:1px solid #ece8e0;
 border-radius:22px;
 padding:14px;
 box-sizing:border-box;
 box-shadow:0 12px 32px rgba(27,32,23,.032);
}

.grab01-gallery-grid{
 display:grid;
 grid-template-columns:82px minmax(0, 1fr);
 gap:14px;
 align-items:stretch;
}

.grab01-thumbs{
 display:flex;
 flex-direction:column;
 gap:12px;
}

.grab01-thumb{
 width:82px;
 height:82px;
 border-radius:14px;
 overflow:hidden;
 background:#fff;
 border:1px solid #e2ddd4;
 display:flex;
 align-items:center;
 justify-content:center;
 padding:6px;
 box-sizing:border-box;
 cursor:pointer;
 transition:.18s ease;
}

.grab01-thumb img{
 display:block;
 max-width:100%;
 max-height:100%;
 width:auto;
 height:auto;
}

.grab01-thumb:hover,
.grab01-thumb.is-active{
 border-color:#5f7f5d;
 box-shadow:0 0 0 3px rgba(95,127,93,.12);
}

.grab01-main{
 position:relative;
 height:520px;
 background:#f7f7f4;
 border-radius:18px;
 overflow:hidden;
 display:flex;
 align-items:center;
 justify-content:center;
 cursor:zoom-in;
}

.grab01-main img{
 display:block;
 max-width:100%;
 max-height:100%;
 width:auto;
 height:auto;
}

.grab01-zoom-hint{
 position:absolute;
 right:14px;
 bottom:14px;
 width:42px;
 height:42px;
 border-radius:14px;
 background:#fff;
 border:1px solid #e7e1d8;
 display:flex;
 align-items:center;
 justify-content:center;
 color:#5f7f5d;
 box-shadow:0 8px 22px rgba(0,0,0,.08);
 pointer-events:none;
}

.grab01-badge{
 position:absolute;
 left:14px;
 top:14px;
 display:inline-flex;
 align-items:center;
 gap:7px;
 padding:8px 12px;
 border-radius:999px;
 background:#5f7f5d;
 color:#fff;
 font-size:12px;
 line-height:1;
 font-weight:800;
 box-shadow:0 10px 24px rgba(95,127,93,.22);
}

/* ---------- stones ---------- */
.grab01-stone-box{
 margin-top:16px;
 background:#fff;
 border:1px solid #ece8e0;
 border-radius:22px;
 padding:16px;
 box-shadow:0 10px 26px rgba(27,32,23,.024);
}

.grab01-stone-head{
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:12px;
 margin-bottom:12px;
}

.grab01-stone-title{
 margin:0;
 font-size:18px;
 line-height:1.25;
 font-weight:800;
 color:#111;
 text-transform:uppercase;
}

.grab01-stone-selected{
 font-size:13px;
 line-height:1.35;
 color:#5f7f5d;
 font-weight:800;
 text-align:right;
}

.grab01-stone-slider{
 display:grid;
 grid-template-columns:36px minmax(0, 1fr) 36px;
 gap:10px;
 align-items:center;
}

.grab01-stone-nav{
 width:36px;
 height:36px;
 border:1px solid #ded8cf;
 border-radius:50%;
 background:#fff;
 color:#222;
 font-size:22px;
 line-height:1;
 cursor:pointer;
 transition:.18s ease;
 display:flex;
 align-items:center;
 justify-content:center;
}

.grab01-stone-nav:hover{
 border-color:#5f7f5d;
 color:#5f7f5d;
}

.grab01-stone-nav[disabled]{
 opacity:.35;
 cursor:default;
}

.grab01-stone-track-wrap{
 overflow:hidden;
 min-width:0;
}

.grab01-stone-track{
 display:flex;
 gap:12px;
 transition:transform .25s ease;
 will-change:transform;
}

.grab01-stone-card{
 position:relative;
 flex:0 0 132px;
 width:132px;
 height:112px;
 border-radius:15px;
 overflow:hidden;
 border:1px solid #e2ddd4;
 background:#fff !important;
 cursor:pointer;
 transition:.18s ease;
 padding:0;
 box-sizing:border-box;
 font-family:'Open Sans', Arial, sans-serif;
}

.grab01-stone-card:after{
 display:none !important;
}

.grab01-stone-card img{
 display:block;
 width:100%;
 height:74px;
 object-fit:cover;
 border-radius:15px 15px 0 0;
 background:transparent !important;
}

.grab01-stone-card span{
 position:static;
 display:flex;
 align-items:center;
 justify-content:center;
 min-height:38px;
 padding:6px 8px;
 box-sizing:border-box;
 color:#151515 !important;
 background:#fff !important;
 font-size:11px;
 line-height:1.15;
 font-weight:800;
 text-align:center;
 text-shadow:none !important;
}

.grab01-stone-card:hover{
 transform:translateY(-2px);
 border-color:#5f7f5d;
 box-shadow:0 10px 20px rgba(0,0,0,.05);
}

.grab01-stone-card.is-active{
 border-color:#5f7f5d;
 box-shadow:0 0 0 3px rgba(95,127,93,.15);
}

.grab01-stone-card.is-active .grab01-stone-check{
 opacity:1;
 transform:scale(1);
}

.grab01-stone-check{
 position:absolute;
 z-index:3;
 right:9px;
 top:9px;
 width:25px;
 height:25px;
 border-radius:50%;
 background:#5f7f5d;
 color:#fff;
 display:flex;
 align-items:center;
 justify-content:center;
 font-size:13px;
 opacity:0;
 transform:scale(.8);
 transition:.18s ease;
}

/* ---------- right card ---------- */
.grab01-buy-card{
 position:sticky;
 top:18px;
 background:#fff;
 border:1px solid #ece8e0;
 border-radius:22px;
 padding:22px;
 box-shadow:0 16px 38px rgba(27,32,23,.048);
}

.grab01-title{
 margin:0 0 12px;
 font-size:27px;
 line-height:1.14;
 font-weight:800;
 color:#111;
 text-transform:uppercase;
 letter-spacing:-.02em;
}

.grab01-meta{
 display:flex;
 flex-wrap:wrap;
 gap:8px;
 margin:0 0 18px;
}

.grab01-chip{
 display:inline-flex;
 align-items:center;
 gap:7px;
 padding:8px 12px;
 border-radius:999px;
 background:#f4f3f0;
 border:1px solid #e5ded3;
 color:#4d4d4d;
 font-size:13px;
 line-height:1.2;
 font-weight:700;
}

.grab01-price-card{
 margin:0 0 18px;
 padding:17px;
 border-radius:18px;
 background:linear-gradient(135deg,#f1f7ef 0%,#e8f2e7 100%);
 border:1px solid #dceadb;
}

.grab01-price-label{
 margin:0 0 5px;
 color:#647062;
 font-size:13px;
 line-height:1.25;
 font-weight:700;
}

.grab01-price-value{
 color:#101010;
 font-size:32px;
 line-height:1;
 font-weight:800;
 letter-spacing:-.02em;
}

.grab01-kit-card{
 margin-top:13px;
 padding-top:13px;
 border-top:1px solid rgba(95,127,93,.18);
}

.grab01-kit-title{
 display:flex;
 align-items:center;
 gap:7px;
 margin:0 0 9px;
 color:#425d40;
 font-size:13px;
 line-height:1.25;
 font-weight:800;
 text-transform:uppercase;
 letter-spacing:.02em;
}

.grab01-kit-title i{
 color:#5f7f5d;
}

.grab01-kit-list{
 display:flex;
 flex-wrap:wrap;
 gap:7px;
 margin:0 0 9px;
}

.grab01-kit-list span{
 display:inline-flex;
 align-items:center;
 gap:6px;
 padding:7px 10px;
 border-radius:999px;
 background:#fff;
 border:1px solid #dbe8d9;
 color:#243024;
 font-size:12px;
 line-height:1.1;
 font-weight:800;
}

.grab01-kit-list span:before{
 content:"";
 width:6px;
 height:6px;
 border-radius:50%;
 background:#5f7f5d;
 box-shadow:0 0 0 3px rgba(95,127,93,.12);
}

.grab01-kit-note{
 margin:0;
 color:#4f5a4e;
 font-size:13px;
 line-height:1.45;
 font-weight:700;
}

.grab01-cfg{
 display:grid;
 gap:15px;
}

.grab01-cfg-group{
 display:none;
 gap:9px;
}

.grab01-cfg-label{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:10px;
 color:#151515;
 font-size:14px;
 line-height:1.3;
 font-weight:800;
}

.grab01-cfg-options{
 display:flex;
 flex-wrap:wrap;
 gap:9px;
}

.grab01-cfg-btn{
 min-height:40px;
 padding:9px 13px;
 border:1px solid #ded8cf;
 border-radius:13px;
 background:#fbfaf8;
 color:#151515;
 cursor:pointer;
 font-size:14px;
 line-height:1.2;
 font-weight:800;
 transition:.16s ease;
 font-family:'Open Sans', Arial, sans-serif;
}

.grab01-cfg-btn:hover{
 border-color:#5f7f5d;
 transform:translateY(-1px);
}

.grab01-cfg-btn.is-active{
 background:#5f7f5d;
 border-color:#5f7f5d;
 color:#fff;
 box-shadow:0 8px 18px rgba(95,127,93,.20);
}

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

.grab01-action-main{
 grid-column:1 / -1;
}

.grab01-btn{
 min-height:48px;
 border-radius:14px;
 display:inline-flex;
 align-items:center;
 justify-content:center;
 gap:9px;
 padding:12px 16px;
 box-sizing:border-box;
 text-decoration:none !important;
 border:1px solid transparent;
 cursor:pointer;
 font-family:'Open Sans', Arial, sans-serif;
 font-size:14px;
 line-height:1.2;
 font-weight:800;
 transition:.18s ease;
 width:100%;
}

.grab01-btn-primary{
 background:#5f7f5d;
 color:#fff !important;
 box-shadow:0 12px 24px rgba(95,127,93,.20);
}

.grab01-btn-primary:hover{
 background:#4f704d;
 transform:translateY(-1px);
}

.grab01-btn-outline{
 background:#fff;
 color:#1c1c1c !important;
 border-color:#ded8cf;
}

.grab01-btn-outline:hover{
 border-color:#5f7f5d;
 color:#5f7f5d !important;
}

.grab01-mini-note{
 margin-top:14px;
 padding:14px 16px;
 border-radius:16px;
 background:#fafaf8;
 border:1px solid #ebe6de;
 color:#666;
 font-size:13px;
 line-height:1.5;
}

/* ---------- SEO description / content ---------- */
.grab01-content{
 width:100% !important;
 max-width:1280px !important;
 margin:30px auto 0 !important;
 display:grid;
 grid-template-columns:minmax(0, 1fr);
 gap:20px;
}

.grab01-tabs-card{
 width:100% !important;
 max-width:100% !important;
 background:#fff;
 border:1px solid #ece8e0;
 border-radius:24px;
 padding:26px;
 box-sizing:border-box;
 box-shadow:0 14px 34px rgba(27,32,23,.028);
}

.grab01-tabs{
 display:flex;
 flex-wrap:wrap;
 gap:8px 24px;
 margin:0 0 22px;
 border-bottom:1px solid #ebe6de;
}

.grab01-tab{
 border:0;
 background:transparent;
 padding:0 0 14px;
 color:#565656;
 cursor:pointer;
 font-size:14px;
 line-height:1.2;
 font-weight:800;
 font-family:'Open Sans', Arial, sans-serif;
 position:relative;
 text-transform:uppercase;
}

.grab01-tab:after{
 content:"";
 position:absolute;
 left:0;
 right:0;
 bottom:-1px;
 height:2px;
 border-radius:999px;
 background:#5f7f5d;
 opacity:0;
}

.grab01-tab.is-active{
 color:#5f7f5d;
}

.grab01-tab.is-active:after{
 opacity:1;
}

.grab01-panel{
 display:none;
}

.grab01-panel.is-active{
 display:block;
}

.grab01-section-title{
 margin:0 0 18px;
 color:#111;
 font-size:25px;
 line-height:1.22;
 font-weight:800;
 text-transform:uppercase;
}

.grab01-seo-head{
 display:grid;
 grid-template-columns:minmax(0,1fr) auto;
 gap:18px;
 align-items:start;
 margin-bottom:22px;
 padding:18px;
 border-radius:20px;
 background:#fafaf8;
 border:1px solid #e8e2d8;
}

.grab01-seo-kicker{
 margin:0 0 7px;
 color:#5f7f5d;
 font-size:13px;
 line-height:1.2;
 font-weight:800;
 text-transform:uppercase;
 letter-spacing:.04em;
}

.grab01-seo-title{
 margin:0;
 color:#111;
 font-size:21px;
 line-height:1.25;
 font-weight:800;
 text-transform:uppercase;
}

.grab01-seo-price{
 min-width:150px;
 padding:13px 15px;
 border-radius:16px;
 background:#fff;
 border:1px solid #e4ded4;
 text-align:center;
}

.grab01-seo-price span{
 display:block;
 margin-bottom:4px;
 color:#777;
 font-size:12px;
 line-height:1.2;
 font-weight:700;
}

.grab01-seo-price b{
 color:#111;
 font-size:21px;
 line-height:1;
 font-weight:800;
}

/* ВАЖНО: описание из uCoz часто приходит с кривым text-align.
 Здесь принудительно делаем читаемый SEO-блок. */
.grab01-text{
 color:#3f4a55;
 font-size:17px;
 line-height:1.82;
 max-width:1060px;
 text-align:left !important;
}

.grab01-text *{
 text-align:left !important;
}

.grab01-text p{
 margin:0 0 16px;
}

.grab01-text h1,
.grab01-text h2,
.grab01-text h3{
 color:#111;
 line-height:1.25;
 font-weight:800;
}

.grab01-text h2,
.grab01-text h3{
 margin-top:24px;
 margin-bottom:12px;
}

.grab01-text ul,
.grab01-text ol{
 margin:0 0 18px;
 padding-left:24px;
}

.grab01-text li{
 margin:7px 0;
 padding-left:2px;
 text-align:left !important;
}

.grab01-text table{
 width:100%;
 border-collapse:collapse;
 margin:18px 0;
 background:#fff;
 font-size:16px;
 line-height:1.45;
}

.grab01-text td,
.grab01-text th{
 border:1px solid #e7e1d8;
 padding:13px 14px;
 text-align:left !important;
 vertical-align:top;
}

.grab01-text th{
 background:#fafaf8;
 color:#111;
 font-weight:800;
}

.grab01-desc-empty-note{
 display:none;
 margin:0;
 padding:18px 20px;
 border-radius:18px;
 background:#fafaf8;
 border:1px dashed #d9d3ca;
 color:#697268;
 font-size:15px;
 line-height:1.6;
}

.grab01-panel-desc.is-short .grab01-desc-empty-note{
 display:block;
}

.grab01-panel-desc.is-short .grab01-text{
 display:none;
}

.grab01-seo-links{
 margin-top:18px;
 padding:16px;
 border-radius:18px;
 background:#fafaf8;
 border:1px solid #ebe6de;
}

.grab01-seo-links-title{
 margin:0 0 10px;
 color:#111;
 font-size:14px;
 line-height:1.25;
 font-weight:800;
 text-transform:uppercase;
}

.grab01-seo-links-list{
 display:flex;
 flex-wrap:wrap;
 gap:8px;
}

.grab01-seo-links-list a{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 min-height:34px;
 padding:7px 11px;
 border-radius:999px;
 background:#fff;
 border:1px solid #ded8cf;
 color:#334033 !important;
 text-decoration:none !important;
 font-size:13px;
 line-height:1.2;
 font-weight:800;
}

.grab01-seo-links-list a:hover{
 border-color:#5f7f5d;
 color:#5f7f5d !important;
}

.grab01-seo-passport{
 margin-top:24px;
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:14px;
}

.grab01-passport-card{
 padding:18px;
 border-radius:18px;
 background:#fbfbf9;
 border:1px solid #ebe6de;
}

.grab01-passport-card i{
 display:flex;
 align-items:center;
 justify-content:center;
 width:42px;
 height:42px;
 margin:0 0 12px;
 border-radius:50%;
 background:#eef6ee;
 color:#5f7f5d;
 font-size:18px;
}

.grab01-passport-card b{
 display:block;
 margin:0 0 7px;
 color:#111;
 font-size:15px;
 line-height:1.25;
 font-weight:800;
}

.grab01-passport-card span{
 display:block;
 color:#5f6266;
 font-size:14px;
 line-height:1.55;
}

.grab01-feature-row{
 margin-top:24px;
 display:grid;
 grid-template-columns:repeat(5,1fr);
 gap:12px;
}

.grab01-feature{
 text-align:center;
 padding:16px 10px;
 border-radius:18px;
 background:#fafaf8;
 border:1px solid #ebe6de;
}

.grab01-feature i{
 display:flex;
 align-items:center;
 justify-content:center;
 width:44px;
 height:44px;
 margin:0 auto 10px;
 border-radius:50%;
 background:#eef6ee;
 color:#5f7f5d;
 font-size:19px;
}

.grab01-feature b{
 display:block;
 margin:0 0 4px;
 color:#111;
 font-size:13px;
 line-height:1.25;
}

.grab01-feature span{
 display:block;
 color:#6b6b6b;
 font-size:12px;
 line-height:1.35;
}

.grab01-specs{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:12px;
}

.grab01-spec{
 padding:14px 16px;
 border-radius:15px;
 background:#fafaf8;
 border:1px solid #ebe6de;
}

.grab01-spec-name{
 margin:0 0 5px;
 color:#79736b;
 font-size:13px;
 line-height:1.2;
}

.grab01-spec-value{
 color:#151515;
 font-size:16px;
 line-height:1.35;
 font-weight:800;
}

/* ---------- modal form ---------- */
.grab01-order-modal{
 position:fixed;
 inset:0;
 z-index:10000;
 display:none;
 align-items:center;
 justify-content:center;
 padding:18px;
 box-sizing:border-box;
 background:rgba(16,18,15,.62);
 backdrop-filter:blur(5px);
}

.grab01-order-modal.is-open{
 display:flex;
}

.grab01-order-dialog{
 width:min(560px, 100%);
 max-height:92vh;
 overflow:auto;
 background:#fff;
 border-radius:22px;
 padding:22px;
 box-sizing:border-box;
 box-shadow:0 24px 80px rgba(0,0,0,.22);
 position:relative;
}

.grab01-order-close{
 position:absolute;
 right:14px;
 top:14px;
 width:38px;
 height:38px;
 border:1px solid #e2ddd4;
 background:#fff;
 color:#111;
 border-radius:50%;
 font-size:24px;
 line-height:1;
 cursor:pointer;
}

.grab01-order-title{
 margin:0 44px 8px 0;
 color:#111;
 font-size:24px;
 line-height:1.2;
 font-weight:800;
}

.grab01-order-lead{
 margin:0 0 16px;
 color:#666;
 font-size:14px;
 line-height:1.55;
}

.grab01-order-dialog input[type="text"],
.grab01-order-dialog input[type="email"],
.grab01-order-dialog input[type="tel"],
.grab01-order-dialog textarea,
.grab01-order-dialog select{
 max-width:100%;
 box-sizing:border-box;
}

/* ---------- lightbox ---------- */
.grab01-lightbox{
 position:fixed;
 inset:0;
 background:rgba(0,0,0,.88);
 z-index:10001;
 display:none;
 align-items:center;
 justify-content:center;
 padding:30px;
 box-sizing:border-box;
}

.grab01-lightbox.is-open{
 display:flex;
}

.grab01-lightbox-img{
 max-width:90vw;
 max-height:85vh;
 display:block;
}

.grab01-lightbox-close,
.grab01-lightbox-prev,
.grab01-lightbox-next{
 position:absolute;
 border:none;
 background:rgba(255,255,255,.14);
 color:#fff;
 width:48px;
 height:48px;
 border-radius:50%;
 cursor:pointer;
 font-size:20px;
}

.grab01-lightbox-close{top:20px;right:20px;}
.grab01-lightbox-prev{left:20px;top:50%;transform:translateY(-50%);}
.grab01-lightbox-next{right:20px;top:50%;transform:translateY(-50%);}

/* ---------- responsive ---------- */
@media (max-width:1180px){
 .grab01-product{
 grid-template-columns:1fr;
 }

 .grab01-buy-card{
 position:relative;
 top:auto;
 }

 .grab01-feature-row{
 grid-template-columns:repeat(3,1fr);
 }

 .grab01-specs{
 grid-template-columns:repeat(2,1fr);
 }

 .grab01-seo-passport{
 grid-template-columns:1fr;
 }
}

@media (max-width:760px){
 .grab01-page{
 padding:18px 0 38px;
 }

 .grab01-wrap{
 padding:0 12px;
 }

 .grab01-gallery-grid{
 grid-template-columns:1fr;
 }

 .grab01-thumbs{
 order:2;
 flex-direction:row;
 overflow:auto;
 padding-bottom:2px;
 }

 .grab01-thumb{
 flex:0 0 66px;
 width:66px;
 height:66px;
 }

 .grab01-main{
 min-height:330px;
 height:330px;
 }

 .grab01-title{
 font-size:23px;
 }

 .grab01-price-value{
 font-size:28px;
 }

 .grab01-kit-list{
 gap:6px;
 }

 .grab01-kit-list span{
 padding:7px 9px;
 font-size:11px;
 }

 .grab01-kit-note{
 font-size:12px;
 }

 .grab01-buy-card,
 .grab01-tabs-card,
 .grab01-stone-box,
 .grab01-gallery-card{
 border-radius:18px;
 padding:14px;
 }

 .grab01-actions{
 grid-template-columns:1fr;
 }

 .grab01-feature-row{
 grid-template-columns:repeat(2,1fr);
 }

 .grab01-specs{
 grid-template-columns:1fr;
 }

 .grab01-stone-slider{
 grid-template-columns:32px minmax(0,1fr) 32px;
 }

 .grab01-stone-nav{
 width:32px;
 height:32px;
 }

 .grab01-stone-card{
 flex-basis:126px;
 width:126px;
 height:120px;
 }

 .grab01-stone-card img{
 height:82px;
 }

 .grab01-tabs{
 gap:8px 18px;
 }

 .grab01-tab{
 font-size:13px;
 }

 .grab01-text{
 font-size:16px;
 line-height:1.75;
 }

 .grab01-seo-head{
 grid-template-columns:1fr;
 padding:16px;
 }

 .grab01-seo-price{
 text-align:left;
 }

 .grab01-section-title{
 font-size:22px;
 }
}

/* ==========================================================
 GGREL26 — похожие материалы / информер для uCoz
 Версия с крупной картинкой + нормальный мобильный вид.
 Стили уникальные, ничего не конфликтует с основной карточкой.
========================================================== */

.ggrel26{
 width:100%;
 max-width:100%;
 margin:8px auto 0;
 padding:26px;
 box-sizing:border-box;
 background:#fff;
 border:1px solid #ece8e0;
 border-radius:24px;
 box-shadow:0 14px 34px rgba(27,32,23,.028);
 overflow:hidden;
}

.ggrel26-head{
 display:flex;
 justify-content:space-between;
 align-items:flex-end;
 gap:20px;
 margin-bottom:20px;
}

.ggrel26-kicker{
 margin:0 0 7px;
 color:#5f7f5d;
 font-size:13px;
 line-height:1.2;
 font-weight:800;
 text-transform:uppercase;
 letter-spacing:.08em;
}

.ggrel26-head h2{
 margin:0;
 color:#111;
 font-size:26px;
 line-height:1.18;
 font-weight:800;
 text-transform:uppercase;
 letter-spacing:-.02em;
}

.ggrel26-head p{
 margin:8px 0 0;
 color:#66706a;
 font-size:15px;
 line-height:1.55;
}

.ggrel26-nav{
 display:flex;
 gap:8px;
 flex:0 0 auto;
}

.ggrel26-arrow{
 width:42px;
 height:42px;
 border-radius:50%;
 border:1px solid #ded8cf;
 background:#fff;
 color:#1d1d1d;
 font-size:26px;
 line-height:1;
 cursor:pointer;
 transition:.18s ease;
 display:flex;
 align-items:center;
 justify-content:center;
 font-family:'Open Sans', Arial, sans-serif;
}

.ggrel26-arrow:hover{
 border-color:#5f7f5d;
 color:#5f7f5d;
 box-shadow:0 8px 18px rgba(95,127,93,.12);
}

.ggrel26-arrow[disabled]{
 opacity:.35;
 cursor:default;
 box-shadow:none;
}

.ggrel26-track-wrap{
 overflow:hidden;
 margin:0 -4px;
}

.ggrel26-track{
 display:flex;
 gap:16px;
 overflow-x:auto;
 scroll-behavior:smooth;
 scroll-snap-type:x proximity;
 padding:4px 4px 10px;
 scrollbar-width:none;
 -webkit-overflow-scrolling:touch;
}

.ggrel26-track::-webkit-scrollbar{
 display:none;
}

.ggrel26-card,
a.ggrel26-card,
a.ggrel26-card:hover,
a.ggrel26-card:focus,
a.ggrel26-card:active,
a.ggrel26-card:visited{
 flex:0 0 252px;
 width:252px;
 min-height:390px;
 display:flex !important;
 flex-direction:column !important;
 text-decoration:none !important;
 color:#111 !important;
 background:#fff;
 border:1px solid #ebe6de;
 border-radius:20px;
 overflow:hidden;
 transition:.18s ease;
 box-shadow:0 8px 22px rgba(27,32,23,.025);
 scroll-snap-align:start;
}

.ggrel26-card:hover{
 transform:translateY(-3px);
 border-color:#cdddc9;
 box-shadow:0 16px 34px rgba(27,32,23,.075);
}

.ggrel26-img{
 height:235px;
 background:linear-gradient(180deg,#f8f8f6 0%,#f2f2ef 100%);
 display:flex;
 align-items:center;
 justify-content:center;
 padding:8px;
 box-sizing:border-box;
 border-bottom:1px solid #eee9e1;
 overflow:hidden;
}

.ggrel26-img img{
 display:block;
 width:100%;
 height:100%;
 max-width:100%;
 max-height:100%;
 object-fit:contain;
 object-position:center;
 transition:transform .22s ease;
}

.ggrel26-card:hover .ggrel26-img img{
 transform:scale(1.035);
}

.ggrel26-info{
 display:flex;
 flex-direction:column;
 flex:1;
 padding:14px 14px 15px;
 box-sizing:border-box;
}

.ggrel26-name{
 color:#111;
 font-size:15px;
 line-height:1.3;
 font-weight:800;
 text-transform:uppercase;
 display:-webkit-box;
 -webkit-line-clamp:3;
 -webkit-box-orient:vertical;
 overflow:hidden;
 min-height:58px;
}

.ggrel26-meta{
 margin-top:8px;
 color:#737b75;
 font-size:13px;
 line-height:1.35;
}

.ggrel26-price{
 margin-top:12px;
 color:#5f7f5d;
 font-size:18px;
 line-height:1;
 font-weight:800;
}

.ggrel26-more{
 margin-top:auto;
 padding-top:12px;
 display:inline-flex;
 align-items:center;
 gap:7px;
 color:#111;
 font-size:13px;
 line-height:1.2;
 font-weight:800;
}

.ggrel26-card:hover .ggrel26-more{
 color:#5f7f5d;
}

.ggrel26-track:empty:before{
 content:"Похожие материалы скоро появятся";
 display:block;
 width:100%;
 padding:22px;
 border-radius:18px;
 background:#fafaf8;
 border:1px dashed #d9d3ca;
 color:#697268;
 font-size:15px;
 line-height:1.5;
}

@media (max-width:900px){
 .ggrel26-card,
 a.ggrel26-card,
 a.ggrel26-card:hover,
 a.ggrel26-card:focus,
 a.ggrel26-card:active,
 a.ggrel26-card:visited{
 flex-basis:240px;
 width:240px;
 min-height:380px;
 }

 .ggrel26-img{
 height:228px;
 }
}

@media (max-width:760px){
 .ggrel26{
 margin-top:0;
 padding:16px 12px 18px;
 border-radius:18px;
 }

 .ggrel26-head{
 align-items:flex-start;
 flex-direction:column;
 gap:12px;
 margin-bottom:14px;
 }

 .ggrel26-kicker{
 font-size:12px;
 }

 .ggrel26-head h2{
 font-size:21px;
 line-height:1.18;
 }

 .ggrel26-head p{
 font-size:14px;
 line-height:1.45;
 }

 .ggrel26-nav{
 width:100%;
 justify-content:flex-end;
 }

 .ggrel26-arrow{
 width:38px;
 height:38px;
 font-size:24px;
 }

 .ggrel26-track-wrap{
 overflow:visible;
 margin:0 -12px;
 }

 .ggrel26-track{
 gap:12px;
 padding:2px 12px 8px;
 scroll-snap-type:x mandatory;
 }

 .ggrel26-card,
 a.ggrel26-card,
 a.ggrel26-card:hover,
 a.ggrel26-card:focus,
 a.ggrel26-card:active,
 a.ggrel26-card:visited{
 flex:0 0 min(74vw, 260px);
 width:min(74vw, 260px);
 min-height:370px;
 border-radius:18px;
 }

 .ggrel26-img{
 height:225px;
 padding:7px;
 }

 .ggrel26-info{
 padding:13px;
 }

 .ggrel26-name{
 font-size:14px;
 line-height:1.28;
 -webkit-line-clamp:3;
 min-height:54px;
 }

 .ggrel26-meta{
 margin-top:7px;
 font-size:12px;
 }

 .ggrel26-price{
 margin-top:10px;
 font-size:17px;
 }

 .ggrel26-more{
 font-size:13px;
 padding-top:10px;
 }
}

@media (max-width:420px){
 .ggrel26-card,
 a.ggrel26-card,
 a.ggrel26-card:hover,
 a.ggrel26-card:focus,
 a.ggrel26-card:active,
 a.ggrel26-card:visited{
 flex-basis:78vw;
 width:78vw;
 min-height:365px;
 }

 .ggrel26-img{
 height:220px;
 }
}



/* Мобильная карточка по согласованному компактному макету */
.grab01-photo-nav,.grab01-photo-count,.grab01-photo-dots,.grab01-price-suffix,.grab01-mobile-kit{display:none;}
.grab01-page :is(button,a):focus-visible,
.grab01-order-modal :is(button,input,textarea,a):focus-visible{outline:2px solid #305b34 !important;outline-offset:2px;}

@media(max-width:900px){
 .grab01-page{padding:10px 0 36px;background:#fff;}
 .grab01-wrap{padding:0 12px;}
 .grab01-breadcrumbs{font-size:11px;margin:0 2px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
 .grab01-product{display:flex;flex-direction:column;align-items:stretch;gap:0;}
 .grab01-main-col,.grab01-side,.grab01-buy-card{display:contents;}
 .grab01-gallery-card,.grab01-price-card,.grab01-title,.grab01-meta,.grab01-stone-box,.grab01-cfg,.grab01-actions,.grab01-mini-note{width:100%;min-width:0;box-sizing:border-box;}
 .grab01-gallery-card{order:1;padding:0;overflow:hidden;border-radius:14px 14px 0 0;border:1px solid #e5e9e4;border-bottom:0;box-shadow:none;}
 .grab01-gallery-grid{display:block;}
 .grab01-thumbs{display:none;}
 .grab01-main{height:clamp(255px,76vw,350px);min-height:0;border-radius:0;background:#f5f7f5;touch-action:pan-y;user-select:none;-webkit-user-select:none;}
 .grab01-main > img{max-width:100%;max-height:100%;object-fit:contain;pointer-events:none;transition:transform .18s ease;}
 .grab01-main.is-dragging > img{transition:none;}
 .grab01-zoom-hint{right:10px;top:10px;bottom:auto;width:31px;height:31px;border-radius:50%;font-size:12px;}
 .grab01-badge{top:10px;left:10px;max-width:70%;font-size:10px;padding:6px 9px;}
 .grab01-photo-nav{display:none !important;}
 .grab01-photo-count{display:block;position:absolute;right:10px;bottom:10px;padding:4px 8px;border-radius:20px;background:rgba(255,255,255,.94);font-size:11px;font-weight:700;color:#3c5b40;pointer-events:none;}
 .grab01-photo-dots{display:flex;align-items:center;justify-content:center;gap:5px;min-height:24px;background:#fff;}
 .grab01-photo-dots button{width:5px;height:5px;border:0;border-radius:99px;background:#cbd2cb;padding:0;cursor:pointer;transition:width .15s ease;}
 .grab01-photo-dots button.is-active{width:14px;background:#5f7f5d;}
 .grab01-price-card{order:2;margin:0 0 11px;padding:13px 13px 10px;border:1px solid #e5e9e4;border-top:0;border-radius:0 0 14px 14px;background:#fff;box-shadow:none;}
 .grab01-price-label{display:none;}
 .grab01-price-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px;}
 .grab01-price-value{font-size:clamp(25px,7.5vw,31px);line-height:1.15;color:#131c14;}
 .grab01-price-suffix{display:inline;color:#687168;font-size:12px;}
 .grab01-mobile-kit{display:block;margin-top:6px;color:#426d49;font-size:11px;font-weight:700;}
 .grab01-kit-card{display:none;}
 .grab01-title{order:3;margin:0 0 7px;padding:0 2px;font-size:clamp(19px,5.5vw,23px);line-height:1.2;overflow-wrap:anywhere;}
 .grab01-meta{order:4;margin:0 0 14px;gap:6px;}
 .grab01-chip{border:0;background:transparent;padding:0;color:#777;font-size:11px;font-weight:600;}
 .grab01-chip i{display:none;}
 .grab01-stone-box{order:5;margin:0 0 13px;padding:12px 0;border:0;border-top:1px solid #e7e9e5;border-bottom:1px solid #e7e9e5;border-radius:0;background:#fff;box-shadow:none;}
 .grab01-stone-head{align-items:flex-start;flex-direction:column;gap:3px;margin-bottom:9px;}
 .grab01-stone-title{font-size:14px;text-transform:none;}
 .grab01-stone-selected{text-align:left;font-size:11px;color:#677768;}
 .grab01-stone-slider{display:block;}
 .grab01-stone-nav{display:none;}
 .grab01-stone-track-wrap{overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
 .grab01-stone-track-wrap::-webkit-scrollbar{display:none;}
 .grab01-stone-track{width:max-content;max-width:none;gap:8px;transform:none !important;will-change:auto;}
 .grab01-stone-card{flex:0 0 83px;width:83px;height:99px;border-radius:12px;scroll-snap-align:start;}
 .grab01-stone-card img{height:65px;border-radius:11px 11px 0 0;}
 .grab01-stone-card span{min-height:32px;padding:3px 2px;font-size:9px;line-height:1.1;}
 .grab01-stone-check{width:18px;height:18px;right:4px;top:4px;font-size:10px;}
 .grab01-cfg{order:6;display:grid;gap:13px;padding:0 0 13px;border:0;border-bottom:1px solid #e7e9e5;background:#fff;}
 .grab01-cfg-group{min-width:0;}
 .grab01-cfg-label{font-size:13px;}
 .grab01-cfg-options{gap:7px;}
 .grab01-cfg-btn{min-height:38px;padding:8px 11px;font-size:12px;border-radius:9px;max-width:100%;overflow-wrap:anywhere;}
 .grab01-actions{order:7;display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:12px 0 0;}
 .grab01-action-main{grid-column:1 / -1;grid-row:1;}
 .grab01-btn{min-height:44px;padding:9px;font-size:12px;border-radius:10px;}
 .grab01-mini-note{order:8;margin:10px 0 0;font-size:11px;line-height:1.5;color:#697269;}
 .grab01-content{margin-top:20px !important;gap:14px;min-width:0;}
 .grab01-tabs-card{padding:15px 12px;}
 .grab01-tabs{flex-wrap:nowrap;overflow-x:auto;gap:18px;scrollbar-width:thin;margin-bottom:15px;-webkit-overflow-scrolling:touch;}
 .grab01-tab{flex:0 0 auto;white-space:nowrap;font-size:12px;padding-bottom:11px;}
 .grab01-text{font-size:15px;line-height:1.65;overflow-wrap:anywhere;}
 .grab01-text img,.grab01-text table{max-width:100% !important;height:auto;}
 .grab01-text table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;}
 .grab01-order-dialog{max-height:calc(100dvh - 24px);padding:20px 15px;}
 .grab01-lightbox{padding:12px;}
 .grab01-lightbox-prev{left:8px;}.grab01-lightbox-next{right:8px;}.grab01-lightbox-close{right:8px;top:8px;}
}
@media(prefers-reduced-motion:reduce){.grab01-main > img{transition:none;}}


/* Последняя настройка мобильной карточки: мягкий фон фото, ясные действия и спокойный заголовок. */
@media(max-width:900px){
 .grab01-main{isolation:isolate;background:#f2f4f2;}
 .grab01-photo-backdrop{position:absolute;inset:-28px;background-position:center;background-size:cover;filter:blur(22px);opacity:.25;pointer-events:none;z-index:0;}
 .grab01-main > img{position:relative;z-index:1;}
 .grab01-main .grab01-badge,.grab01-main .grab01-zoom-hint,.grab01-main .grab01-photo-count{z-index:2;}
 .grab01-title{font-family:Arial,'Open Sans',sans-serif !important;font-weight:700 !important;letter-spacing:0 !important;text-transform:none !important;font-size:clamp(20px,5.6vw,24px) !important;line-height:1.28 !important;}
 .grab01-actions{padding:14px !important;margin:14px 0 0 !important;border:1px solid #dfe8df;border-radius:16px;background:#f5f8f5;box-shadow:0 7px 22px rgba(28,53,31,.055);gap:9px;}
 .grab01-actions:before{content:'Поможем с выбором';grid-column:1 / -1;color:#263c2a;font:700 14px Arial,'Open Sans',sans-serif;margin:0 0 2px;}
 .grab01-actions .grab01-btn{min-height:48px;font-family:Arial,'Open Sans',sans-serif;font-size:13px;font-weight:700;border-radius:11px;box-shadow:none;}
 .grab01-actions .grab01-btn-primary{background:#3f6945 !important;color:#fff !important;box-shadow:0 5px 12px rgba(50,92,55,.16);}
 .grab01-actions a[href^="https://max.ru/"]{background:#e7f1e7 !important;border:1px solid #b9d2bc !important;color:#2f5d38 !important;}
 .grab01-actions a[href^="tel:"]{background:#fff !important;border:1px solid #cdd8cd !important;color:#223b28 !important;}
 .grab01-actions .grab01-btn i{font-size:17px;}
}


/* На странице товара контакты доступны в самой карточке; плавающие виджеты не закрывают контент. */
#ggctw27-widget,
#go-top{display:none !important;visibility:hidden !important;pointer-events:none !important;}

/* Фото и цена — одна карточка. Единственная кнопка расчёта следует за прокруткой. */
.grab01-sticky-order{display:none;}
@media(max-width:900px){
 .grab01-page{padding-bottom:170px;}
 .grab01-gallery-card{border-radius:18px 18px 0 0;border-color:#dfe5e0;box-shadow:none;}
 .grab01-photo-dots{background:#1c2920;min-height:27px;}
 .grab01-photo-dots button{background:#6b766d;}
 .grab01-photo-dots button.is-active{background:#8fd097;}
 .grab01-price-card{margin-bottom:13px;border-radius:0 0 18px 18px;border-color:#1c2920;background:#1c2920;padding:11px 16px 16px;box-shadow:0 10px 20px rgba(18,38,23,.12);}
 .grab01-price-value{color:#8ddd98 !important;font-size:clamp(29px,8vw,36px);font-weight:800;}
 .grab01-price-suffix{color:#c5d3c8;font-size:12px;}
 .grab01-mobile-kit{color:#d7e5d9;margin-top:7px;font-weight:600;}
 .grab01-actions{grid-template-columns:1fr 1fr;padding:12px !important;margin-top:12px !important;}
 .grab01-actions .grab01-action-main{display:none !important;}
 .grab01-actions:before{content:'Связаться с нами';}
 .grab01-sticky-order{display:block;position:fixed;z-index:900;left:0;right:0;bottom:0;width:100%;max-width:none;box-sizing:border-box;margin:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border:1px solid rgba(28,55,32,.13);border-bottom:0;border-radius:18px 18px 0 0;background:rgba(255,255,255,.97);box-shadow:0 -8px 28px rgba(0,0,0,.13);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
 .grab01-sticky-order-button{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:58px;padding:8px 12px;border:0;border-radius:12px;background:#4f7955;color:#fff;cursor:pointer;font-family:Arial,'Open Sans',sans-serif;font-size:16px;font-weight:700;line-height:1.15;box-shadow:none;}
 .grab01-sticky-order-button small{display:block;margin-top:4px;color:#e2efe3;font-size:10px;font-weight:400;line-height:1.15;}
 .grab01-sticky-order-button:active{background:#3d6543;}
 .grab01-sticky-order-button:focus-visible{outline:2px solid #254d2e !important;outline-offset:3px;}
}
@media(max-width:360px){
 .grab01-sticky-order{padding-left:9px;padding-right:9px;}
}


/* Текстура цены: загрузите gabbro-price-texture.webp в /images сайта. */
@media(max-width:900px){
 .grab01-gallery-card{border:0 !important;border-radius:18px 18px 0 0;box-shadow:none !important;}
 .grab01-photo-dots{background:#151a1b;min-height:26px;}
 .grab01-photo-dots button{background:#596263;}
 .grab01-photo-dots button.is-active{background:#eef1ed;}
 .grab01-price-card{
 border:0 !important;
 border-radius:0 0 18px 18px;
 background-color:#15191a;
 background-image:linear-gradient(90deg,rgba(7,9,10,.55),rgba(7,9,10,.68)),url('/images/gabbro-price-texture.webp');
 background-size:cover;
 background-position:center;
 margin-top:0;
 padding:14px 17px 17px;
 box-shadow:0 9px 20px rgba(12,18,15,.14);
 }
 .grab01-price-value{color:#f7f8f5 !important;text-shadow:0 1px 3px rgba(0,0,0,.45);}
 .grab01-price-suffix{color:#d5dbd7;}
 .grab01-mobile-kit{color:#dce4de;}
 .grab01-actions{background:#f8faf8;border-color:#e0e6e0;gap:10px;}
 .grab01-actions .grab01-btn{min-height:53px !important;border-radius:12px;}
 .grab01-actions a[href^="https://max.ru/"]{
 background:linear-gradient(115deg,#471AFF 0%,#6E1AFF 58%,#9500FF 100%) !important;
 border:1px solid #6E1AFF !important;
 color:#fff !important;
 box-shadow:0 7px 16px rgba(71,26,255,.20) !important;
 }
 .grab01-actions a[href^="https://max.ru/"] i{color:#fff !important;}
 .grab01-actions a[href^="tel:"]{
 background:#fff !important;
 border:1.5px solid #78917c !important;
 color:#24412b !important;
 box-shadow:0 5px 12px rgba(29,62,35,.09) !important;
 }
 .grab01-actions a[href^="tel:"] i{color:#4d7955 !important;}
}

/* Крупнее изображение товара без обрезки и полоса только для нескольких фото. */
.grab01-photo-dots:empty,
.grab01-photo-dots[hidden]{display:none !important;}
@media(max-width:900px){
 .grab01-main{height:clamp(380px,108vw,510px);}
 .grab01-main > img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;}
}

/* На телефоне короткий путь назад; фото и цена помещаются в первом экране лучше. */
.grab01-breadcrumbs-mobile{display:none;}
@media(max-width:900px){
 .grab01-breadcrumbs{display:none;}
 .grab01-breadcrumbs-mobile{display:block;margin:1px 0 10px;padding:0 2px;font:600 12px/1.4 Arial,'Open Sans',sans-serif;}
 .grab01-breadcrumbs-mobile a{display:inline-flex;align-items:center;gap:6px;color:#617263;text-decoration:none;}
 .grab01-breadcrumbs-mobile a span{font-size:19px;line-height:12px;}
 .grab01-sticky-order.is-cookie-visible{border-radius:14px 14px 0 0;padding:5px 12px;background:#fff;box-shadow:0 -5px 16px rgba(0,0,0,.09);}
 .grab01-sticky-order.is-cookie-visible .grab01-sticky-order-button{min-height:45px;font-size:14px;}
 .grab01-sticky-order.is-cookie-visible .grab01-sticky-order-button small{display:none;}
}
/* Открытые фото и форма остаются поверх уведомления cookie. */
.grab01-order-modal{z-index:100001;}
.grab01-lightbox{z-index:100002;}


/* Карточка товара: компактный десктоп, прежняя мобильная компоновка. */
#middle.grab01-middle {
  background: #f5f7f4 !important;
}

.grab01-page {
  color: #28312a;
  font-family: 'Open Sans', Arial, sans-serif;
}

.grab01-page .grab01-wrap {
  max-width: 1120px !important;
  padding-left: 18px;
  padding-right: 18px;
}

.grab01-page .grab01-breadcrumbs {
  margin-bottom: 14px;
  color: #687466;
  font-size: 12px;
  line-height: 1.6;
}

.grab01-page .grab01-gallery-card,
.grab01-page .grab01-buy-card,
.grab01-page .grab01-stone-box,
.grab01-page .grab01-tabs-card {
  border: 1px solid #dce4d9;
  border-radius: 12px;
  box-shadow: 0 3px 14px rgba(35, 54, 38, .035);
}

.grab01-page .grab01-buy-card {
  position: relative;
  top: auto !important;
  margin: 0;
}

.grab01-page .grab01-title {
  margin: 0 0 10px !important;
  padding: 0 !important;
  color: #263229;
  font-family: 'Open Sans', Arial, sans-serif !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  overflow-wrap: anywhere;
  text-wrap: pretty;
}

.grab01-page .grab01-meta {
  margin-bottom: 12px;
  gap: 7px;
}

.grab01-page .grab01-chip {
  padding: 0;
  border: 0;
  background: none;
  color: #647060;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.6;
}

.grab01-page .grab01-price-card {
  padding: 16px;
  border: 1px solid #263d2d;
  border-radius: 9px;
  background: #20362a;
  box-shadow: none;
}

.grab01-page .grab01-price-label {
  margin-bottom: 6px;
  color: #dbe6dc;
  font-size: 12px;
  font-weight: 400;
}

.grab01-page .grab01-price-value {
  color: #fff;
  font-size: 31px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.02em;
}

.grab01-page .grab01-kit-card {
  margin-top: 12px;
  padding-top: 11px;
  border-color: rgba(255, 255, 255, .2);
}

.grab01-page .grab01-kit-title {
  color: #f0f5ed;
  font-size: 12px;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
}

.grab01-page .grab01-kit-title i {
  color: #c0dbb6;
}

.grab01-page .grab01-kit-list span {
  padding: 1px 8px 1px 0;
  border: 0;
  background: none;
  color: #f0f5ed;
  font-size: 11px;
  font-weight: 400;
}

.grab01-page .grab01-kit-list span::before {
  width: 4px;
  height: 4px;
  background: #b7d3ae;
  box-shadow: none;
}

.grab01-page .grab01-kit-note {
  margin: 8px 0 0;
  color: #d0ddce;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.6;
}

.grab01-page .grab01-sharing {
  order: 4;
  min-width: 0;
  margin: 0 0 13px;
}

.grab01-page .grab01-sharing-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  gap: 6px;
}

.grab01-page .grab01-open-favorites,
.grab01-page .grab01-share-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: 100%;
  min-width: 0;
  min-height: 38px;
  margin: 0 !important;
  padding: 7px 5px !important;
  border: 1px solid #dbe3d8;
  border-radius: 6px;
  background: #f7f9f5;
  color: #475b40 !important;
  font: 400 11px/1.4 'Open Sans', Arial, sans-serif !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  white-space: nowrap;
  box-sizing: border-box;
  box-shadow: none;
  cursor: pointer;
}

.grab01-page .grab01-open-favorites:hover,
.grab01-page .grab01-share-btn:hover {
  border-color: #a9bda0;
  background: #edf3e9;
}

.grab01-page .grab01-open-favorites .ggfav26-count {
  min-width: 16px;
  height: 16px;
  padding: 0 3px;
  border-radius: 4px;
  background: #e5ede0;
  color: #3f5c35;
  font: 600 10px/16px 'Open Sans', Arial, sans-serif;
}

.grab01-page .grab01-share-status {
  margin: 7px 0 0;
  color: #57664e;
  font-size: 11px;
  line-height: 1.5;
}

.grab01-page .grab01-share-status:empty {
  display: none;
}

.grab01-page .grab01-share-manual {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 9px 0;
  padding: 9px;
  border: 1px solid #c7d6bd;
  border-radius: 6px;
  background: #fff;
  color: #35452d;
  font: 400 16px/1.5 'Open Sans', Arial, sans-serif;
}

.grab01-page [hidden] {
  display: none !important;
}

.grab01-page .grab01-product-heart {
  top: 12px !important;
  right: 12px !important;
  z-index: 5;
}

.grab01-page .grab01-cfg {
  margin-top: 17px;
  gap: 14px;
}

.grab01-page .grab01-cfg-label {
  color: #303b2b;
  font-size: 12px;
  font-weight: 600;
}

.grab01-page .grab01-cfg-btn {
  min-height: 39px;
  padding: 9px 11px;
  border-color: #d7e1d1;
  border-radius: 6px;
  background: #fff;
  color: #34492d;
  font-size: 11px;
  font-weight: 400;
  line-height: 1.5;
  text-transform: none !important;
  letter-spacing: 0;
  box-shadow: none;
}

.grab01-page .grab01-cfg-btn:hover {
  border-color: #8ba480;
  transform: none;
}

.grab01-page .grab01-cfg-btn.is-active {
  border-color: #8fa986;
  background: #edf4e8;
  color: #36572c;
  box-shadow: none;
}

.grab01-page .grab01-stone-title {
  margin: 0;
  color: #2d3d28;
  font-size: 14px;
  font-weight: 600;
  text-transform: none;
}

.grab01-page .grab01-stone-selected {
  color: #57684d;
  font-size: 11px;
  font-weight: 400;
}

.grab01-page .grab01-stone-card {
  border-color: #dce5d6;
  border-radius: 7px;
}

.grab01-page .grab01-stone-card span {
  font-weight: 400;
  text-transform: none;
}

.grab01-page .grab01-thumb {
  border-color: #dce5d6;
  border-radius: 7px;
}

.grab01-page .grab01-thumb.is-active {
  border-color: #8fa986;
  box-shadow: none;
}

.grab01-page .grab01-tab,
.grab01-page .grab01-section-title {
  font-weight: 600;
  text-transform: none;
}

.grab01-page .grab01-tab {
  font-size: 13px;
}

.grab01-page .grab01-spec {
  border-color: #dce5d6;
  border-radius: 8px;
  background: #f7f9f5;
}

.grab01-page .grab01-spec-value {
  font-size: 14px;
  font-weight: 600;
}

.grab01-page .grab01-mini-note {
  margin-top: 12px;
  padding: 10px 11px;
  border: 1px solid #e2e8dc;
  border-radius: 7px;
  background: #f7f9f5;
  color: #5e6d54;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.65;
}

.grab01-page .grab01-service-group,
.grab01-page .grab01-service-list {
  display: grid;
  gap: 8px;
}

.grab01-page .grab01-service {
  display: flex;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 56px;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid #dbe4d4;
  border-radius: 7px;
  background: #fafbf8;
  cursor: pointer;
}

.grab01-page .grab01-service input {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  margin: 0;
  accent-color: #56714f;
}

.grab01-page .grab01-service-copy {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}

.grab01-page .grab01-service-copy > span {
  color: #34422d;
  font-size: 12px;
  font-weight: 600;
}

.grab01-page .grab01-service-copy small {
  color: #64705b;
  font-size: 10px;
  font-weight: 400;
  line-height: 1.5;
}

.grab01-page .grab01-service strong {
  flex: 0 0 auto;
  color: #49613f;
  font-size: 11px;
  font-weight: 600;
  white-space: nowrap;
}

.grab01-page .grab01-service:has(input:checked) {
  border-color: #92ac86;
  background: #edf4e7;
}

.grab01-page .grab01-calc-note {
  margin: 0;
  color: #5c6b51;
  font-size: 10px;
  line-height: 1.65;
}

.grab01-page .grab01-config-submit {
  border-color: #b9cdb0;
  border-radius: 7px;
  background: #fff;
  color: #4e6f40 !important;
  font-weight: 600;
  font-size: 11px;
  text-transform: none;
  box-shadow: none;
}

/* Одинаково заметные контакты на компьютере и на телефоне. */
.grab01-page .grab01-actions a[href^="https://max.ru/"] {
  border: 1px solid #6e35ed !important;
  background: linear-gradient(115deg, #315bff 0%, #6e35ed 58%, #9828e5 100%) !important;
  color: #fff !important;
  box-shadow: 0 4px 11px rgba(93, 52, 211, .16) !important;
}

.grab01-page .grab01-actions a[href^="https://max.ru/"]:hover {
  filter: brightness(1.07);
}

.grab01-page .grab01-actions a[href^="https://max.ru/"] i {
  color: #fff !important;
}

.grab01-page .grab01-actions a[href^="tel:"] {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border: 1px solid #a6be99 !important;
  background: #f4f8ef !important;
  color: #3c5931 !important;
  box-shadow: none !important;
}

.grab01-page .grab01-actions a[href^="tel:"]::after {
  content: '';
  position: absolute;
  z-index: -1;
  top: -50%;
  bottom: -50%;
  left: -70%;
  width: 45%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .95), transparent);
  transform: skewX(-20deg);
  animation: grab01-call-glint 7s ease-in-out infinite;
  pointer-events: none;
}

@keyframes grab01-call-glint {
  0%, 72% { left: -70%; }
  93%, 100% { left: 140%; }
}

@media (min-width: 901px) {
  .grab01-page {
    padding-top: 18px;
  }

  .grab01-page .grab01-product {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 402px);
    align-items: start;
    gap: 20px;
  }

  .grab01-page .grab01-main-col {
    position: sticky;
    top: var(--grab01-sticky-top, 16px);
    align-self: start;
  }

  .grab01-page .grab01-gallery-card {
    padding: 11px;
  }

  .grab01-page .grab01-gallery-grid {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 10px;
  }

  .grab01-page .grab01-thumbs {
    gap: 9px;
  }

  .grab01-page .grab01-thumb {
    width: 58px;
    height: 64px;
    padding: 3px;
  }

  .grab01-page .grab01-main {
    height: clamp(360px, 33vw, 465px);
    border-radius: 7px;
    background: #f1f4ef;
  }

  .grab01-page .grab01-buy-card {
    padding: 18px;
  }

  .grab01-page .grab01-title {
    font-size: 20px !important;
  }

  .grab01-page .grab01-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin: 13px 0 16px;
    padding: 0;
    border: 0;
    background: none;
    box-shadow: none;
  }

  .grab01-page .grab01-actions .grab01-action-main {
    grid-column: 1 / -1;
    grid-row: 1;
  }

  .grab01-page .grab01-actions a[href^="https://max.ru/"] {
    grid-row: 2;
    grid-column: 1;
  }

  .grab01-page .grab01-actions a[href^="tel:"] {
    grid-row: 2;
    grid-column: 2;
  }

  .grab01-page .grab01-actions .grab01-btn {
    min-height: 45px;
    padding: 11px 9px;
    border-radius: 7px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    text-transform: none;
    box-shadow: none;
    transform: none;
  }

  .grab01-page .grab01-actions .grab01-btn-primary {
    border-color: #56714f;
    background: #56714f;
    box-shadow: 0 4px 11px rgba(48, 80, 35, .12);
  }

  .grab01-page .grab01-actions .grab01-btn-primary:hover {
    background: #445d3e;
  }

  .grab01-page .grab01-stone-box {
    margin-top: 12px;
    padding: 13px;
    background: #f9fbf7;
  }

  .grab01-page .grab01-stone-head {
    margin-bottom: 10px;
    gap: 6px;
  }

  .grab01-page .grab01-stone-slider {
    grid-template-columns: 28px minmax(0, 1fr) 28px;
    gap: 8px;
  }

  .grab01-page .grab01-stone-nav {
    width: 28px;
    height: 28px;
    font-size: 20px;
  }

  .grab01-page .grab01-stone-card {
    flex-basis: 96px;
    width: 96px;
    height: 100px;
  }

  .grab01-page .grab01-stone-card img {
    height: 67px;
  }

  .grab01-page .grab01-stone-card span {
    min-height: 31px;
    padding: 4px 2px;
    font-size: 9px;
    line-height: 1.2;
  }
}

@media (max-width: 900px) {
  #middle.grab01-middle {
    background: #fff !important;
  }

  .grab01-page .grab01-wrap {
    padding-left: 12px;
    padding-right: 12px;
  }

  .grab01-page .grab01-title {
    font-size: clamp(19px, 5.2vw, 22px) !important;
    line-height: 1.35 !important;
  }

  .grab01-page .grab01-gallery-card {
    border-radius: 18px 18px 0 0;
  }

  .grab01-page .grab01-price-card {
    margin-top: 0;
    padding: 14px 17px 17px;
    border-radius: 0 0 18px 18px;
    background-color: #15191a;
    background-image: linear-gradient(90deg, rgba(7, 9, 10, .55), rgba(7, 9, 10, .68)), url('/images/gabbro-price-texture.webp');
    background-size: cover;
    background-position: center;
  }

  .grab01-page .grab01-price-value {
    font-size: clamp(29px, 8vw, 36px);
    font-weight: 700;
  }

  .grab01-page .grab01-sharing {
    width: 100%;
    margin: 0 0 12px;
    padding: 0;
  }

  .grab01-page .grab01-open-favorites,
  .grab01-page .grab01-share-btn {
    min-height: 42px;
    font-size: 11px !important;
  }

  .grab01-page .grab01-stone-box {
    margin: 0 0 13px;
    padding: 12px 0;
    border: 0;
    border-top: 1px solid #e3e9de;
    border-bottom: 1px solid #e3e9de;
    border-radius: 0;
    box-shadow: none;
  }

  .grab01-page .grab01-cfg {
    margin-top: 0;
  }

  .grab01-page .grab01-cfg-btn {
    min-height: 40px;
    padding: 9px 11px;
    font-size: 12px;
  }

  .grab01-page .grab01-config-submit {
    display: none !important;
  }

  .grab01-page .grab01-actions {
    margin: 12px 0 0 !important;
    padding: 11px !important;
    border: 1px solid #dce6d5;
    border-radius: 10px;
    background: #f7faf4;
    box-shadow: none;
  }

  .grab01-page .grab01-actions::before {
    font-size: 12px;
    font-weight: 600;
  }

  .grab01-page .grab01-actions .grab01-btn {
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
  }

  .grab01-page .grab01-tabs-card {
    padding: 15px 12px;
  }

  .grab01-page .grab01-tab {
    font-size: 12px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .grab01-page .grab01-actions a[href^="tel:"]::after {
    display: none;
    animation: none;
  }

  .grab01-page .grab01-cfg-btn {
    transition: none;
  }
}

/* Прокрутка остаётся у документа: внутренний scroll-контейнер body
   иначе мешает position: sticky у галереи. */
body.grab01-loaded {
  overflow: visible !important;
}

/* Точечное обновление параметров: читаемый текст и компактные строки.
   Галерея, заголовок, цена и основные кнопки связи не меняются. */
#ggcfg {
  gap: 14px;
}

#ggcfg .grab01-cfg-label {
  color: #111;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
}

#ggcfg .grab01-cfg-group {
  gap: 7px;
}

#ggcfg .grab01-cfg-options {
  gap: 6px;
}

#ggcfg .grab01-cfg-btn {
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid #b7beb4;
  border-radius: 6px;
  background: #fff;
  color: #111;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  box-shadow: none;
}

#ggcfg .grab01-cfg-btn:hover {
  border-color: #707b69;
  background: #f6f7f5;
}

#ggcfg .grab01-cfg-btn.is-active {
  border-color: #697462;
  background: #edf0eb;
  color: #111;
  box-shadow: inset 0 0 0 1px #697462;
}

#ggcfg .grab01-service-list {
  gap: 7px;
}

#ggcfg .grab01-service {
  box-sizing: border-box;
  gap: 9px;
  min-height: 52px;
  margin: 0;
  padding: 10px;
  border: 1px solid #b7beb4;
  border-radius: 7px;
  background: #fff;
}

#ggcfg .grab01-service:hover {
  border-color: #7d8875;
  background: #f7f8f5;
}

#ggcfg .grab01-service:has(input:checked) {
  border-color: #697462;
  background: #edf0eb;
  box-shadow: inset 0 0 0 1px #697462;
}

#ggcfg .grab01-service input {
  width: 20px;
  height: 20px;
  accent-color: #53614b;
}

#ggcfg .grab01-service-copy > span {
  color: #111;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.4;
}

#ggcfg .grab01-service-copy small {
  color: #333;
  font-size: 12px;
  line-height: 1.4;
}

#ggcfg .grab01-service strong {
  color: #111;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}

#ggcfg .grab01-calc-note {
  color: #222;
  font-size: 13px;
  line-height: 1.5;
}

#ggcfg .grab01-calc-note:empty {
  display: none;
}

#ggcfg .grab01-config-submit {
  min-height: 44px;
  color: #1b2917 !important;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.4;
}

.grab01-page button.grab01-open-favorites.is-saved {
  border-color: #8b9a82;
  background: #edf2e9;
}

.grab01-page button.grab01-open-favorites.is-saved .fa-heart-o::before {
  content: '\f004';
}

@media (max-width: 360px) {
  #ggcfg .grab01-service {
    gap: 7px;
    padding: 9px;
  }

  #ggcfg .grab01-service strong {
    font-size: 13px;
  }
}
