/* Crystal Shop inner pages: engraving + HoReCa. Builds on home.css tokens. */
.cs-home .cs-hero .cs-meta{font-family:var(--f-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--on-dark-2)}
.cs-home .cs-hero .cs-figs-w{width:100%;max-width:560px}

/* solo vitrine (engraving page) */
.cs-vit.cs-vit-solo .cs-pos-wine{left:28%;top:9%;height:84%}
.cs-vit.cs-vit-solo .cs-cap-wine{right:6%;bottom:5%}
.cs-vit.cs-vit-solo .cs-stage-tag{top:auto;bottom:5%;left:6%}

/* hero photo (HoReCa page) */
.cs-home .cs-bhero-img{align-self:stretch}
.cs-home .cs-bhero-img img{width:100%;height:100%;aspect-ratio:4/5;max-height:680px;object-fit:cover;border-radius:2px}

/* numbered cards */
.cs-home .cs-cards.e-con{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0}
.cs-home .cs-ucard.e-con{display:flex;flex-direction:column;gap:14px;padding:28px 26px 30px;background:var(--white);border:1px solid var(--line);border-radius:2px;min-width:0}
.cs-home .cs-ucard .cs-sample{font-family:var(--f-script);font-size:30px;line-height:1.1;color:#8f877c;min-height:44px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.cs-home .cs-ucard .cs-sample.is-caps{font-family:var(--f-display);letter-spacing:.2em;font-size:24px}
.cs-home .cs-ucard .cs-h3 .elementor-heading-title{font-size:26px}
.cs-home .cs-ucard .cs-card-text{color:var(--muted);font-size:15px;line-height:1.6}

/* engraving tool block */
.cs-home .cs-toolsec.e-con{background:var(--porcelain)}
.cs-home .cs-use-w{display:flex;justify-content:flex-end}
.cs-use{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:var(--on-dark);border:1px solid var(--ink);border-radius:2px;padding:16px 26px;font:700 13px/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;box-shadow:none}
.cs-use:hover,.cs-use:focus{background:var(--ink-3);color:var(--on-dark);border-color:var(--ink-3)}

/* technology */
.cs-home .cs-tech.e-con{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:64px;align-items:start;background:var(--ink);color:var(--on-dark)}
.cs-home .cs-tech-copy.e-con{display:flex;flex-direction:column;gap:22px;padding:0;position:sticky;top:32px}
.cs-home .cs-tech .cs-lead{color:var(--on-dark-2)}
.cs-spec{list-style:none;margin:0;padding:0;counter-reset:spec;border-top:1px solid var(--line-dark)}
.cs-spec li{counter-increment:spec;display:grid;grid-template-columns:64px minmax(0,1fr);gap:4px 16px;padding:28px 0;border-bottom:1px solid var(--line-dark);margin:0}
.cs-spec li::before{content:counter(spec,decimal-leading-zero);grid-row:1 / span 2;font:500 12px/1.9 var(--f-mono);letter-spacing:.14em;color:var(--champ)}
.cs-spec b{font-family:var(--f-display);font-weight:400;font-size:28px;line-height:1.1;color:var(--on-dark)}
.cs-spec span{color:var(--on-dark-2);font-size:15px;line-height:1.6}

/* feature with photo */
.cs-home .cs-feat.e-con{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:72px;align-items:center}
.cs-home .cs-feat-copy.e-con{display:flex;flex-direction:column;align-items:flex-start;gap:22px;padding:0}
.cs-home .cs-feat-copy .cs-intro{max-width:52ch}
.cs-home .cs-feat-img img{width:100%;aspect-ratio:4/5;object-fit:contain;background:linear-gradient(180deg,#f4efe6 0%,#ece4d6 74%,#e5dbca 74.2%,#ebe3d5 100%);padding:6% 0;box-sizing:border-box;border-radius:50% 50% 4px 4px / 28% 28% 4px 4px}

/* order / quote */
.cs-home .cs-order.e-con{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:64px;align-items:start;background:var(--porcelain)}
.cs-home .cs-order-copy.e-con{display:flex;flex-direction:column;gap:24px;padding:0}
.cs-home .cs-order-copy .cs-intro{max-width:44ch}
.cs-home .cs-form-card{background:var(--white);border:1px solid var(--line);border-radius:2px;padding:36px 34px 30px}
.cs-home .cs-form-card .cs-mono{display:block;margin-bottom:18px}
.cs-home .cs-tick{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cs-home .cs-tick li{position:relative;padding-left:22px;margin:0;font-size:15px}
.cs-home .cs-tick li::before{content:"";position:absolute;left:0;top:.8em;width:12px;height:1px;background:var(--champ-deep)}

/* WPForms skin */
.cs-home div.wpforms-container-full{margin:0}
.cs-home div.wpforms-container-full .wpforms-form .wpforms-field{padding:0 0 18px}
.cs-home div.wpforms-container-full .wpforms-form .wpforms-field-label{font:500 11px/1.3 var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.cs-home div.wpforms-container-full .wpforms-form .wpforms-required-label{color:var(--champ-deep)}
.cs-home div.wpforms-container-full .wpforms-form input[type=text],
.cs-home div.wpforms-container-full .wpforms-form input[type=email],
.cs-home div.wpforms-container-full .wpforms-form input[type=number],
.cs-home div.wpforms-container-full .wpforms-form select,
.cs-home div.wpforms-container-full .wpforms-form textarea{width:100%;max-width:100%;height:auto;min-height:48px;box-sizing:border-box;background:var(--paper);border:1px solid var(--line);border-radius:2px;color:var(--text);font:500 16px/1.4 var(--f-body);padding:12px 14px;box-shadow:none}
.cs-home div.wpforms-container-full .wpforms-form textarea{min-height:120px}
.cs-home div.wpforms-container-full .wpforms-form input:focus,
.cs-home div.wpforms-container-full .wpforms-form select:focus,
.cs-home div.wpforms-container-full .wpforms-form textarea:focus{border-color:var(--champ-deep);background:var(--white);outline:none;box-shadow:0 0 0 3px rgba(216,192,139,.25)}
.cs-home div.wpforms-container-full .wpforms-form ul li{margin:0 0 8px!important}
.cs-home div.wpforms-container-full .wpforms-form ul li label{font-size:15px;color:var(--text)}
.cs-home div.wpforms-container-full .wpforms-form input[type=checkbox]{accent-color:var(--champ-deep)}
.cs-home div.wpforms-container-full .wpforms-form .wpforms-submit-container{padding-top:8px}
.cs-home div.wpforms-container-full .wpforms-form button[type=submit]{background:var(--ink);color:var(--on-dark);border:1px solid var(--ink);border-radius:2px;height:auto;padding:17px 28px;font:700 13px/1 var(--f-body);letter-spacing:.12em;text-transform:uppercase;box-shadow:none}
.cs-home div.wpforms-container-full .wpforms-form button[type=submit]:hover{background:var(--ink-3);border-color:var(--ink-3)}
.cs-home div.wpforms-container-full .wpforms-form .wpforms-error,.cs-home div.wpforms-container-full .wpforms-form label.wpforms-error{color:#9b2335;font-size:13px}
.cs-home .wpforms-confirmation-container-full{background:var(--paper);border:1px solid var(--champ);color:var(--text);border-radius:2px;padding:20px}

/* FAQ */
.cs-home .cs-faq.e-con{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start}
.cs-faq-list{border-top:1px solid var(--line)}
.cs-faq-list details{border-bottom:1px solid var(--line)}
.cs-faq-list summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:24px;padding:24px 0;font-family:var(--f-display);font-size:24px;line-height:1.2}
.cs-faq-list summary::-webkit-details-marker{display:none}
.cs-faq-list summary::after{content:"+";font:400 22px/1 var(--f-body);color:var(--champ-deep);transition:transform .2s}
.cs-faq-list details[open] summary::after{transform:rotate(45deg)}
.cs-faq-list p{margin:0;padding:0 48px 24px 0;color:var(--muted)}

/* segments */
.cs-segs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.cs-segs li{margin:0;padding:32px 28px 34px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:10px;min-width:0;background:var(--white)}
.cs-segs i{font:normal 500 11px/1 var(--f-mono);letter-spacing:.14em;color:var(--champ-deep)}
.cs-segs b{font-family:var(--f-display);font-weight:400;font-size:30px;line-height:1.05}
.cs-segs span{color:var(--muted);font-size:15px}

/* brands */
.cs-home .cs-marks.e-con{background:var(--wine);color:var(--on-dark)}
.cs-home .cs-marks .cs-intro{color:var(--on-dark-2)}
.cs-brandlist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line-dark);border:1px solid var(--line-dark)}
.cs-brandlist li{margin:0;background:var(--wine);padding:34px 26px 36px;display:flex;flex-direction:column;gap:12px;min-width:0}
.cs-brandlist i{font:normal 500 11px/1 var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--champ)}
.cs-brandlist b{font-family:var(--f-display);font-weight:400;font-size:34px;line-height:1}
.cs-brandlist span{color:var(--on-dark-2);font-size:15px;line-height:1.6}

/* why */
.cs-reasons{list-style:none;margin:0;padding:0;counter-reset:r;border-top:1px solid var(--line)}
.cs-reasons li{counter-increment:r;display:grid;grid-template-columns:56px minmax(0,1fr);gap:16px;padding:22px 0;border-bottom:1px solid var(--line);margin:0;font-size:17px;line-height:1.55}
.cs-reasons li::before{content:counter(r,decimal-leading-zero);font:500 12px/2 var(--f-mono);letter-spacing:.14em;color:var(--champ-deep)}

@media (max-width:1100px){
  .cs-home .cs-cards.e-con,.cs-brandlist{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .cs-home .cs-tech.e-con,.cs-home .cs-feat.e-con,.cs-home .cs-order.e-con,.cs-home .cs-faq.e-con{grid-template-columns:minmax(0,1fr);gap:40px}
  .cs-home .cs-tech-copy.e-con{position:static}
  .cs-segs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cs-home .cs-bhero-img img{aspect-ratio:16/11}
  .cs-home .cs-feat-img img{max-width:440px;margin-inline:auto}
}
@media (max-width:640px){
  .cs-home .cs-cards.e-con,.cs-brandlist,.cs-segs{grid-template-columns:minmax(0,1fr)}
  .cs-home .cs-form-card{padding:26px 18px 22px}
  .cs-home .cs-use-w{justify-content:stretch}.cs-use{width:100%;justify-content:center}
  .cs-faq-list summary{font-size:21px}
  .cs-spec b{font-size:24px}
}
/* fixes */
.cs-home .cs-feat-img img{background:none;padding:0;border-radius:0;mix-blend-mode:multiply;aspect-ratio:auto;height:100%;max-height:620px;width:auto;margin-inline:auto;object-fit:contain}
.cs-home .cs-feat-img .elementor-widget-container{display:flex;justify-content:center;padding:7% 0 5%;background:linear-gradient(180deg,#f4efe6 0%,#ece4d6 74%,#e5dbca 74.2%,#ebe3d5 100%);border-radius:50% 50% 4px 4px / 28% 28% 4px 4px;isolation:isolate}
.cs-home .cs-faq-head.e-con,.cs-home .cs-why-copy.e-con,.cs-home .cs-quote-aside.e-con{display:flex;flex-direction:column;gap:20px;padding:0}
.cs-home .cs-form-card.e-con{display:block}
@media (max-width:900px){.cs-home .cs-feat-img img{max-height:480px}}
.cs-home .cs-hero .cs-figs b{font-size:clamp(30px,3.2vw,44px);white-space:nowrap}
.cs-home .cs-hero .cs-figs > div{padding-right:12px}
.cs-home .cs-hero .cs-figs > div + div{padding-left:16px}

/* three brands */
.cs-brandlist{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:640px){.cs-brandlist{grid-template-columns:minmax(0,1fr)}}
