.breadcrumb{max-width:1180px;margin:0 auto;padding:14px 32px 0}
.product-page{
  max-width:1180px;
  margin:0 auto;
  padding:24px 32px 0;
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:48px;
  align-items:start;
}
.product-image{
  width:100%;
  background:var(--white);
  border:1px solid var(--warm-100);
  border-radius:var(--r-lg);
  display:flex;align-items:center;justify-content:center;
  overflow:hidden;
}
.product-image-desk{aspect-ratio:3/4}
.product-image-desk img{max-width:85%;max-height:85%;object-fit:contain}
.product-image-mob{display:none;aspect-ratio:3/4}
.product-image-mob img{width:100%;height:100%;object-fit:contain;padding:12px}
.product-image .no-img{font-size:80px;color:var(--warm-200)}
.p-series{
  font-size:11px;font-weight:700;
  letter-spacing:2px;text-transform:uppercase;
  color:var(--accent);
  margin-bottom:4px;
}
.p-category{font-size:12px;color:var(--light);margin-bottom:8px}
.p-name{font-size:28px;font-weight:800;letter-spacing:-.5px;margin-bottom:12px;line-height:1.2}
.p-price{
  font-size:34px;font-weight:800;
  margin-bottom:28px;
  display:flex;align-items:baseline;gap:8px;
}
.p-price .currency{font-size:16px;font-weight:500;color:var(--light)}
.info-label{
  font-size:11px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  color:var(--light);
  margin-bottom:8px;
}
.info-section{margin-bottom:20px}
.colors-list{display:flex;gap:10px;flex-wrap:wrap}
.color-item{display:flex;flex-direction:column;align-items:center;gap:4px;width:52px}
.color-thumb{
  width:42px;height:42px;
  border-radius:8px;
  border:1.5px solid var(--warm-100);
  overflow:hidden;
}
.color-thumb img{width:100%;height:100%;object-fit:cover}
.color-thumb .color-fill{width:100%;height:100%}
.color-name{font-size:9px;color:var(--light);text-align:center;line-height:1.2;font-weight:500}
.frames-list{display:flex;gap:6px;flex-wrap:wrap}
.frame-tag{
  padding:6px 14px;
  background:var(--white);
  border:1px solid var(--warm-100);
  border-radius:8px;
  font-size:12px;font-weight:500;
  color:var(--mid);
}
.btn-configure{
  display:block;width:100%;
  padding:16px;
  background:var(--accent);color:#fff;
  border:none;
  border-radius:var(--r);
  font-family:var(--font);
  font-size:14px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;
  cursor:pointer;
  transition:all .2s;
  text-align:center;
  margin-top:8px;
}
.btn-configure:hover{background:var(--accent-dark);transform:translateY(-1px)}
.p-divider{height:1px;background:var(--warm-100);margin:24px 0}
.specs-title{
  font-size:11px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  color:var(--light);
  margin-bottom:10px;
}
.specs-row{
  display:flex;justify-content:space-between;
  padding:9px 0;
  border-bottom:1px solid var(--warm-100);
  font-size:13px;
}
.specs-row:last-child{border-bottom:none}
.specs-key{color:var(--light)}
.specs-val{font-weight:600;text-align:right}
.modal-overlay{
  position:fixed;inset:0;
  background:rgba(0,0,0,.5);
  backdrop-filter:blur(4px);
  z-index:1000;
  display:none;
  align-items:center;justify-content:center;
  padding:16px;
}
.modal-overlay.active{display:flex}
.modal{
  background:var(--white);
  border-radius:var(--r-lg);
  width:100%;max-width:540px;
  max-height:88vh;
  overflow:hidden;
  animation:modalIn .3s ease;
  display:flex;flex-direction:column;
  transition:max-width .3s ease;
}
.modal.wide{max-width:860px}
@keyframes modalIn{
  from{opacity:0;transform:scale(.96) translateY(10px)}
  to{opacity:1;transform:scale(1) translateY(0)}
}
.modal-top{padding:20px 24px 0;flex-shrink:0}
.modal-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.modal-title-row h3{font-size:16px;font-weight:800}
.modal-close{
  width:32px;height:32px;
  border-radius:8px;
  border:1px solid var(--warm-100);
  background:none;
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  font-size:14px;color:var(--light);
  transition:all .2s;
}
.modal-close:hover{border-color:var(--dark);color:var(--dark)}
.wizard-progress{display:flex;gap:6px;margin-bottom:16px}
.wizard-dot{
  flex:1;height:3px;
  border-radius:2px;
  background:var(--warm-100);
  transition:background .3s;
}
.wizard-dot.done,.wizard-dot.current{background:var(--accent)}
.wizard-step-label{
  font-size:10px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;
  color:var(--light);
  margin-bottom:2px;
}
.wizard-step-title{font-size:18px;font-weight:800;margin-bottom:16px}
.modal-steps{flex:1;overflow-y:auto;padding:0 24px}
.wizard-step{display:none}
.wizard-step.active{display:block}
.wiz-type-label{font-size:11px;font-weight:600;color:var(--mid);margin:10px 0 6px}
.wiz-colors{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(72px,1fr));
  gap:8px;
  margin-bottom:6px;
}
.wiz-color{
  display:flex;flex-direction:column;align-items:center;gap:5px;
  cursor:pointer;
  padding:6px 4px;
  border-radius:8px;
  border:2px solid transparent;
  transition:all .2s;
}
.wiz-color:hover{background:var(--warm-50)}
.wiz-color.active{border-color:var(--accent);background:var(--accent-light)}
.wiz-color-circle{
  width:48px;height:48px;
  border-radius:8px;
  overflow:hidden;
  border:1px solid var(--warm-100);
}
.wiz-color-circle img{width:100%;height:100%;object-fit:cover}
.wiz-color-circle .fill{width:100%;height:100%}
.wiz-color-name{
  font-size:9px;color:var(--mid);
  text-align:center;line-height:1.2;font-weight:500;
}
.wiz-color.active .wiz-color-name{color:var(--accent);font-weight:700}
.wiz-frames{display:flex;flex-direction:column;gap:6px}
.wiz-frame{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 16px;
  border:1.5px solid var(--warm-100);
  border-radius:var(--r);
  cursor:pointer;
  transition:all .2s;
}
.wiz-frame:hover{border-color:var(--warm-200)}
.wiz-frame.active{border-color:var(--accent);background:var(--accent-light)}
.wiz-frame-left{display:flex;align-items:center;gap:10px}
.wiz-frame-radio{
  width:18px;height:18px;
  border-radius:50%;
  border:2px solid var(--warm-200);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;
  transition:all .2s;
}
.wiz-frame.active .wiz-frame-radio{border-color:var(--accent)}
.wiz-frame.active .wiz-frame-radio::after{
  content:'';
  width:8px;height:8px;
  border-radius:50%;
  background:var(--accent);
}
.wiz-frame-name{font-size:13px;font-weight:700}
.wiz-frame-desc{font-size:11px;color:var(--light)}
.wiz-frame-price{font-size:13px;font-weight:700;white-space:nowrap;color:var(--accent)}
.wiz-result-layout{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
  align-items:start;
}
.wiz-result-img{
  width:100%;
  aspect-ratio:3/4;
  background:var(--warm-50);
  border-radius:var(--r);
  overflow:hidden;
  display:flex;align-items:center;justify-content:center;
  padding:8px;
}
.wiz-result-img img{width:100%;height:100%;object-fit:contain;display:block}
.wiz-result-img .no-img{font-size:60px;color:var(--warm-200)}
.wiz-result-price{display:flex;align-items:baseline;gap:6px;margin-bottom:16px}
.wiz-result-price .amount{font-size:36px;font-weight:800}
.wiz-result-price .cur{font-size:16px;font-weight:500;color:var(--light)}
.wiz-result-summary{
  background:var(--warm-50);
  border-radius:var(--r);
  padding:14px 18px;
  font-size:12px;color:var(--mid);
  line-height:1.7;
}
.wiz-result-summary .label{
  color:var(--light);
  font-size:10px;text-transform:uppercase;
  letter-spacing:1px;font-weight:700;
}
.wiz-result-summary .val{color:var(--dark);font-weight:700}
.inquiry-form{
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid var(--warm-100);
}
.inquiry-form h4{font-size:14px;font-weight:800;margin-bottom:4px}
.inquiry-form .inq-sub{font-size:11px;color:var(--light);margin-bottom:14px}
.inq-field{margin-bottom:10px}
.inq-field input,.inq-field textarea{
  width:100%;
  padding:11px 14px;
  border:1.5px solid var(--warm-100);
  border-radius:8px;
  font-family:var(--font);
  font-size:13px;
  outline:none;
  transition:border-color .2s;
}
.inq-field input:focus,.inq-field textarea:focus{border-color:var(--accent)}
.inq-field textarea{resize:vertical;min-height:50px}
.inq-field-row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.btn-inquiry{
  width:100%;
  padding:14px;
  background:#16A34A;color:#fff;
  border:none;
  border-radius:var(--r);
  font-family:var(--font);
  font-size:13px;font-weight:700;
  letter-spacing:.5px;text-transform:uppercase;
  cursor:pointer;
  transition:opacity .2s;
  margin-top:4px;
}
.btn-inquiry:hover{opacity:.85}
.btn-inquiry:disabled{opacity:.5;cursor:not-allowed}
.inq-success{
  text-align:center;
  padding:24px 0;
  margin-top:20px;
  border-top:1px solid var(--warm-100);
}
.inq-success .inq-icon{font-size:36px;margin-bottom:8px;display:block}
.inq-success h4{font-size:15px;font-weight:800;color:#16A34A;margin-bottom:4px}
.inq-success p{font-size:12px;color:var(--light)}
.modal-bottom{
  padding:14px 24px 20px;
  flex-shrink:0;
  display:flex;gap:10px;
  border-top:1px solid var(--warm-100);
}
.btn-wiz{
  flex:1;
  padding:13px;
  border:none;
  border-radius:var(--r);
  font-family:var(--font);
  font-size:13px;font-weight:600;
  cursor:pointer;
  transition:all .2s;
  text-align:center;
}
.btn-wiz-back{background:var(--warm-50);color:var(--dark)}
.btn-wiz-back:hover{background:var(--warm-100)}
.btn-wiz-next{background:var(--accent);color:#fff}
.btn-wiz-next:hover{background:var(--accent-dark)}
.similar{max-width:1180px;margin:0 auto;padding:56px 32px 72px}
.similar-title{
  font-size:11px;font-weight:700;
  letter-spacing:2px;text-transform:uppercase;
  color:var(--light);
  margin-bottom:16px;
}
.similar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.card{
  border:1px solid var(--warm-100);
  border-radius:var(--r);
  overflow:hidden;
  background:var(--white);
  text-decoration:none;
  color:inherit;
  display:block;
  transition:all .25s;
}
.card:hover{
  border-color:var(--warm-200);
  transform:translateY(-2px);
  box-shadow:0 8px 24px rgba(0,0,0,.04);
}
.card-img{
  aspect-ratio:3/4;
  background:var(--warm-50);
  overflow:hidden;
  display:flex;align-items:center;justify-content:center;
}
.card-img img{width:100%;height:100%;object-fit:contain;transition:transform .4s}
.card:hover .card-img img{transform:scale(1.02)}
.card-img .no-img{color:var(--warm-200);font-size:40px}
.card-body{padding:12px 14px 14px}
.card-name{font-size:13px;font-weight:700;margin-bottom:10px}
.card-footer{display:flex;align-items:center;justify-content:space-between}
.card-price{font-size:16px;font-weight:800}
.card-price small{font-size:11px;color:var(--light);font-weight:400;margin-left:2px}
.card-btn{
  width:28px;height:28px;
  border-radius:6px;
  background:var(--warm-50);
  display:flex;align-items:center;justify-content:center;
  font-size:12px;color:var(--mid);
  transition:all .2s;
}
.card:hover .card-btn{background:var(--accent);color:#fff}
@media(max-width:900px){
  .product-page{grid-template-columns:1fr;gap:24px}
  .similar-grid{grid-template-columns:repeat(2,1fr)}
  .wiz-result-layout{grid-template-columns:1fr}
}
@media(max-width:768px){
  .product-image-desk{display:none}
  .product-image-mob{display:flex;border-radius:var(--r)}
  .inq-field-row{grid-template-columns:1fr}
}
@media(max-width:480px){
  .p-name{font-size:22px}
  .p-price{font-size:28px}
  .similar-grid{gap:10px}
  .modal{max-height:95vh;border-radius:16px 16px 0 0;align-self:flex-end}
}
.config-hint{
  background:var(--accent-light);
  border-radius:var(--r);
  padding:14px 18px;
  margin:8px 0;
  display:flex;align-items:flex-start;gap:10px;
}
.config-hint-icon{font-size:18px;flex-shrink:0;margin-top:1px}
.config-hint-title{font-size:13px;font-weight:700;color:var(--dark);margin-bottom:2px}
.config-hint-text{font-size:11px;color:var(--mid)}
.btn-configure--dark{background:var(--dark)}
.btn-configure--dark:hover{background:#000}
.quick-inquiry{display:none;margin-top:12px}
.quick-inquiry.active{display:block}
.quick-inquiry-box{
  background:var(--white);
  border:1px solid var(--warm-100);
  border-radius:var(--r-lg);
  padding:24px;
}
.quick-inquiry-box h3{font-size:15px;font-weight:800;margin-bottom:4px}
.quick-inquiry-box p{font-size:12px;color:var(--light);margin-bottom:14px}
.qi-color-picker-label{
  font-size:11px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;
  color:var(--light);
  display:block;margin-bottom:6px;
}
.qi-color{
  cursor:pointer;
  padding:4px;
  border-radius:8px;
  border:2px solid transparent;
  transition:all .2s;
  display:flex;flex-direction:column;align-items:center;gap:3px;
  width:56px;
}
.qi-color-thumb{
  width:40px;height:40px;
  border-radius:6px;
  border:1px solid var(--warm-100);
  overflow:hidden;
}
.qi-color-thumb img{width:100%;height:100%;object-fit:cover}
.qi-color-thumb .fill{width:100%;height:100%}
.qi-color-name{font-size:8px;color:var(--light);text-align:center;line-height:1.2}
.qi-input-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
.qi-input{
  width:100%;
  padding:11px 14px;
  border:1.5px solid var(--warm-100);
  border-radius:8px;
  font-family:var(--font);
  font-size:13px;
  outline:none;
}
.qi-input:focus{border-color:var(--accent)}
textarea.qi-input{resize:vertical}
.qi-submit{
  width:100%;
  padding:14px;
  background:#16A34A;color:#fff;
  border:none;
  border-radius:var(--r);
  font-family:var(--font);
  font-size:13px;font-weight:700;
  text-transform:uppercase;
  cursor:pointer;
}
.qi-submit:hover{opacity:.85}
.qi-success{display:none;text-align:center;padding:20px 0}
.qi-success.active{display:block}
.qi-success-icon{font-size:32px;margin-bottom:8px}
.qi-success-title{font-size:15px;font-weight:800;color:#16A34A}
.qi-success-text{font-size:12px;color:var(--light)}
.financing{display:flex;gap:8px;margin-top:8px}
.financing-btn{
  flex:1;padding:8px 10px;
  border:none;border-radius:var(--r);
  text-decoration:none;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:4px;
  transition:all .2s;
}
.financing-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.financing-dsk{background:#7ac043}
.financing-tbi{background:#fe6b14}
.financing-label{
  font-size:8px;font-weight:600;
  color:rgba(255,255,255,.8);
  letter-spacing:1px;text-transform:uppercase;
}
.financing-logo{height:22px;object-fit:contain}
.p-price--inquiry{font-size:26px;color:var(--accent)}
.p-price--inquiry .currency{
  font-size:12px;font-weight:500;color:var(--light);
  display:block;margin-top:4px;letter-spacing:.5px;
}
.wiz-result-price--inquiry{font-size:26px;color:var(--accent)}
.wiz-result-price-note{
  font-size:11px;color:var(--light);
  margin-top:-10px;margin-bottom:14px;
}
.thumb-row{display:flex;gap:8px;margin-top:8px}
.thumb-item{
  width:64px;height:80px;
  border-radius:8px;
  border:1.5px solid var(--warm-100);
  overflow:hidden;
  cursor:pointer;
  background:var(--warm-50);
  display:flex;align-items:center;justify-content:center;
  transition:border-color .2s;
}
.thumb-item.active{border-color:var(--accent)}
.thumb-item img{max-width:90%;max-height:90%;object-fit:contain}
