/* 591DO CMS V8.2 UI/UX Delivery Edition - front polish layer */
:root{
  --v82-ink:#101828;
  --v82-text:#243044;
  --v82-muted:#667085;
  --v82-line:rgba(15,23,42,.09);
  --v82-soft:#f6f9fc;
  --v82-card:#ffffff;
  --v82-shadow:0 26px 80px rgba(15,23,42,.10);
  --v82-shadow-sm:0 14px 36px rgba(15,23,42,.07);
  --v82-radius:30px;
}
body{
  color:var(--v82-text);
  background:
    radial-gradient(circle at 8% -10%, color-mix(in srgb,var(--secondary,#0fb9dd) 18%, transparent), transparent 32%),
    radial-gradient(circle at 92% 8%, color-mix(in srgb,var(--accent,#e6002d) 10%, transparent), transparent 25%),
    linear-gradient(180deg,#fbfdff 0%,var(--site-bg,#f6f8fb) 56%,#fff 100%);
}
.site-header{backdrop-filter:blur(20px);box-shadow:0 10px 34px rgba(15,23,42,.055)}
.header-inner{width:min(1220px,100% - 8vw)}
.brand{min-width:0}.brand-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand img{max-width:210px;max-height:52px}
.desktop-nav a{position:relative}.desktop-nav a.active:after{content:"";position:absolute;left:18px;right:18px;bottom:5px;height:3px;border-radius:999px;background:linear-gradient(90deg,var(--accent,#e6002d),var(--primary,#0a46d8))}
.language-menu{z-index:80}.language-menu a.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary,#0a46d8) 14%, transparent)}
.hero{padding-top:clamp(54px,7vw,96px);padding-bottom:clamp(44px,6vw,76px)}
.hero-inner{width:min(1220px,100% - 8vw);grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);gap:clamp(32px,6vw,76px)}
.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:color-mix(in srgb,var(--primary,#0a46d8) 8%, #fff);border:1px solid color-mix(in srgb,var(--primary,#0a46d8) 12%, transparent);font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,var(--accent,#e6002d),var(--secondary,#0fb9dd))}
.hero-copy h1{max-width:740px;text-wrap:balance}.hero-copy p{max-width:680px}
.visual-stack{position:relative}.visual-card.primary{position:relative;isolation:isolate}.visual-card.primary:after{content:"";position:absolute;inset:auto -60px -90px auto;width:220px;height:220px;border-radius:50%;background:rgba(255,255,255,.18);z-index:-1}.visual-mini-grid div{transition:.2s ease}.visual-mini-grid div:hover{transform:translateY(-3px)}
.section{width:min(1220px,100% - 8vw);margin-left:auto;margin-right:auto}.section.narrow{width:min(960px,100% - 8vw)}
.company-section .company-panel,.catalog-feature,.block-section,.card,.contact,.prose{border-color:var(--v82-line);box-shadow:var(--v82-shadow-sm)}
.company-section .company-panel{position:relative;overflow:hidden}.company-section .company-panel:after{content:"";position:absolute;right:-80px;bottom:-90px;width:240px;height:240px;border-radius:50%;background:color-mix(in srgb,var(--secondary,#0fb9dd) 14%, transparent)}
.company-copy,.company-profile-card{position:relative;z-index:1}.company-profile-card>div{transition:.2s ease}.company-profile-card>div:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(15,23,42,.08)}
.catalog-feature{overflow:hidden;position:relative}.catalog-feature:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 0,rgba(255,255,255,.18),transparent 28%);pointer-events:none}.catalog-feature>*{position:relative}
.product-card{border-radius:28px}.product-card img,.product-thumb,.product-placeholder{transition:.22s ease}.product-card:hover img,.product-card:hover .product-placeholder{transform:scale(1.015)}.product-card.compact .muted{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sample-card{border-style:dashed;background:linear-gradient(180deg,#fff,#f8fbff)}
.catalog-layout{width:min(1220px,100% - 8vw);margin-left:auto;margin-right:auto}.catalog-filter{box-shadow:var(--v82-shadow-sm)}.catalog-search{display:grid;grid-template-columns:1fr auto;gap:8px}.catalog-search input{min-width:0}
.product-select{position:absolute;right:16px;top:16px;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border:1px solid var(--v82-line);border-radius:999px;padding:7px 10px;font-weight:900;font-size:12px;box-shadow:0 8px 22px rgba(15,23,42,.08)}
.product-detail{padding-top:40px}.product-detail-card{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1.05fr);gap:34px;align-items:start;padding:30px;border-radius:34px;background:linear-gradient(135deg,#fff,#fbfdff)}.product-detail-media{position:sticky;top:106px}.product-detail-image,.detail-placeholder{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:28px;border:1px solid var(--v82-line);background:#f5f8fb;box-shadow:var(--v82-shadow-sm)}.product-detail-copy h1{font-size:clamp(34px,5vw,58px);line-height:1.02;letter-spacing:-.06em;margin:12px 0 16px}.product-detail-lead{font-size:17px;line-height:1.9}.product-spec-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0}.product-detail-quote{position:sticky;bottom:18px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid var(--v82-line);border-radius:24px;padding:14px;box-shadow:0 18px 54px rgba(15,23,42,.12);align-items:end}.product-detail-quote label{display:grid;gap:4px;font-weight:900;color:var(--v82-muted);font-size:12px}.product-detail-quote input{height:44px;border-radius:999px;border:1px solid #d7e1ef;padding:0 14px}
.contact-page .intro-card{max-width:760px}.contact{display:grid;gap:12px}.contact input,.contact textarea{margin:0!important}.contact button{justify-self:start}.notice{box-shadow:0 10px 24px rgba(18,183,106,.10)}.notice.error{background:#fff1f3;color:#b42318}
.site-footer{width:min(1220px,100% - 8vw);border-radius:34px 34px 0 0;margin-top:70px}.footer-links{align-content:start}.footer-contact span:empty{display:none}
.mobile-cta{left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom))}.mobile-cta a{border-radius:16px;padding:6px 0}.mobile-cta a:hover{background:#f3f7ff}
.front-ajax-message{border-radius:18px;padding:14px 16px;font-weight:900;margin-top:16px}.front-ajax-message.ok{background:#ecfdf3;color:#027a48}.front-ajax-message.error{background:#fff1f3;color:#b42318}
@media(max-width:980px){
  .header-inner,.section,.section.narrow,.hero-inner,.catalog-layout,.site-footer{width:min(100% - 28px,1220px)}
  .hero-inner,.product-detail-card{grid-template-columns:1fr}.hero-inner{gap:28px}.hero-visual{order:-1}.visual-card.primary{min-height:210px}.visual-mini-grid{grid-template-columns:repeat(3,1fr)}
  .catalog-layout{display:block}.catalog-filter{position:relative;top:auto;margin-bottom:18px}.product-detail-media{position:relative;top:auto}.product-detail-card{padding:18px;border-radius:26px}.product-detail-quote{position:relative;bottom:auto;align-items:stretch}.product-detail-quote,.quote-mini{flex-direction:column}.product-detail-quote label,.product-detail-quote input{width:100%;max-width:none}.site-footer{margin-bottom:92px}
}
@media(max-width:560px){
  .brand-name{max-width:150px}.hero-copy h1{font-size:38px}.visual-mini-grid{grid-template-columns:1fr}.catalog-benefits span{font-size:11px}.product-spec-grid,.profile-grid{grid-template-columns:1fr}.product-select{position:static;display:inline-flex;margin-bottom:10px}.contact button{width:100%}
}
