.cntct-hero{padding:140px 36px 64px;background:#1b1b18;color:#faf9f6;text-align:center}.cntct-hero_inner{max-width:720px;margin:0 auto}.cntct-hero_hdln{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:700;letter-spacing:-.02em;margin-bottom:16px;line-height:1.18}.cntct-hero_sub{font-size:clamp(.92rem,1.4vw,1.05rem);color:rgba(250,249,246,.72);line-height:1.72;max-width:580px;margin:0 auto}.cntct-main{padding:80px 36px;max-width:1280px;margin:0 auto}.cntct-main_inner{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;align-items:flex-start}.cntct-form_hdg{font-size:clamp(1.2rem,2.2vw,1.6rem);font-weight:700;color:#1b1b18;margin-bottom:28px}.cntct-form{display:flex;flex-direction:column;gap:20px}.cntct-field{display:flex;flex-direction:column;gap:6px}.cntct-field_label{font-size:13px;font-weight:600;color:#1b1b18;letter-spacing:.02em}.cntct-field_req{color:#b5452a}.cntct-field_input,.cntct-field_select,.cntct-field_textarea{font-family:inherit;font-size:14px;padding:12px 14px;border:1px solid rgba(27,27,24,.14);border-radius:4px;background:#faf9f6;color:#1b1b18;transition:border-color .2s ease,box-shadow .2s ease;outline:none;width:100%}.cntct-field_input:focus,.cntct-field_select:focus,.cntct-field_textarea:focus{border-color:rgba(27,27,24,.4);box-shadow:0 0 0 3px rgba(27,27,24,.06)}.cntct-field_input.has-error,.cntct-field_select.has-error,.cntct-field_textarea.has-error{border-color:#b5452a}.cntct-field_textarea{resize:vertical;min-height:120px}.cntct-field_select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231b1b18' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}.cntct-field_err{font-size:12px;color:#b5452a;min-height:16px;line-height:1.3}.cntct-cart-preview{background:#f5f4ef;border:1px solid rgba(27,27,24,.08);border-radius:5px;padding:18px 20px;display:none}.cntct-cart-preview.is-visible{display:block}.cntct-cart-preview_hdg{font-size:14px;font-weight:600;color:#1b1b18;margin-bottom:12px;display:flex;align-items:center;gap:6px}.cntct-cart-preview_hdg i{font-size:16px;color:#c8b68e}.cntct-cart-preview_list{display:flex;flex-direction:column;gap:8px}.cntct-cart-pitem{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#3d3d38;padding:6px 0;border-bottom:1px solid rgba(27,27,24,.06)}.cntct-cart-pitem:last-child{border-bottom:none}.cntct-cart-pitem_name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:10px}.cntct-cart-pitem_qty{font-size:12px;color:#5a5a54;margin-right:12px;white-space:nowrap}.cntct-cart-pitem_price{font-weight:600;color:#1b1b18;white-space:nowrap}.cntct-cart-preview_total{font-size:14px;font-weight:700;color:#1b1b18;text-align:right;margin-top:10px;padding-top:10px;border-top:1px solid rgba(27,27,24,.12)}.cntct-form_submit{padding:14px 32px;background:#1b1b18;color:#faf9f6;border:none;border-radius:3px;font-size:15px;font-weight:600;cursor:pointer;transition:background .22s ease,transform .18s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;align-self:flex-start}.cntct-form_submit:hover{background:#343430;transform:translateY(-1px)}.cntct-form_submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.cntct-info-col{display:flex;flex-direction:column;gap:32px}.cntct-info-block{background:#fff;border:1px solid rgba(27,27,24,.06);border-radius:7px;padding:28px 24px}.cntct-info_hdg{font-size:clamp(1.1rem,2vw,1.4rem);font-weight:700;color:#1b1b18;margin-bottom:22px}.cntct-info_subhdg{font-size:15px;font-weight:700;color:#1b1b18;margin-bottom:10px}.cntct-info_desc{font-size:13px;color:#5a5a54;line-height:1.72}.cntct-info-item{display:flex;gap:14px;padding:14px 0;border-bottom:1px solid rgba(27,27,24,.05)}.cntct-info-item:last-child{border-bottom:none}.cntct-info-item_ic{font-size:20px;color:#c8b68e;flex-shrink:0;margin-top:2px}.cntct-info-item_txt{display:flex;flex-direction:column;gap:2px}.cntct-info-item_label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:rgba(27,27,24,.4);font-weight:600}.cntct-info-item_txt p{font-size:14px;color:#3d3d38;line-height:1.6;margin:0}.cntct-info-item_link{font-size:14px;color:#1b1b18;transition:opacity .2s ease}.cntct-info-item_link:hover{opacity:.7}.cntct-map-band{padding:0 36px 80px;max-width:1280px;margin:0 auto}.cntct-map-band_inner{background:#f5f4ef;border-radius:7px;padding:40px 36px;text-align:center}.cntct-map-card_ic{font-size:32px;color:#c8b68e;margin-bottom:12px;display:block}.cntct-map-card_name{font-size:17px;font-weight:700;color:#1b1b18;margin-bottom:8px}.cntct-map-card_addr{font-size:14px;color:#3d3d38;line-height:1.6;margin-bottom:6px}.cntct-map-card_note{font-size:13px;color:#5a5a54}.ty-popup-overlay{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:2000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .3s ease}.ty-popup-overlay.is-visible{opacity:1;pointer-events:auto}.ty-popup{background:#fff;border-radius:8px;padding:44px 36px;max-width:440px;width:90%;text-align:center;transform:scale(.92);transition:transform .3s cubic-bezier(.4,0,.2,1)}.ty-popup-overlay.is-visible .ty-popup{transform:scale(1)}.ty-popup_ic{font-size:48px;color:#6a9a3a;margin-bottom:16px;display:block}.ty-popup_hdg{font-size:18px;font-weight:700;color:#1b1b18;margin-bottom:10px}.ty-popup_msg{font-size:14px;color:#5a5a54;line-height:1.68;margin-bottom:24px}.ty-popup_close{padding:11px 28px;background:#1b1b18;color:#faf9f6;border:none;border-radius:3px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s ease}.ty-popup_close:hover{background:#343430}@media(max-width:768px){.cntct-hero{padding:110px 22px 48px}.cntct-main{padding:56px 22px}.cntct-main_inner{grid-template-columns:1fr;gap:40px}.cntct-form_submit{width:100%}.cntct-map-band{padding:0 22px 56px}.cntct-map-band_inner{padding:28px 20px}}@media(max-width:480px){.cntct-hero{padding:96px 16px 40px}.cntct-main{padding:40px 16px}.cntct-map-band{padding:0 16px 40px}}