/* Cart additions: loaded after the site's existing styles. */
.cart-link{position:relative;display:inline-flex;align-items:center;gap:7px;border:1px solid #504450;padding:11px 12px;white-space:nowrap;color:#f6e7f3;font:11px/1.3 'Courier New',monospace;letter-spacing:.06em;text-transform:uppercase}
.cart-link:hover,.cart-link:focus-visible{border-color:#c9b9c8;color:white}
.cart-count{display:inline-flex;min-width:21px;height:21px;padding:0 4px;align-items:center;justify-content:center;background:#c9b9c8;color:#100d11;font-weight:700}
.cart-add{background:#e8dfe7!important;color:#1a111b!important;border:1px solid #e8dfe7!important;padding:11px 12px;cursor:pointer;text-align:center;font-family:'Courier New',monospace;font-size:10px;letter-spacing:.04em;transition:filter .2s}
.cart-add:hover,.cart-add:focus-visible{filter:brightness(.8)}
.cart-add.detail-buy{font-size:12px;padding:18px 23px}
#cart-toast{position:fixed;right:18px;bottom:18px;z-index:999;background:#ddd0db;color:#130f14;border:1px solid #fff;padding:16px 19px;box-shadow:0 15px 40px #000a;font:12px/1.4 'Courier New',monospace;opacity:0;transform:translateY(15px);pointer-events:none;transition:opacity .25s,transform .25s;max-width:min(400px,calc(100vw - 36px))}
#cart-toast.show{opacity:1;transform:translateY(0)}
.cart-page .checkout-main{padding:65px 0 110px}
.cart-page .checkout-heading{border-bottom:1px solid #443744;padding-bottom:35px;margin-bottom:44px}
.cart-page .checkout-eyebrow{font:11px/1.6 'Courier New',monospace;letter-spacing:.15em;color:#b99fb0;text-transform:uppercase}
.cart-page h1{font:normal clamp(54px,9vw,112px)/.98 Georgia,serif;letter-spacing:-.05em;margin:15px 0 22px;text-transform:uppercase}
.cart-page h2{font:normal clamp(25px,3.8vw,42px)/1.15 Georgia,serif;margin:0 0 23px}
.cart-page .checkout-description{font:13px/1.75 'Courier New',monospace;color:#aaa0a9;max-width:720px}
.cart-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:38px;align-items:start}
.cart-panel{border:1px solid #49404a;background:#151318;padding:26px;margin-bottom:27px}
.cart-item{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:20px;align-items:center;padding:22px 0;border-top:1px solid #38313a}
.cart-item:first-child{border-top:0;padding-top:0}
.cart-item img{width:110px;height:110px;object-fit:contain;background:#e5e3e5}
.cart-item-title{font:normal 22px Georgia,serif;color:#f0e8ef}
.cart-item-title:hover{text-decoration:underline}
.cart-item-price{font:11px 'Courier New',monospace;color:#aaa0aa;margin:10px 0}
.cart-item-sum{font:normal 17px 'Courier New',monospace;white-space:nowrap}
.cart-item-tools{display:flex;align-items:center;gap:12px;margin-top:16px;font:12px 'Courier New',monospace}
.cart-item-tools button{min-width:30px;min-height:30px;border:1px solid #564956;background:transparent;color:#f0e8ef}
.cart-item-tools button:hover{background:#302731}
.cart-item-tools .cart-remove{margin-left:10px;border:none;text-decoration:underline;color:#ab9faa;letter-spacing:.08em;font-size:9px}
.checkout-field{display:flex;flex-direction:column;gap:9px;margin-bottom:20px}
.checkout-field label,.checkout-shipping-title{font:11px/1.5 'Courier New',monospace;color:#d5c6d1;letter-spacing:.07em}
.checkout-field input,.checkout-field textarea{background:#0b0b0e;color:#f5e9f2;border:1px solid #635460;padding:13px 14px;min-height:46px;border-radius:0;min-width:0;width:100%;font:14px Arial,sans-serif}
.checkout-field input:focus,.checkout-field textarea:focus{outline:2px solid #c9b9c8;outline-offset:1px}
.checkout-field textarea{height:220px;resize:vertical;font:12px/1.65 'Courier New',monospace}
.checkout-shipping{display:grid;gap:11px;margin:17px 0 25px}
.checkout-radio{display:flex;align-items:center;gap:13px;border:1px solid #574959;background:#18141a;padding:17px 15px;cursor:pointer;font:13px Arial,sans-serif}
.checkout-radio:has(input:checked){border-color:#d3bdd0;background:#281f29}
.checkout-radio input{accent-color:#d3bdd0;width:16px;height:16px}
.checkout-help{font:11px/1.7 'Courier New',monospace;color:#aea0ae}
.checkout-summary{position:sticky;top:22px;border:1px solid #6b5969;background:linear-gradient(145deg,#221b23,#141216);padding:29px 25px}
.checkout-summary-line{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #473946;font-size:13px}
.checkout-summary-total{font:normal 30px/1 Georgia,serif;margin-top:20px}
.checkout-summary small{color:#aca1aa;font:11px/1.7 'Courier New',monospace;display:block;margin:13px 0}
.checkout-button{width:100%;padding:17px 13px;background:#d2c2ce;color:#100d11;border:1px solid #d2c2ce;font:12px 'Courier New',monospace;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;margin:13px 0}
.checkout-button:hover{background:#eee2eb}
.checkout-secondary{display:block;text-align:center;color:#e8d9e4;text-decoration:underline;font:12px/1.6 'Courier New',monospace;margin-top:10px}
.cart-empty{padding:43px 0;text-align:center}
.cart-empty a{text-decoration:underline}
.order-status{font:12px/1.7 'Courier New',monospace;color:#c2e0ca}
.checkout-warning{border-left:2px solid #cbb7c8;padding:12px 15px;margin-top:22px;background:#241e25;font:11px/1.75 'Courier New',monospace;color:#d4c5d0}
[hidden]{display:none!important}
@media(max-width:1050px){.header-inner{gap:12px}.nav{gap:17px}.cart-link{padding:10px 8px}}
@media(max-width:780px){.cart-layout{grid-template-columns:1fr}.checkout-summary{position:static}.cart-page .checkout-main{padding:45px 0 70px}}
@media(max-width:690px){.cart-link{padding:8px;gap:4px;font-size:10px}.cart-link .cart-word{display:none}.cart-page h1{font-size:55px}.cart-page .cart-panel{padding:19px}.cart-item{grid-template-columns:80px minmax(0,1fr);gap:13px}.cart-item img{width:80px;height:80px}.cart-item-title{font-size:19px}.cart-item-sum{grid-column:2;justify-self:start}.cart-item-tools{gap:7px}.header-inner{gap:8px}.header-action{margin-left:auto}}
@media(max-width:380px){.cart-page h1{font-size:43px}.cart-link{margin-left:auto}.header-action{display:none}}

/* Stock markers: calm, consistent with NEFOR SHOP's dark design. */
.stock-indicator{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:14px 0 17px;color:#d5c5d1;font:10px/1.5 'Courier New',monospace;letter-spacing:.065em;text-transform:uppercase}
.stock-indicator strong{color:#f4e8f0;font-weight:700}
.stock-dot{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#c9b9c8;box-shadow:0 0 7px #c9b9c866}
.stock-indicator-detail{margin:13px 0 19px;font-size:11px}


/* Readability and city autocomplete improvements */
.checkout-help{font-size:13px;line-height:1.8;color:#c8b8c4}
.checkout-field{gap:10px;margin-bottom:22px}
.checkout-field label,.checkout-shipping-title{font-size:13px;line-height:1.55;color:#efe3ec;letter-spacing:.055em}
.checkout-field input,.checkout-field textarea{font-size:16px;line-height:1.5;color:#fff;border-color:#8b7485;padding:15px 16px;min-height:52px}
.checkout-field input::placeholder,.checkout-field textarea::placeholder{color:#bba8b7;opacity:1}
.checkout-field input:focus,.checkout-field textarea:focus{outline:none;border-color:#dbc5d6;box-shadow:0 0 0 1px #dbc5d644,0 0 0 4px #dbc5d612}
#order-text{font-size:15px;line-height:1.7}
.checkout-radio{font-size:14px;line-height:1.6;color:#f2e8ef}
.checkout-button{font-size:13px;padding:16px 18px}
.order-status{font-size:13px;line-height:1.8}
.city-autocomplete{position:relative}
.city-suggestions{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20;border:1px solid #8b7485;background:#111015;box-shadow:0 16px 36px #000a;max-height:280px;overflow:auto}
.city-suggestion{display:block;width:100%;border:0;background:transparent;color:#f6ebf3;text-align:left;padding:12px 14px;font:15px/1.45 'Courier New',monospace;cursor:pointer}
.city-suggestion:hover,.city-suggestion.is-active{background:#2a232c}
.city-suggestion small{display:block;color:#b9a8b5;font-size:11px;line-height:1.5;margin-top:2px}
.city-help{margin-top:2px}
@media(max-width:690px){
  .checkout-field label,.checkout-shipping-title{font-size:12px}
  .checkout-field input,.checkout-field textarea{font-size:15px;padding:14px}
  .city-suggestion{font-size:14px}
}

/* NFR.SYS / no-payment VK order request */
.order-consent{display:flex;gap:12px;align-items:flex-start;margin:20px 0 5px;font:13px/1.65 Arial,sans-serif;color:#eee2ea}
.order-consent input{accent-color:#d4c2cf;margin-top:4px;flex:0 0 18px;width:18px;height:18px}
.order-consent a{text-decoration:underline;text-underline-offset:3px;color:#ffffff}
.order-consent a:hover,.order-consent a:focus-visible{color:#eecfe3}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.checkout-button:disabled{opacity:.55;cursor:wait}
.cart-confirmation{border-color:#b9b5bf;background:#1c1820}
.cart-confirmation h2{font-size:30px;color:#f5eaf2}
.cart-confirmation p{font-size:15px;line-height:1.7;color:#e2d3df}
.order-status[data-state="error"]{color:#ffbfbf}
.order-status[data-state="success"]{color:#c6f0d0}

/* NFR.SYS — separate custom embroidery service entry points */
@media(min-width:691px) and (max-width:1220px){.nav{gap:14px}.nav a{font-size:10px;letter-spacing:.03em}.header-inner{gap:12px}}
@media(min-width:691px) and (max-width:940px){.header-action{display:none}}
.home-service-strip{border-top:1px solid #514150;border-bottom:1px solid #514150;background:linear-gradient(120deg,#211921,#121015 70%);padding:54px 0}
.home-service-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}
.home-service-inner h2{font:normal clamp(33px,4.3vw,58px)/1.05 Georgia,serif;margin:16px 0 18px;letter-spacing:-.045em}
.home-service-inner h2 em{color:#c5a9bf;font-style:normal}
.home-service-inner p{font:15px/1.75 Arial,sans-serif;color:#cdc0ca;max-width:610px;margin:0}
.home-service-inner>.button{flex-shrink:0}
.catalog-service-banner{padding:45px 0;border-top:1px solid #49404a;background:#171319}
.catalog-service-banner>.container{display:flex;align-items:center;justify-content:space-between;gap:24px}
.catalog-service-banner h2{font:normal clamp(25px,3vw,39px)/1.2 Georgia,serif;margin:10px 0}
.catalog-service-banner p{color:#c8b9c5;font:14px/1.7 Arial,sans-serif;margin:0}
.catalog-service-banner .button{flex-shrink:0}
@media(max-width:760px){.home-service-inner,.catalog-service-banner>.container{flex-direction:column;align-items:flex-start}.home-service-strip{padding:40px 0}.catalog-service-banner{padding:36px 0}}

/* NFR.SYS / Telegram & VK order contact (2026-10-28) */
#order-form .checkout-field select{display:block;width:100%;min-width:0;min-height:52px;background:#0b0b0e;color:#fff;border:1px solid #8b7485;border-radius:0;padding:15px 16px;font:16px/1.5 Arial,sans-serif;color-scheme:dark}
#order-form .checkout-field select:focus-visible{outline:2px solid #dbc5d6;outline-offset:2px}
#order-form .checkout-field input:disabled{opacity:.65;cursor:not-allowed}

/* NFR.SYS / читаемый шрифт и раздельная корзина — 28.10.2026 */
html{-webkit-text-size-adjust:100%}
body{font-size:16px;line-height:1.6}
.nav a,.header-action{font-size:12.5px;letter-spacing:.055em}
.logo small{font-size:11px;letter-spacing:.06em}
.hero-eyebrow,.eyebrow,.section-eyebrow,.section-number,.section-tag,.section-kicker,.section-index,.product-type,.product-detail-link,.product-cta,.disclaimer,.gallery-count,.gallery-counter,.stock-indicator,.detail-note,.back-link,.checkout-eyebrow,.cart-page .checkout-eyebrow,.embroidery-hero-note,.embroidery-photo-stamp,.package-gallery figcaption{font-size:12px;line-height:1.6;letter-spacing:.045em}
.product-desc,.product-copy p,.section-description,.hero-description,.faq-answer p,.package-copy p,.detail-spec ul,.detail-note,.embroidery-feature p,.embroidery-order-intro p{font-size:15px;line-height:1.7}
.product h3{font-size:clamp(23px,2.5vw,27px)}
.product-type{color:#c9bac6}
.product-detail-link,.product-cta{color:#efe1eb;min-height:32px}
.stock-indicator{color:#e9dce6}
.cart-link{display:inline-flex!important;align-items:center!important;justify-content:center;gap:10px!important;font-size:12px!important;letter-spacing:.045em!important;white-space:nowrap}
.cart-link .cart-word{display:inline-block!important;visibility:visible!important;position:static!important;margin:0!important;line-height:1.3}
.cart-link .cart-count{display:inline-flex!important;flex-shrink:0;align-items:center;justify-content:center;min-width:25px;min-height:25px;margin:0;border-radius:4px;padding:2px 5px;font-size:13px;line-height:1}
.cart-add,.product-footer .cart-add{font-size:12px;min-height:40px}
.checkout-field label,.checkout-shipping-title{font-size:13px}
.checkout-field input,.checkout-field textarea{font-size:16px}
.embroidery-feature h3,.faq-question{font-size:clamp(18px,1.6vw,22px)}
@media(max-width:1050px){.nav a{font-size:12px;letter-spacing:0}.header-inner{gap:10px}.cart-link{padding:9px 10px}}
@media(max-width:690px){.cart-link{gap:7px!important;padding:9px!important;font-size:11px!important}.cart-link .cart-count{min-width:23px;min-height:23px;font-size:12px}.logo small{font-size:10px}.product-desc,.section-description{font-size:14px}.product-type,.stock-indicator,.product-detail-link,.product-cta{font-size:12px}}
