*,::backdrop,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:initial;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}[multiple],[type=date],[type=datetime-local],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],input:where(:not([type])),select,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}[multiple]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=email]:focus,[type=month]:focus,[type=number]:focus,[type=password]:focus,[type=search]:focus,[type=tel]:focus,[type=text]:focus,[type=time]:focus,[type=url]:focus,[type=week]:focus,input:where(:not([type])):focus,select:focus,textarea:focus{outline:2px solid #0000;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow:0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid #0000;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:#0000;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3C/svg%3E")}@media (forced-colors:active) {[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:focus,[type=checkbox]:checked:hover,[type=checkbox]:indeterminate,[type=radio]:checked:focus,[type=radio]:checked:hover{border-color:#0000;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3E%3Cpath stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3E%3C/svg%3E");background-size:100% 100%;background-position:50%;background-repeat:no-repeat}@media (forced-colors:active) {[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:focus,[type=checkbox]:indeterminate:hover{border-color:#0000;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.pointer-events-none{pointer-events:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.bottom-0{bottom:0}.left-0{left:0}.left-2{left:.5rem}.left-3{left:.75rem}.right-0{right:0}.right-1\.5{right:.375rem}.right-3{right:.75rem}.top-0{top:0}.top-0\.5{top:.125rem}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3{top:.75rem}.top-8{top:2rem}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.col-span-12{grid-column:span 12/span 12}.col-span-2{grid-column:span 2/span 2}.mx-auto{margin-left:auto;margin-right:auto}.my-6{margin-top:1.5rem;margin-bottom:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.-mt-4{margin-top:-1rem}.mb-0{margin-bottom:0}.mb-0\.5{margin-bottom:.125rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-5{margin-top:1.25rem}.mt-6{margin-top:1.5rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.\!grid{display:grid!important}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1/1}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2{height:.5rem}.h-20{height:5rem}.h-24{height:6rem}.h-4{height:1rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[26px\]{height:26px}.h-\[300px\]{height:300px}.h-\[34px\]{height:34px}.h-full{height:100%}.max-h-\[90vh\]{max-height:90vh}.min-h-\[214px\]{min-height:214px}.min-h-\[300px\]{min-height:300px}.min-h-\[320px\]{min-height:320px}.min-h-\[340px\]{min-height:340px}.min-h-screen{min-height:100vh}.\!w-7{width:1.75rem!important}.\!w-auto{width:auto!important}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-14{width:3.5rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-28{width:7rem}.w-4{width:1rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[26px\]{width:26px}.w-\[34px\]{width:34px}.w-\[560px\]{width:560px}.w-full{width:100%}.min-w-0{min-width:0}.min-w-\[160px\]{min-width:160px}.min-w-\[220px\]{min-width:220px}.min-w-\[90px\]{min-width:90px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-\[1040px\]{max-width:1040px}.max-w-\[1280px\]{max-width:1280px}.max-w-\[45vw\]{max-width:45vw}.max-w-\[800px\]{max-width:800px}.max-w-\[80vw\]{max-width:80vw}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xl{max-width:36rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.resize-y{resize:vertical}.resize{resize:both}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-10{-moz-column-gap:2.5rem;column-gap:2.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-3{row-gap:.75rem}.gap-y-4{row-gap:1rem}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.self-start{align-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[28px\]{border-radius:28px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-l-lg{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-none{border-style:none}.border-border-slate{border-color:#002d5414}.border-border-slate\/40{border-color:#002d5466}.border-horizon-blue{--tw-border-opacity:1;border-color:rgb(48 144 209/var(--tw-border-opacity,1))}.border-horizon-blue\/60{border-color:#3090d199}.border-pure-white{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.border-white\/10{border-color:#ffffff1a}.bg-chalk-white{--tw-bg-opacity:1;background-color:rgb(242 245 248/var(--tw-bg-opacity,1))}.bg-horizon-blue{--tw-bg-opacity:1;background-color:rgb(48 144 209/var(--tw-bg-opacity,1))}.bg-horizon-blue\/10{background-color:#3090d11a}.bg-prussian-blue{--tw-bg-opacity:1;background-color:rgb(0 45 84/var(--tw-bg-opacity,1))}.bg-prussian-blue\/60{background-color:#002d5499}.bg-pure-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-pure-white\/90{background-color:#ffffffe6}.bg-surface{--tw-bg-opacity:1;background-color:rgb(247 250 253/var(--tw-bg-opacity,1))}.bg-surface-variant{--tw-bg-opacity:1;background-color:rgb(224 227 230/var(--tw-bg-opacity,1))}.bg-transparent{background-color:initial}.bg-tropical-teal{--tw-bg-opacity:1;background-color:rgb(23 195 178/var(--tw-bg-opacity,1))}.bg-tropical-teal\/10{background-color:#17c3b21a}.bg-cover{background-size:cover}.bg-right{background-position:100%}.bg-no-repeat{background-repeat:no-repeat}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0}.p-1{padding:.25rem}.p-12{padding:3rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.\!px-0{padding-left:0!important;padding-right:0!important}.\!px-2{padding-left:.5rem!important;padding-right:.5rem!important}.\!px-3{padding-left:.75rem!important;padding-right:.75rem!important}.\!px-4{padding-left:1rem!important;padding-right:1rem!important}.\!py-1\.5{padding-top:.375rem!important;padding-bottom:.375rem!important}.\!py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.\!py-2\.5{padding-top:.625rem!important;padding-bottom:.625rem!important}.\!py-3{padding-top:.75rem!important;padding-bottom:.75rem!important}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.\!pl-10{padding-left:2.5rem!important}.\!pr-4{padding-right:1rem!important}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pb-8{padding-bottom:2rem}.pl-3{padding-left:.75rem}.pl-5{padding-left:1.25rem}.pt-1{padding-top:.25rem}.pt-1\.5{padding-top:.375rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-body-lg,.font-body-md,.font-body-sm{font-family:Inter,sans-serif}.font-headline-lg,.font-headline-md,.font-headline-xl,.font-label-md,.font-subtitle-lg{font-family:Inter Tight,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[0\.88em\]{font-size:.88em}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.text-\[26px\]{font-size:26px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-7{line-height:1.75rem}.leading-8{line-height:2rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tighter{letter-spacing:-.05em}.tracking-wider{letter-spacing:.05em}.text-error{--tw-text-opacity:1;color:rgb(186 26 26/var(--tw-text-opacity,1))}.text-horizon-blue{--tw-text-opacity:1;color:rgb(48 144 209/var(--tw-text-opacity,1))}.text-on-surface{--tw-text-opacity:1;color:rgb(24 28 30/var(--tw-text-opacity,1))}.text-on-surface-variant{--tw-text-opacity:1;color:rgb(64 72 80/var(--tw-text-opacity,1))}.text-outline{--tw-text-opacity:1;color:rgb(112 120 129/var(--tw-text-opacity,1))}.text-outline-variant{--tw-text-opacity:1;color:rgb(191 199 209/var(--tw-text-opacity,1))}.text-prussian-blue{--tw-text-opacity:1;color:rgb(0 45 84/var(--tw-text-opacity,1))}.text-pure-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-surface-variant{--tw-text-opacity:1;color:rgb(224 227 230/var(--tw-text-opacity,1))}.text-tropical-teal{--tw-text-opacity:1;color:rgb(23 195 178/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.decoration-border-slate{text-decoration-color:#002d5414}.decoration-white\/20{text-decoration-color:#fff3}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-\[\#3090D1\]{accent-color:#3090d1}.opacity-0{opacity:0}.opacity-60{opacity:.6}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.\!shadow-none{--tw-shadow:0 0 #0000!important;--tw-shadow-colored:0 0 #0000!important;box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)!important}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-lg,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-md,.backdrop-blur-sm{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[background-color\2c border-color\2c box-shadow\]{transition-property:background-color,border-color,box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,.transition-transform{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.selection\:bg-horizon-blue ::-moz-selection{--tw-bg-opacity:1;background-color:rgb(48 144 209/var(--tw-bg-opacity,1))}.selection\:bg-horizon-blue ::selection{--tw-bg-opacity:1;background-color:rgb(48 144 209/var(--tw-bg-opacity,1))}.selection\:text-pure-white ::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-pure-white ::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:bg-horizon-blue::-moz-selection{--tw-bg-opacity:1;background-color:rgb(48 144 209/var(--tw-bg-opacity,1))}.selection\:bg-horizon-blue::selection{--tw-bg-opacity:1;background-color:rgb(48 144 209/var(--tw-bg-opacity,1))}.selection\:text-pure-white::-moz-selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.selection\:text-pure-white::selection{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}@media (hover:hover) and (pointer:fine){.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-horizon-blue:hover{--tw-border-opacity:1;border-color:rgb(48 144 209/var(--tw-border-opacity,1))}.hover\:border-horizon-blue\/50:hover{border-color:#3090d180}.hover\:border-horizon-blue\/60:hover{border-color:#3090d199}.hover\:border-prussian-blue:hover{--tw-border-opacity:1;border-color:rgb(0 45 84/var(--tw-border-opacity,1))}.hover\:bg-horizon-blue:hover{--tw-bg-opacity:1;background-color:rgb(48 144 209/var(--tw-bg-opacity,1))}.hover\:bg-horizon-blue\/20:hover{background-color:#3090d133}.hover\:bg-prussian-blue:hover{--tw-bg-opacity:1;background-color:rgb(0 45 84/var(--tw-bg-opacity,1))}.hover\:bg-surface-variant:hover{--tw-bg-opacity:1;background-color:rgb(224 227 230/var(--tw-bg-opacity,1))}.hover\:bg-tropical-teal:hover{--tw-bg-opacity:1;background-color:rgb(23 195 178/var(--tw-bg-opacity,1))}.hover\:text-error:hover{--tw-text-opacity:1;color:rgb(186 26 26/var(--tw-text-opacity,1))}.hover\:text-horizon-blue:hover{--tw-text-opacity:1;color:rgb(48 144 209/var(--tw-text-opacity,1))}.hover\:text-on-surface:hover{--tw-text-opacity:1;color:rgb(24 28 30/var(--tw-text-opacity,1))}.hover\:text-prussian-blue:hover{--tw-text-opacity:1;color:rgb(0 45 84/var(--tw-text-opacity,1))}.hover\:text-pure-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-70:hover{opacity:.7}}.focus\:ring-0:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.active\:scale-\[\.98\]:active{--tw-scale-x:.98;--tw-scale-y:.98;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media (hover:hover) and (pointer:fine){.group:hover .group-hover\:visible{visibility:visible}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x:0.125rem}.group:hover .group-hover\:translate-x-0\.5,.group:hover .group-hover\:translate-x-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:text-horizon-blue{--tw-text-opacity:1;color:rgb(48 144 209/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}}@media not all and (min-width:768px){.max-md\:order-first{order:-9999}}@media (min-width:640px){.sm\:block{display:block}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-end{justify-content:flex-end}.sm\:gap-3{gap:.75rem}.sm\:gap-6{gap:1.5rem}.sm\:border-t-0{border-top-width:0}.sm\:p-4{padding:1rem}.sm\:p-6{padding:1.5rem}.sm\:pt-0{padding-top:0}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:768px){.md\:mb-10{margin-bottom:2.5rem}.md\:mb-3{margin-bottom:.75rem}.md\:mb-4{margin-bottom:1rem}.md\:mb-6{margin-bottom:1.5rem}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:h-12{height:3rem}.md\:w-10{width:2.5rem}.md\:w-32{width:8rem}.md\:w-64{width:16rem}.md\:max-w-md{max-width:28rem}.md\:max-w-xs{max-width:20rem}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-4{gap:1rem}.md\:gap-5{gap:1.25rem}.md\:gap-6{gap:1.5rem}.md\:gap-8{gap:2rem}.md\:p-10{padding:2.5rem}.md\:p-14{padding:3.5rem}.md\:p-3{padding:.75rem}.md\:p-4{padding:1rem}.md\:p-5{padding:1.25rem}.md\:p-6{padding:1.5rem}.md\:p-7{padding:1.75rem}.md\:p-8{padding:2rem}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:px-7{padding-left:1.75rem;padding-right:1.75rem}.md\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.md\:py-8{padding-top:2rem;padding-bottom:2rem}.md\:pt-5{padding-top:1.25rem}.md\:text-left{text-align:left}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-7xl{font-size:4.5rem;line-height:1}.md\:text-\[13px\]{font-size:13px}.md\:text-\[14px\]{font-size:14px}.md\:text-\[17px\]{font-size:17px}.md\:text-\[28px\]{font-size:28px}.md\:text-\[54px\]{font-size:54px}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:leading-\[1\.05\]{line-height:1.05}}@media (min-width:1024px){.lg\:col-span-4{grid-column:span 4/span 4}.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:col-span-8{grid-column:span 8/span 8}.lg\:mr-4{margin-right:1rem}.lg\:flex{display:flex}.lg\:min-h-0{min-height:0}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-3{gap:.75rem}}
.material-symbols-outlined { font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24; }
[id] { scroll-margin-top: 90px; }

.site-shell {
  position: relative;
  isolation: isolate;
}

.page-glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: -1;
}

.page-glow::before,
.page-glow::after {
  content: '';
  position: absolute;
  border-radius: 9999px;
  filter: blur(60px);
  opacity: .35;
}

.page-glow::before {
  width: 420px;
  height: 420px;
  top: -120px;
  right: -80px;
  background: none;
}

.page-glow::after {
  width: 360px;
  height: 360px;
  left: -80px;
  bottom: -120px;
  background: none;
}

.glass-panel {
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 20px 60px rgba(0,45,84,.08);
}

.section-kicker {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .5rem .9rem;
  border-radius: 9999px;
  background: rgba(48,144,209,.08);
  color: #002D54;
  font: 600 12px/1 'Inter Tight', sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.organic-orb {
  position: absolute;
  border-radius: 9999px;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.95), rgba(255,255,255,0));
  border: 1px solid rgba(255,255,255,.4);
  backdrop-filter: blur(12px);
}

.section-kicker--inverse {
  background: rgba(255,255,255,.14);
  color: #fff;
  border: 1px solid rgba(255,255,255,.18);
}

.hero-shell {
  isolation: isolate;
}

.hero-stage {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  padding: 1.15rem;
  border-radius: 36px;
  background: linear-gradient(180deg, rgba(255,255,255,.76), rgba(246,250,253,.72));
  border: 1px solid rgba(191,199,209,.46);
  box-shadow: none;
}

.hero-stage__main {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(420px, .55fr);
  align-items: stretch;
  gap: 1.15rem;
}

.hero-copy {
  padding: 1rem 1.1rem;
  justify-content: center;
  border-radius: 30px;
  background: rgba(255,255,255,.62);
  border: 1px solid rgba(255,255,255,.72);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}

.hero-side {
  display: flex;
  flex-direction: column;
  gap: .95rem;
  min-width: 0;
}

.hero-metrics-grid {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(3, minmax(0, 1fr));
  gap: .7rem;
  height: 100%;
}

.category-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background-repeat: no-repeat;
  background-color: #edf4f8;
  background-position: right center;
  background-size: auto 100%;
  --category-overlay: linear-gradient(90deg, rgba(255,255,255,.98) 0 38%, rgba(255,255,255,.88) 46%, rgba(255,255,255,.3) 55%, rgba(255,255,255,0) 66%);
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
}

.category-card > * {
  position: relative;
  z-index: 1;
}

.category-card__body {
  max-width: min(48%, 270px);
}

.category-card__title {
  line-height: 1.04;
}

.category-card__copy {
  line-height: 1.5;
}

.category-card__arrow {
  display: inline-flex;
  align-self: flex-end;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 9999px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(48,144,209,.16);
  box-shadow: 0 10px 18px rgba(48,144,209,.12);
}

.category-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 40px rgba(0,45,84,.12);
}

.category-feature__image {
  opacity: .96;
  background: #dceefa;
}

.category-feature__image img {
  object-fit: contain;
  object-position: right center;
  background: transparent;
  mix-blend-mode: normal;
}

.category-feature::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.92) 24%, rgba(255,255,255,.62) 43%, rgba(255,255,255,.16) 64%, rgba(255,255,255,0) 78%);
}

.category-feature__copy {
  max-width: 66%;
  padding: .15rem .2rem .6rem;
  border-radius: 16px;
}

.category-all-button {
  min-height: 48px;
  padding: 0 1.25rem;
  border-radius: 15px;
  color: #fff;
  background: linear-gradient(135deg, #3090D1, #1477B9);
  box-shadow: 0 12px 26px rgba(48,144,209,.24);
}

.category-all-button:hover {
  color: #fff;
  background: linear-gradient(135deg, #1477B9, #002D54);
  transform: translateY(-1px);
}

.popular-kicker {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  width: fit-content;
  min-height: 38px;
  padding: 0 1rem;
  border-radius: 9999px;
  background: #3090D1;
  color: #fff;
  font: 700 12px/1 'Inter Tight', sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
  box-shadow: 0 10px 24px rgba(48,144,209,.24);
}

.popular-lead {
  color: #46515d;
  font: 500 16px/1.65 'Inter', sans-serif;
}

.product-image-zone {
  position: relative;
}

.popular-products-grid > div {
  border: 2px solid rgba(48,144,209,.34) !important;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.popular-products-grid > div:hover {
  border-color: #002D54 !important;
  box-shadow: 0 18px 36px rgba(0,45,84,.14);
  transform: translateY(-2px);
}
.category-card::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 0;
  background: var(--category-overlay);
}
.category-card--under {
  background-image: url('cat-under-photo.jpg');
}
.category-card--main {
  background-image: url('cat-main-photo.jpeg');
}
.category-card--cart {
  /* цвет подложки приведён к эталону (как у «Фильтров под мойку» и «Магистральных») */
  background-image:
    var(--category-overlay),
    url('cat-cart-photo.jpeg');
}
.category-card--faucet {
  background-image: url('cat-faucet-photo.jpeg');
}

.home-section-intro {
  position: relative;
  overflow: hidden;
  min-height: 118px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: .9rem min(34%, 420px) .9rem 1.6rem;
  /* единый фон с карточками категорий (эталонный белый градиент поверх воды) */
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.97) 0 50%, rgba(255,255,255,.82) 66%, rgba(255,255,255,0)),
    url('water-light-background.jpg');
  background-position: center, right center;
  background-size: cover, auto 100%;
  background-repeat: no-repeat;
}

.hero-stage__visual {
  min-width: 0;
}

.hero-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 0 1.45rem;
  border-radius: 18px;
  font: 700 15px/1.2 'Inter Tight', sans-serif;
  transition: transform .2s ease, background .2s ease, color .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.hero-cta:hover {
  transform: translateY(-1px);
}

.hero-cta--primary {
  background: #3090D1;
  color: #fff;
  box-shadow: 0 14px 28px rgba(48,144,209,.24);
}

.hero-cta--primary:hover {
  background: #002D54;
}

.hero-cta--secondary {
  background: rgba(255,255,255,.84);
  color: #002D54;
  border: 1px solid rgba(191,199,209,.72);
}

.hero-cta--secondary:hover {
  background: rgba(255,255,255,.98);
  border-color: rgba(48,144,209,.22);
}

.hero-watercolor {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: -1;
}

.hero-watercolor__blob {
  position: absolute;
  border-radius: 9999px;
  filter: blur(28px);
  opacity: .95;
}

.hero-watercolor__blob--one {
  width: 540px;
  height: 540px;
  top: -180px;
  left: -120px;
  background: none;
}

.hero-watercolor__blob--two {
  width: 620px;
  height: 620px;
  right: -140px;
  top: 10px;
  background: none;
}

.hero-watercolor__blob--three {
  width: 460px;
  height: 460px;
  left: 25%;
  bottom: -220px;
  background: none;
}

.hero-panel {
  position: relative;
  overflow: hidden;
}

.hero-panel::before {
  content: '';
  position: absolute;
  inset: 0 auto auto 0;
  width: 180px;
  height: 180px;
  background: radial-gradient(circle, rgba(255,255,255,.7), rgba(255,255,255,0) 72%);
  pointer-events: none;
}

.hero-metric {
  display: grid;
  grid-template-columns: 44px minmax(112px, .68fr) minmax(0, 1.32fr);
  align-items: center;
  gap: 1rem;
  padding: .8rem .9rem;
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255,255,255,.88), rgba(247,250,253,.74));
  border: 1px solid rgba(191,199,209,.55);
  box-shadow: 0 12px 30px rgba(0,45,84,.06);
}

.hero-metric__icon {
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  color: #3090D1;
  background: rgba(48,144,209,.1);
  font-size: 21px;
}

.hero-metric__value {
  font: 700 21px/1 'Inter Tight', sans-serif;
  color: #002D54;
}

.hero-metric__label {
  font: 500 15px/1.4 'Inter', sans-serif;
  color: #46515d;
}

.about-showcase--compact .section-kicker { margin-bottom: .8rem; }
.about-showcase--compact h2 { margin-bottom: .65rem; }
.about-showcase__copy { font: 400 15px/1.6 'Inter', sans-serif; }
.about-stat {
  min-height: 126px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 0;
  background: transparent !important;
  position: relative;
}

.about-stats {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  border: 1px solid rgba(255,255,255,.18);
  background:
    radial-gradient(circle at 88% 18%, rgba(255,255,255,.16), transparent 32%),
    linear-gradient(125deg, #063F70 0%, #0D5F99 48%, #3090D1 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 16px 36px rgba(0,45,84,.16);
}

.about-stat + .about-stat::before {
  content: '';
  position: absolute;
  left: 0;
  top: 22%;
  bottom: 22%;
  width: 1px;
  background: rgba(255,255,255,.28);
}

.about-stat .font-headline-md {
  font-size: 27px;
  text-shadow: 0 2px 12px rgba(0,45,84,.24);
}

.about-stat .font-body-sm {
  max-width: 130px;
  font-size: 14px;
  line-height: 1.35;
}

.hero-assembly {
  position: relative;
  min-height: 580px;
  border-radius: 34px;
  padding: 1rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,.88), rgba(244,249,253,.76)),
    radial-gradient(circle at 15% 18%, rgba(255,255,255,.94), rgba(255,255,255,0) 34%);
  border: 1px solid rgba(255,255,255,.65);
  box-shadow: 0 24px 80px rgba(0,45,84,.12);
  overflow: hidden;
}

.hero-assembly__mist,
.hero-assembly__halo {
  position: absolute;
  border-radius: 9999px;
  pointer-events: none;
}

.hero-assembly__mist {
  width: 420px;
  height: 420px;
  top: 34px;
  left: 40px;
  background: none;
  filter: blur(10px);
}

.hero-assembly__halo {
  width: 280px;
  height: 280px;
  right: -20px;
  top: 110px;
  background: none;
  filter: blur(10px);
}

.hero-water-stream {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.hero-droplet {
  position: absolute;
  width: 14px;
  height: 20px;
  border-radius: 9999px 9999px 9999px 9999px / 78% 78% 100% 100%;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(121,197,245,.75));
  box-shadow: 0 8px 18px rgba(48,144,209,.22);
  opacity: 0;
  will-change: transform, opacity;
}

.hero-droplet--1 { animation: heroDropOne 6s linear infinite; }
.hero-droplet--2 { animation: heroDropTwo 6.6s linear 1.2s infinite; }
.hero-droplet--3 { animation: heroDropThree 7.2s linear .4s infinite; }
.hero-droplet--4 { animation: heroDropFour 6.4s linear 1.8s infinite; }
.hero-droplet--5 { animation: heroDropFive 7s linear 2.2s infinite; }

.hero-product-card {
  position: absolute;
  inset: 66px 52px 66px 112px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 28px;
  padding: 1.25rem 1.25rem 1rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(243,248,252,.82)),
    linear-gradient(135deg, rgba(255,255,255,.8), rgba(255,255,255,.18));
  border: 1px solid rgba(255,255,255,.72);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.75), 0 24px 60px rgba(0,45,84,.14);
}

.hero-product-card__meta {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: .35rem;
}

.hero-product-card__badge {
  display: inline-flex;
  align-self: flex-start;
  padding: .45rem .8rem;
  border-radius: 9999px;
  background: rgba(48,144,209,.1);
  color: #3090D1;
  font: 700 11px/1 'Inter Tight', sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.hero-product-card__note {
  max-width: 240px;
  font: 500 13px/1.45 'Inter', sans-serif;
  color: #5c6670;
}

.hero-product-card__image {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center bottom;
  transform: translateY(0) scale(1) rotate(-3deg);
  transition: transform .75s cubic-bezier(.2,.8,.2,1);
}

.hero-assembly.is-ready .hero-product-card__image {
  transform: translateY(0) scale(1) rotate(0deg);
}

.hero-module {
  position: absolute;
  z-index: 3;
  width: 230px;
  padding: .85rem;
  border-radius: 24px;
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,.8);
  box-shadow: 0 18px 40px rgba(0,45,84,.12);
  opacity: 0;
  transform: translateY(14px) scale(.985);
  transition: opacity .45s ease, transform .55s cubic-bezier(.2,.8,.2,1), box-shadow .3s ease;
  text-decoration: none;
}

.hero-module.is-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  box-shadow: 0 22px 46px rgba(0,45,84,.14);
}

.hero-module--one {
  left: 0;
  top: 50px;
}

.hero-module--two {
  left: 26px;
  bottom: 72px;
}

.hero-module--three {
  right: 4px;
  top: 86px;
}

.hero-module__eyebrow {
  display: inline-flex;
  margin-bottom: .7rem;
  font: 700 10px/1 'Inter Tight', sans-serif;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #3090D1;
}

.hero-module__body {
  display: flex;
  align-items: center;
  gap: .85rem;
}

.hero-module__image {
  width: 64px;
  height: 64px;
  object-fit: contain;
  flex: 0 0 auto;
}

.hero-module__image--tall {
  height: 92px;
  width: 56px;
}

.hero-module__image--compact {
  width: 58px;
  height: 58px;
}

.hero-module__title {
  font: 700 15px/1.15 'Inter Tight', sans-serif;
  color: #002D54;
  margin-bottom: .35rem;
}

.hero-module__copy {
  font: 400 12px/1.45 'Inter', sans-serif;
  color: #5c6670;
}

.hero-module--four {
  right: 34px;
  bottom: 30px;
}

.category-overview,
.home-section-intro {
  position: relative;
  padding: 1.5rem 1.6rem;
  border-radius: 28px;
  background: linear-gradient(180deg, rgba(255,255,255,.78), rgba(246,250,253,.74));
  border: 1px solid rgba(191,199,209,.45);
  box-shadow: 0 8px 22px rgba(0,45,84,.05);
}

.home-section-intro {
  min-height: 154px;
  padding: 1rem min(42%, 560px) 1rem 1.5rem;
  justify-content: center;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.98) 0 47%, rgba(255,255,255,.85) 60%, rgba(255,255,255,0) 100%),
    url('water-light-background.jpg');
  background-position: center, right 42%;
  background-size: cover, cover;
  background-repeat: no-repeat;
}

.home-section-intro .popular-kicker {
  min-height: 34px;
  margin-bottom: .75rem;
  padding: 0 .9rem;
}

.home-section-intro h2 {
  font-size: clamp(30px, 3vw, 42px);
  line-height: 1.05;
}

.home-section-intro .popular-lead {
  margin-top: .65rem;
  max-width: 620px;
  font-size: 15px;
  line-height: 1.5;
}

.home-section-intro__pill {
  align-self: flex-start;
  padding: .7rem 1rem;
  border-radius: 9999px;
  background: rgba(48,144,209,.08);
  color: #002D54;
  font: 600 13px/1.2 'Inter Tight', sans-serif;
}

.service-banner {
  background:
    linear-gradient(120deg, rgba(255,255,255,.92), rgba(243,248,252,.86)),
    rgba(255,255,255,0);
}

.service-banner::after {
  content: '';
  position: absolute;
  right: -80px;
  bottom: -90px;
  width: 240px;
  height: 240px;
  border-radius: 9999px;
  background: none;
  pointer-events: none;
}

.about-showcase {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(135deg, #002D54 0%, #073d6f 52%, #0d5d97 100%);
  box-shadow: 0 28px 70px rgba(0,45,84,.2);
}

.about-showcase::before {
  content: '';
  position: absolute;
  inset: auto -100px -110px auto;
  width: 320px;
  height: 320px;
  border-radius: 9999px;
  background: radial-gradient(circle, rgba(255,255,255,.14), rgba(255,255,255,0) 72%);
  pointer-events: none;
}

/* Карточки: подъём при наведении (объявляем после reveal, чтобы hover побеждал) */
.reveal-item { opacity: 0; transform: translateY(20px); transition: opacity .6s ease, transform .6s ease; }
.reveal-item.is-visible { opacity: 1; transform: none; }
.homepage .reveal-item { opacity: 1; transform: none; transition: none; }
.shadow-lift { transition: box-shadow .3s ease, transform .3s ease; }
.shadow-lift:hover { box-shadow: 0 10px 25px rgba(0,45,84,.08); transform: translateY(-3px); }

@media (prefers-reduced-motion: no-preference) {
  .hero-content { opacity: 0; transform: translateY(20px); animation: fadeUp .8s cubic-bezier(.4,0,.2,1) forwards; }
  .hero-image { opacity: 0; transform: scale(.96); animation: scaleIn .9s .15s cubic-bezier(.4,0,.2,1) forwards; }
  .hero-module.is-visible { animation: heroModuleSettle .6s cubic-bezier(.2,.8,.2,1) both; }
  .hero-assembly.is-ready .hero-product-card__image { animation: heroFilterTurn 11s ease-in-out infinite; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-droplet {
    animation: none !important;
    opacity: .18;
  }
  .reveal-item,
  .reveal-item.is-visible {
    transition: none;
    opacity: 1;
    transform: none;
  }
  .shadow-lift,
  .shadow-lift:hover {
    transition: none;
    transform: none;
  }
  img {
    transition: none !important;
  }
}
@keyframes fadeUp { to { opacity: 1; transform: none; } }
@keyframes scaleIn { to { opacity: 1; transform: scale(1); } }
@keyframes heroModuleSettle {
  0% { transform: translateY(10px) scale(.985); box-shadow: 0 18px 40px rgba(0,45,84,.12); }
  100% { transform: translateY(0) scale(1); box-shadow: 0 22px 46px rgba(0,45,84,.14); }
}
@keyframes heroFilterTurn {
  0%, 100% { transform: translateY(0) scale(1) rotate(-4deg); }
  50% { transform: translateY(0) scale(1) rotate(4deg); }
}
@keyframes heroDropOne {
  0% { opacity: 0; transform: translate(46%, 15%) scale(.6); }
  12% { opacity: .95; }
  50% { opacity: .9; transform: translate(76%, 42%) scale(1); }
  100% { opacity: 0; transform: translate(54%, 82%) scale(.72); }
}
@keyframes heroDropTwo {
  0% { opacity: 0; transform: translate(28%, 22%) scale(.55); }
  15% { opacity: .88; }
  52% { opacity: .84; transform: translate(18%, 58%) scale(.95); }
  100% { opacity: 0; transform: translate(40%, 88%) scale(.7); }
}
@keyframes heroDropThree {
  0% { opacity: 0; transform: translate(64%, 8%) scale(.52); }
  16% { opacity: .9; }
  58% { opacity: .86; transform: translate(86%, 35%) scale(.96); }
  100% { opacity: 0; transform: translate(70%, 72%) scale(.68); }
}
@keyframes heroDropFour {
  0% { opacity: 0; transform: translate(38%, 12%) scale(.5); }
  14% { opacity: .92; }
  55% { opacity: .86; transform: translate(56%, 48%) scale(1); }
  100% { opacity: 0; transform: translate(30%, 76%) scale(.66); }
}
@keyframes heroDropFive {
  0% { opacity: 0; transform: translate(58%, 18%) scale(.56); }
  13% { opacity: .86; }
  48% { opacity: .84; transform: translate(40%, 54%) scale(.92); }
  100% { opacity: 0; transform: translate(66%, 86%) scale(.7); }
}

@media (max-width: 1024px) {
  .hero-stage__main {
    grid-template-columns: 1fr;
  }

  .hero-metrics-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hero-assembly {
    min-height: 560px;
  }

  .hero-product-card {
    inset: 90px 24px 84px 72px;
  }

  .hero-module {
    width: 210px;
  }

  .hero-module--four {
    right: 22px;
    bottom: 22px;
  }
}

@media (max-width: 767px) {
  .category-card {
    min-height: 190px !important;
    background-position: right center;
    background-size: auto 100%;
    --category-overlay: linear-gradient(180deg, rgba(255,255,255,.96) 0 30%, rgba(255,255,255,.78) 46%, rgba(255,255,255,.12) 62%, rgba(255,255,255,0) 74%);
  }

  .category-card__body {
    max-width: 66%;
  }

  .category-card__title {
    font-size: 18px !important;
  }

  .category-card__copy {
    font-size: 13px !important;
    line-height: 1.4;
  }

  .category-card__arrow {
    width: 36px;
    height: 36px;
  }

  .hero-stage {
    padding: .85rem;
    border-radius: 28px;
    gap: .85rem;
  }

  .hero-copy {
    padding: 1rem;
    border-radius: 24px;
  }

  .hero-side {
    gap: .75rem;
  }

  .hero-metrics-grid {
    grid-template-columns: 1fr;
  }

  .hero-metric {
    grid-template-columns: 38px minmax(100px, .65fr) minmax(0, 1.35fr);
  }

  .hero-assembly {
    min-height: auto;
    padding: .85rem;
  }

  .hero-product-card {
    position: relative;
    inset: auto;
    min-height: 320px;
    margin-top: 144px;
  }

  .hero-module {
    width: calc(100% - 44px);
  }

  .hero-module--one {
    left: 18px;
    top: 12px;
  }

  .hero-module--two {
    left: 18px;
    bottom: auto;
    top: 138px;
  }

  .hero-module--three {
    right: 18px;
    top: auto;
    bottom: 146px;
  }

  .hero-module--four {
    left: 18px;
    right: auto;
    top: auto;
    bottom: 18px;
  }

  .category-overview,
  .home-section-intro {
    padding: 1.25rem;
    border-radius: 22px;
  }

  .catalog-toolbar,
  .catalog-support-strip,
  .catalog-guidance-banner {
    align-items: flex-start;
  }

  .catalog-card {
    padding: .9rem;
    border-radius: 18px;
  }

  .catalog-card__media {
    min-height: 172px;
  }
}

.header-scrolled { box-shadow: 0 4px 6px -1px rgba(0,0,0,.05); }
.nav-link { position: relative; }
.nav-link::after { content: ''; position: absolute; height: 2px; width: 0; bottom: -2px; left: 0; background: #3090D1; transition: width .3s ease; }
.nav-link:hover::after { width: 100%; }

.chip { font-family: 'Inter Tight', sans-serif; font-size: 10px; font-weight: 700; letter-spacing: .05em; padding: 2px 8px; border-radius: 9999px; text-transform: uppercase; white-space: nowrap; }

.line-clamp-2 {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.catalog-hero-shell {
  position: relative;
  overflow: hidden;
  padding: 1.15rem 1.25rem !important;
  gap: 1rem !important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.96) 0 54%, rgba(255,255,255,.72) 70%, rgba(255,255,255,.18) 100%),
    url('water-light-background.jpg') right center / cover no-repeat;
}

[data-catalog-hero] { margin-bottom: .75rem !important; }

.catalog-hero-shell::after {
  content: '';
  position: absolute;
  width: 280px;
  height: 280px;
  right: -80px;
  bottom: -110px;
  border-radius: 9999px;
  background: none;
  pointer-events: none;
}

.catalog-hero-copy {
  position: relative;
  z-index: 1;
}

.catalog-hero-shortcuts {
  max-width: 720px;
  margin-top: .75rem !important;
}

.catalog-sublink {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: .35rem .8rem;
  border-radius: 9999px;
  border: 1px solid rgba(191,199,209,.6);
  background: rgba(247,250,253,.85);
  color: #404850;
  font: 500 13.5px/1.2 'Inter', sans-serif;
  transition: border-color .2s ease, background .2s ease, color .2s ease;
}

.catalog-sublink:hover,
.catalog-sublink.active {
  border-color: rgba(48,144,209,.52);
  background: rgba(48,144,209,.1);
  color: #3090D1;
}

.catalog-shortcut span,
.catalog-sublink span { margin-left: .45rem; }

.catalog-shortcut {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: .7rem 1rem;
  border-radius: 9999px;
  border: 1px solid rgba(191,199,209,.75);
  background: rgba(255,255,255,.72);
  color: #002D54;
  font: 600 13px/1.2 'Inter Tight', sans-serif;
  transition: border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;
}

.catalog-shortcut:hover,
.catalog-shortcut.active {
  border-color: rgba(48,144,209,.52);
  background: rgba(48,144,209,.1);
  color: #3090D1;
  transform: translateY(-1px);
}

.catalog-hero-metric,
.catalog-hero-note {
  position: relative;
  z-index: 1;
  padding: .7rem .8rem;
  border-radius: 20px;
  background: rgba(255,255,255,.76);
  border: 1px solid rgba(191,199,209,.55);
  box-shadow: 0 16px 34px rgba(0,45,84,.06);
}

@media (min-width: 1280px) {
  .catalog-hero-aside {
    width: 48% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-self: center;
  }

  .catalog-hero-note { grid-column: auto !important; }
}

.catalog-hero-metric__label,
.catalog-hero-note__eyebrow {
  display: inline-flex;
  margin-bottom: .4rem;
  color: #5c6670;
  font: 700 11px/1 'Inter Tight', sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.catalog-hero-metric__value {
  display: block;
  color: #002D54;
  font: 700 24px/1 'Inter Tight', sans-serif;
}

.catalog-hero-metric__copy,
.catalog-hero-note__title {
  margin-top: .45rem;
  color: #404850;
  font: 400 14px/1.55 'Inter', sans-serif;
}

.catalog-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .75rem;
  flex-wrap: wrap;
}

.catalog-toolbar__intro {
  display: flex;
  flex-direction: column;
  gap: .45rem;
}

.catalog-toolbar__title {
  color: #002D54;
  font: 700 15px/1.25 'Inter Tight', sans-serif;
}

.catalog-toolbar__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
}

.catalog-toolbar__chip,
.catalog-support-pill {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: .45rem .8rem;
  border-radius: 9999px;
  background: rgba(255,255,255,.76);
  border: 1px solid rgba(191,199,209,.65);
  color: #404850;
  font: 600 12px/1.2 'Inter Tight', sans-serif;
}

.filter-shell {
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(18px);
  box-shadow: 0 18px 48px rgba(0,45,84,.06);
  padding: 1rem !important;
  gap: .85rem !important;
}

.filter-shell__intro {
  display: flex;
  flex-direction: column;
  gap: .5rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(191,199,209,.5);
}

.filter-shell__eyebrow {
  display: inline-flex;
  align-self: flex-start;
  padding: .4rem .75rem;
  border-radius: 9999px;
  background: rgba(48,144,209,.08);
  color: #3090D1;
  font: 700 11px/1 'Inter Tight', sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.filter-shell__title {
  color: #002D54;
  font: 400 14px/1.55 'Inter', sans-serif;
}

.filter-service-card__badge {
  display: inline-flex;
  margin-bottom: .6rem;
  padding: .35rem .7rem;
  border-radius: 9999px;
  background: rgba(23,195,178,.12);
  color: #0c7d72;
  font: 700 11px/1 'Inter Tight', sans-serif;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.catalog-support-strip,
.catalog-guidance-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.1rem;
  flex-wrap: wrap;
  padding: .9rem 1rem;
  border-radius: 24px;
  background: linear-gradient(180deg, rgba(255,255,255,.84), rgba(246,250,253,.78));
  border: 1px solid rgba(191,199,209,.5);
  box-shadow: 0 14px 38px rgba(0,45,84,.05);
}

.catalog-toolbar { margin-bottom: 1rem !important; }

.catalog-support-strip__meta {
  flex-direction: row;
  flex-wrap: wrap;
  gap: .5rem;
}

.catalog-support-strip__title,
.catalog-guidance-banner__title {
  color: #002D54;
  font: 700 18px/1.25 'Inter Tight', sans-serif;
}

.catalog-support-strip__copy,
.catalog-guidance-banner__note {
  margin-top: .35rem;
  color: #5c6670;
  font: 400 14px/1.55 'Inter', sans-serif;
}

.catalog-support-strip__meta,
.catalog-guidance-banner__actions {
  display: flex;
  flex-direction: column;
  gap: .7rem;
  align-items: flex-start;
}

.catalog-guidance-banner__eyebrow {
  display: inline-flex;
  margin-bottom: .55rem;
  color: #3090D1;
  font: 700 11px/1 'Inter Tight', sans-serif;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.catalog-guidance-banner__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: .85rem 1.2rem;
  border-radius: 16px;
  background: #3090D1;
  color: #fff;
  font: 600 14px/1.2 'Inter Tight', sans-serif;
  transition: background .2s ease, transform .2s ease;
}

.catalog-guidance-banner__cta:hover {
  background: #002D54;
  transform: translateY(-1px);
}

.catalog-guidance-banner {
  min-height: 0;
  align-items: center;
  background:
    linear-gradient(90deg, rgba(255,255,255,.97) 0 50%, rgba(255,255,255,.72) 68%, rgba(255,255,255,.15) 100%),
    url('water-light-background.jpg') right center / cover no-repeat;
}

.catalog-guidance-banner__actions {
  margin-left: auto;
  flex-direction: column-reverse;
  align-items: flex-end;
  text-align: right;
}

.catalog-card {
  display: flex;
  flex-direction: column;
  gap: .55rem;
  height: 100%;
  min-height: 440px;
  padding: .8rem;
  border-radius: 22px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(0,45,84,.08);
  box-shadow: 0 16px 44px rgba(0,45,84,.05);
  transition: box-shadow .25s ease, transform .25s ease, border-color .25s ease;
}

.catalog-card:hover {
  border-color: rgba(48,144,209,.18);
  box-shadow: 0 24px 56px rgba(0,45,84,.09);
  transform: translateY(-4px);
}

.catalog-card__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: .75rem;
}

.catalog-card__badge-row {
  display: flex;
  flex-wrap: wrap;
  gap: .4rem;
  padding-right: 1rem;
}

.catalog-card__fav {
  flex: 0 0 auto;
}

.catalog-card__media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 170px;
  min-height: 170px;
  flex: 0 0 170px;
  border-radius: 18px;
  background: transparent;
  overflow: hidden;
}

.catalog-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  padding: .55rem;
  object-fit: contain;
  object-position: center;
}

.catalog-card__rating {
  display: flex;
  align-items: center;
  gap: .25rem;
}

.catalog-card__content {
  display: flex;
  flex-direction: column;
  gap: .4rem;
  flex: 1;
}

.catalog-card__content h3 {
  display: -webkit-box;
  min-height: 47px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.catalog-card__chips {
  display: flex;
  flex-wrap: wrap;
  min-height: 28px;
  align-content: flex-start;
  gap: .35rem;
}

.catalog-card__chip {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: .25rem .65rem;
  border-radius: 9999px;
  background: rgba(48,144,209,.07);
  color: #5c6670;
  font: 600 11px/1.2 'Inter Tight', sans-serif;
}

.catalog-card__footer {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: .75rem;
  padding-top: .35rem;
  border-top: 0;
}

.catalog-card__price {
  display: flex;
  flex-direction: column;
  gap: .15rem;
}

.catalog-card__old-price {
  color: #7a828a;
  font: 400 11px/1.3 'Inter', sans-serif;
  text-decoration: line-through;
}

.catalog-card__current-price {
  color: #002D54;
  font: 700 24px/1 'Inter Tight', sans-serif;
}

.catalog-card__add {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background: #3090D1;
  color: #fff;
  transition: background .2s ease, transform .2s ease;
}

.catalog-card__add:hover {
  background: #002D54;
  transform: translateY(-1px);
}

@media (max-width: 767px) {
  .catalog-card {
    min-height: 410px;
  }

  .catalog-card__media {
    height: 155px;
    min-height: 155px;
    flex-basis: 155px;
  }
}

.catalog-empty {
  padding: 3rem 1.5rem;
  border-radius: 24px;
  background: rgba(255,255,255,.88);
  border: 1px solid rgba(191,199,209,.55);
  text-align: center;
  box-shadow: 0 16px 40px rgba(0,45,84,.05);
}

.catalog-empty__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: .75rem 1rem;
  border-radius: 14px;
  background: rgba(48,144,209,.1);
  color: #3090D1;
  font: 600 13px/1.2 'Inter Tight', sans-serif;
  transition: background .2s ease, color .2s ease;
}

.catalog-empty__cta:hover {
  background: #3090D1;
  color: #fff;
}

.flink { font: 400 13px/22px 'Inter', sans-serif; color: #e0e3e6; transition: color .2s; }
.flink:hover { color: #3090D1; }

.finput { width: 100%; background: #f7fafd; border: 1px solid #bfc7d1; border-radius: .375rem; padding: .35rem .6rem; font-size: 14px; outline: none; transition: border-color .2s, box-shadow .2s; }
.finput:focus { border-color: #3090D1; box-shadow: 0 0 0 2px rgba(48,144,209,.2); }
.fcheck { display: flex; align-items: center; gap: .5rem; font-size: 14px; color: #404850; cursor: pointer; padding: .25rem 0; transition: color .2s; }
.fcheck:hover { color: #3090D1; }

.stage-chip { padding: .3rem .85rem; border: 1px solid #bfc7d1; border-radius: 9999px; font-size: 14px; color: #404850; background: #f7fafd; transition: border-color .2s, color .2s, background-color .2s; cursor: pointer; }
.stage-chip:hover { border-color: #3090D1; color: #3090D1; }
.stage-chip.active { border-color: #3090D1; background: rgba(48,144,209,.1); color: #3090D1; font-weight: 600; }

.delivery-tab.active { background: #3090D1 !important; color: #fff !important; border-color: #3090D1 !important; }

.thumb { border: 1px solid rgba(0,45,84,.08); }
.thumb:hover { border-color: rgba(48,144,209,.5); }
.thumb-active { border: 2px solid #3090D1 !important; }

.side-link { display: flex; align-items: center; gap: .75rem; padding: .7rem 1.5rem; font-family: 'Inter Tight', sans-serif; font-size: 14px; font-weight: 600; letter-spacing: .05em; color: #404850; transition: background-color .2s, color .2s; }
.side-link:hover { background: #ebeef1; color: #3090D1; }
.side-link.active { color: #3090D1; background: #e5e8eb; border-right: 4px solid #3090D1; }

.aq-toast { position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 20px); opacity: 0; display: flex; align-items: center; gap: 10px; background: #002D54; color: #fff; padding: 12px 22px; border-radius: 12px; font: 600 14px/1.35 'Inter Tight', sans-serif; z-index: 200; box-shadow: 0 10px 30px rgba(0,45,84,.35); transition: opacity .3s ease, transform .3s ease; max-width: 92vw; pointer-events: none; }
.aq-toast.show { opacity: 1; transform: translate(-50%, 0); }
.aq-toast .material-symbols-outlined { color: #17C3B2; font-size: 20px; }

.input-error { border-color: #ba1a1a !important; box-shadow: 0 0 0 2px rgba(186,26,26,.15) !important; }
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
input[type=number] { -moz-appearance: textfield; }

/* Выпадающее дерево категорий в шапке */
.catalog-dropdown {
  transform: translateY(6px);
}

.group:hover .catalog-dropdown,
.catalog-dropdown:hover {
  transform: translateY(0);
}

.catalog-dropdown a {
  display: block;
  padding: .15rem 0;
}

/* Амбиентный фон сайта: светлый градиент + мягкая листва по краям (в духе референса дизайнера).
   Оверлеи bg-foliage-*.png — листья с прозрачным фоном, без прямоугольных границ. */
.site-ambient-bg {
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(253,254,255,.55) 0%, rgba(242,249,253,.4) 45%, rgba(233,244,250,.3) 100%),
    url('bg-foliage-mid.png') top right / min(56vw, 1500px) auto no-repeat,
    url('bg-foliage-tall.png') bottom left / min(34vw, 950px) auto no-repeat,
    linear-gradient(180deg, #fdfeff 0%, #f2f9fd 45%, #e9f4fa 100%);
}

@media (max-width: 768px) {
  .site-ambient-bg {
    background:
      linear-gradient(180deg, rgba(253,254,255,.6) 0%, rgba(242,249,253,.45) 45%, rgba(233,244,250,.35) 100%),
      url('bg-foliage-mid.png') top right / 110% auto no-repeat,
      url('bg-foliage-tall.png') bottom left / 85% auto no-repeat,
      linear-gradient(180deg, #fdfeff 0%, #f2f9fd 45%, #e9f4fa 100%);
  }
}

/* ============ НОЧНОЙ РЕЖИМ (html.dark) ============ */
html.dark body { background-color: #0b1620; color: #dfe7ee; }
html.dark .bg-pure-white { background-color: #101f2c !important; }
html.dark .bg-chalk-white { background-color: #0b1620 !important; }
html.dark .bg-surface { background-color: #0e1c29 !important; }
html.dark .bg-surface-variant { background-color: #1a2c3c !important; }
html.dark .text-prussian-blue { color: #a8d4f5 !important; }
html.dark .text-on-surface { color: #dfe7ee !important; }
html.dark .text-on-surface-variant { color: #9fb2c1 !important; }
html.dark .text-outline { color: #77899a !important; }
html.dark .text-outline-variant { color: #566b7d !important; }
html.dark .border-border-slate { border-color: rgba(150, 190, 220, 0.16) !important; }
html.dark .border-slate { border-color: rgba(150, 190, 220, 0.16); }
html.dark header#main-nav { background-color: rgba(13, 27, 39, 0.92); border-color: rgba(150,190,220,.14); }
html.dark footer { background-color: #0a1a2a; }
html.dark .text-surface-variant { color: #9fb2c1 !important; }
html.dark .shadow-sm, html.dark .shadow-lift { box-shadow: 0 2px 10px rgba(0,0,0,.35) !important; }
html.dark .shadow-lift:hover { box-shadow: 0 10px 22px rgba(0,0,0,.45) !important; }
html.dark .site-ambient-bg {
  background:
    linear-gradient(180deg, rgba(11,22,32,.55) 0%, rgba(13,28,41,.5) 45%, rgba(15,33,48,.45) 100%),
    url('bg-foliage-mid.png') top right / min(56vw, 1500px) auto no-repeat,
    url('bg-foliage-tall.png') bottom left / min(34vw, 950px) auto no-repeat,
    linear-gradient(180deg, #0b1620 0%, #0d1c29 45%, #0f2130 100%);
}
html.dark .hero-stage,
html.dark .category-overview,
html.dark .home-section-intro {
  background: linear-gradient(180deg, rgba(16,31,44,.9), rgba(14,28,41,.88));
  border-color: rgba(150,190,220,.16);
}
html.dark .category-card { background-color: #10202e; border-color: rgba(150,190,220,.16); --category-overlay: linear-gradient(90deg, rgba(16,32,46,.98) 0 38%, rgba(16,32,46,.88) 46%, rgba(16,32,46,.3) 55%, rgba(16,32,46,0) 66%); }
html.dark .category-card::after { background: var(--category-overlay); }
html.dark .category-card { background-blend-mode: overlay; }
html.dark .category-card img { filter: brightness(0.8) contrast(1.1); }
html.dark .hero-copy { background: rgba(16,31,44,.66); border-color: rgba(150,190,220,.14); }
html.dark img { filter: brightness(.92); }
html.dark .finput { background-color: #0e1c29; color: #dfe7ee; border-color: rgba(150,190,220,.16); }
html.dark .catalog-shortcut,
html.dark .catalog-sublink { background: rgba(16,31,44,.9); border-color: rgba(150,190,220,.18); color: #c6d4df; }
html.dark .catalog-guidance-banner { background-color: #101f2c; }
html.dark .service-banner { background-color: #101f2c; }
html.dark .service-banner .bg-no-repeat, html.dark .about-showcase .bg-no-repeat { mix-blend-mode: soft-light !important; opacity: 0.15 !important; }
html.dark .theme-toggle .theme-icon-dark { display: inline-block; }
html.dark .theme-toggle .theme-icon-light { display: none !important; }
html.dark .theme-toggle[data-theme-toggle="dark"] .theme-icon-dark { display: none; }
html.dark .theme-toggle[data-theme-toggle="dark"] .theme-icon-light { display: inline-block !important; }
html:not(.dark) .theme-toggle[data-theme-toggle="dark"] .theme-icon-light { display: none; }

/* ============ ЭКОНОМИЧНЫЙ РЕЖИМ (html.lite) ============ */
html.lite .site-ambient-bg,
html.lite .hero-watercolor { display: none !important; }
html.lite img { visibility: hidden; }
html.lite .product-image-zone,
html.lite .hero-product-card,
html.lite .product-gallery-main { background: #e8eef3 !important; }
html.lite .category-card { background-image: none !important; background-color: #e4edf3 !important; }
html.lite .home-section-intro,
html.lite .catalog-hero-shell { background-image: none !important; background-color: #e4edf3 !important; }
html.lite *,
html.lite *::before,
html.lite *::after {
  animation-duration: 0ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0ms !important;
}

/* ============ КОРЗИНА: анимации подтверждения ============ */
.cart-badge-pulse { animation: cartPulse .45s cubic-bezier(.23,1,.32,1); }
@keyframes cartPulse {
  0% { transform: scale(1); }
  40% { transform: scale(1.45); }
  100% { transform: scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  .cart-badge-pulse { animation: none; }
}
#buy-submit.added-ok { background-color: #17C3B2 !important; }
.usvc-btn.added-ok { background-color: #17C3B2 !important; }

/* Степпер в карточке товара (после добавления в корзину) */
.card-qty {
  display: flex;
  align-items: center;
  border: 1px solid rgba(0,45,84,.12);
  border-radius: 8px;
  height: 32px;
  background: #fff;
  overflow: hidden;
}
html.dark .card-qty { background: #0e1c29; }
.card-qty button {
  width: 24px;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #707881;
  font-size: 14px;
}
.card-qty button:hover { color: #002D54; background: #f2f5f8; }
.card-qty .card-qty-value {
  min-width: 20px;
  text-align: center;
  font: 700 13px/1 'Inter', sans-serif;
  color: #002D54;
}

/* Отказ при превышении остатка: тряска степпера + всплывающая подсказка */
.card-qty { position: relative; }
.qty-shake { animation: qtyShake .3s ease-out; }
@keyframes qtyShake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-4px); }
  50% { transform: translateX(4px); }
  75% { transform: translateX(-2px); }
}
.qty-hint {
  position: absolute;
  bottom: calc(100% + 6px);
  right: 0;
  white-space: nowrap;
  background: #002D54;
  color: #fff;
  font: 600 11px/1 'Inter', sans-serif;
  padding: 5px 8px;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,45,84,.25);
  opacity: 0;
  pointer-events: none;
  transform: translateY(3px);
  transition: opacity .2s ease-out, transform .2s ease-out;
  z-index: 30;
}
.qty-hint::after {
  content: '';
  position: absolute;
  top: 100%; right: 12px;
  border: 5px solid transparent;
  border-top-color: #002D54;
}
.qty-hint--show { opacity: 1; transform: translateY(0); }
html.dark .qty-hint { background: #a8d4f5; color: #06121c; }
html.dark .qty-hint::after { border-top-color: #a8d4f5; }
@media (prefers-reduced-motion: reduce) {
  .qty-shake { animation: none; }
  .qty-hint { transition: none; }
}

/* Галерея главной фотографии товара: тянется по высоте правой колонки */
.product-gallery-main { flex: 1 1 auto; min-height: 380px; aspect-ratio: 1 / 1; max-height: 640px; }
.product-gallery-main img { width: 100%; height: 100%; max-height: 100%; object-fit: contain; }
@media (max-width: 767px) {
  .product-gallery-main { min-height: 320px; flex: 0 0 auto; height: 320px; }
}

/* ============ КАРУСЕЛЬ ОТЗЫВОВ ============ */
.reviews-carousel { position: relative; }
.reviews-viewport { overflow: hidden; border-radius: 24px; }
.reviews-track {
  display: flex;
  transition: transform .35s ease-out;
  will-change: transform;
}
.review-slide {
  flex: 0 0 100%;
  padding: 1.75rem 1.5rem 1.6rem;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(246,250,253,.9));
  border: 1px solid rgba(191,199,209,.45);
  border-radius: 24px;
}
html.dark .catalog-guidance-banner { background: linear-gradient(180deg, rgba(16,31,44,.94), rgba(14,28,41,.9)); }
html.dark .service-banner { background: linear-gradient(120deg, rgba(16,31,44,.94), rgba(14,28,41,.9)); }
/* Яндекс-карта в тёмную тему: класс висит на самом iframe — селектор без пробела */
html.dark iframe.yandex-map-dark,
html.dark .yandex-map-dark iframe {
  filter: invert(.92) hue-rotate(185deg) saturate(.75) brightness(.92);
}
/* кикер hero в тёмной теме: светлый текст вместо тёмно-синего */
html.dark .section-kicker {
  background: rgba(22,40,58,.85) !important;
  color: #a8d4f5 !important;
}
html.dark .section-kicker .material-symbols-outlined { color: #a8d4f5 !important; }
/* цифры и стрелки степпера — светлые */
html.dark .card-qty .card-qty-value { color: #dfe7ee !important; }
html.dark .card-qty button { color: #9fb2c1 !important; }
html.dark .card-qty button:hover { color: #fff !important; background: rgba(150,190,220,.12) !important; }
html.dark .qty-stepper { background: #0e1c29 !important; }
html.dark .qty-stepper input { color: #dfe7ee !important; background: transparent !important; }
html.dark .qty-stepper button { color: #9fb2c1 !important; }
html.dark .category-card__title { color: #a8d4f5 !important; }
html.dark .category-card__copy { color: #9fb2c1 !important; }
html.dark .usvc-btn.added-ok,
html.dark #buy-submit.added-ok { background-color: #17C3B2 !important; color: #062a26 !important; }

/* --- Ночная тема: вторичные белые кнопки и светлые плашки --- */
/* все «белые» кнопки на тёмном фоне: тёмный корпус, светлый текст, читаемый бордер */
html.dark .bg-chalk-white {
  background-color: #16283a !important;
  color: #dfe7ee !important;
  border: 1px solid rgba(150,190,220,.28);
}
html.dark a.bg-chalk-white:hover,
html.dark button.bg-chalk-white:hover { background-color: #1d3448 !important; color: #ffffff !important; }
html.dark .bg-chalk-white .text-prussian-blue { color: #dfe7ee !important; }
/* hero-cta вторичная («Заказать монтаж» и т.п.) */
html.dark .hero-cta--secondary {
  background: rgba(16,31,44,.9) !important;
  color: #dfe7ee !important;
  border: 1px solid rgba(150,190,220,.32) !important;
}
html.dark .hero-cta--secondary:hover { background: rgba(26,44,60,.95) !important; color: #fff !important; }
/* метрики hero (карточки справа: 8 областей / 800+ / Анализ воды) */
html.dark .hero-metric {
  background: rgba(16,31,44,.88) !important;
  border-color: rgba(150,190,220,.18) !important;
}
html.dark .hero-metric__value { color: #a8d4f5 !important; }
html.dark .hero-metric__label { color: #9fb2c1 !important; }
html.dark .hero-metric__icon { color: #3090D1 !important; }
/* круглые стрелки карточек категорий */
html.dark .category-card__arrow {
  background: rgba(22,40,58,.9) !important;
  border-color: rgba(150,190,220,.26) !important;
  color: #a8d4f5 !important;
}
/* CTA-баннер «Подберём систему» и заголовок в нём */
html.dark .catalog-guidance-banner .text-prussian-blue,
html.dark .service-banner .text-prussian-blue { color: #a8d4f5 !important; }
/* чипы скидки/наличия на фото и «Скидка» */
html.dark .chip { background: rgba(22,40,58,.85) !important; color: #dfe7ee !important; }
/* кнопки «Услуги и цены»-типа (btn-secondary-dark-safe) */
html.dark .btn-secondary-dark-safe {
  background-color: #16283a !important;
  color: #dfe7ee !important;
  border: 1px solid rgba(150,190,220,.28);
}
html.dark .btn-secondary-dark-safe:hover { background-color: #1d3448 !important; color: #fff !important; }
/* стрелки карусели отзывов и пагинации */
html.dark .reviews-nav,
html.dark .category-all-button {
  background: rgba(22,40,58,.9) !important;
  color: #a8d4f5 !important;
  border-color: rgba(150,190,220,.26) !important;
}
html.dark .reviews-nav:hover { background: #3090D1 !important; color: #fff !important; }
/* #69: hover-ссылки и тексты в тёмной теме СВЕТЛЕЮТ (не темнеют) */
html.dark .prose a:hover { color: #5cb0e0; }
html.dark .hover\:text-prussian-blue:hover { color: #5cb0e0 !important; }
html.dark .hover\:text-on-surface:hover { color: #e2ecf5 !important; }
html.dark .hover\:text-error:hover { color: #ff8a80 !important; }
/* тумблер сортировки/тулбар каталога */
html.dark select,
html.dark .sort-select { background-color: #0e1c29; color: #dfe7ee; }
/* отзывы и каталог-блок в тёмную тему */
html.dark .review-slide {
  background: linear-gradient(180deg, rgba(16,31,44,.94), rgba(14,28,41,.9)) !important;
  border-color: rgba(150,190,220,.16) !important;
}
html.dark .reviews-dots button { background: rgba(150,190,220,.3); }
html.dark .reviews-dots button.active { background: #3090D1; }
html.dark .catalog-hero-shell { background: #101f2c !important; }
html.dark .catalog-hero-shell .text-outline,
html.dark .catalog-hero-shell .text-outline-variant { color: #9fb2c1 !important; }
html.dark .catalog-shortcut span, html.dark .catalog-sublink span { color: #9fb2c1; }
.review-slide__stars { color: #f5b301; letter-spacing: 2px; font-size: 15px; margin-bottom: .6rem; }
.review-slide__text { font: 400 15.5px/1.6 'Inter', sans-serif; color: #404850; margin-bottom: .9rem; }
html.dark .review-slide__text { color: #c6d4df; }
.review-slide__author { font: 700 13px/1.3 'Inter Tight', sans-serif; color: #002D54; }
html.dark .review-slide__author { color: #a8d4f5; }
.review-slide__meta { font: 400 12px/1.3 'Inter', sans-serif; color: #8b98a5; margin-top: 2px; }
.reviews-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 40px;
  height: 40px;
  border-radius: 9999px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(191,199,209,.6);
  color: #002D54;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 14px rgba(0,45,84,.12);
  z-index: 2;
  transition: background .2s ease, color .2s ease;
}
.reviews-nav:hover { background: #3090D1; color: #fff; }
/* на десктопе стрелки вынесены за пределы карточки и не перекрывают текст */
.reviews-nav--prev { left: -20px; }
.reviews-nav--next { right: -20px; }
@media (min-width: 1320px) {
  .reviews-nav--prev { left: -52px; }
  .reviews-nav--next { right: -52px; }
}
.reviews-dots { display: flex; justify-content: center; gap: 6px; margin-top: .9rem; }
.reviews-dots button { width: 8px; height: 8px; border-radius: 9999px; background: #cfdde8; transition: background .2s ease, width .2s ease; }
.reviews-dots button.active { background: #3090D1; width: 20px; }
@media (max-width: 767px) {
  .review-slide__text { font-size: 14px; }
  /* на мобиле стрелки прижаты к краям и полупрозрачные */
  .reviews-nav { width: 34px; height: 34px; opacity: .85; }
  .reviews-nav--prev { left: 6px; }
  .reviews-nav--next { right: 6px; }
}
@media (prefers-reduced-motion: reduce) {
  .reviews-track { transition: none; }
}

/* ============ БЛОК СТАТЕЙ НА ГЛАВНОЙ ============ */
.article-card {
  display: flex;
  flex-direction: column;
  background: rgba(255,255,255,.94);
  border: 1px solid rgba(191,199,209,.5);
  border-radius: 20px;
  padding: 1.15rem 1.25rem 1.2rem;
  transition: transform .25s ease, box-shadow .25s ease;
}
html.dark .article-card { background: rgba(16,31,44,.94); border-color: rgba(150,190,220,.16); }
.article-card:hover { transform: translateY(-3px); box-shadow: 0 12px 26px rgba(0,45,84,.12); }
.article-card__date { font: 500 12px/1.3 'Inter', sans-serif; color: #8b98a5; margin-bottom: .45rem; }
.article-card__title { font: 700 16px/1.35 'Inter Tight', sans-serif; color: #002D54; margin-bottom: .4rem; }
html.dark .article-card__title { color: #a8d4f5; }
.article-card__excerpt { font: 400 13.5px/1.55 'Inter', sans-serif; color: #5b6771; margin-bottom: .7rem; }
html.dark .article-card__excerpt { color: #9fb2c1; }
.article-card__more { font: 600 13px/1.3 'Inter Tight', sans-serif; color: #3090D1; margin-top: auto; display: inline-flex; align-items: center; gap: 4px; }


/* ============ ТЕКСТ СТАТЕЙ БЛОГА (.prose) ============ */
.prose h2 { font: 700 20px/1.3 'Inter Tight', sans-serif; color: #002D54; margin: 1.6rem 0 .7rem; }
.prose h3 { font: 600 17px/1.35 'Inter Tight', sans-serif; color: #002D54; margin: 1.3rem 0 .5rem; }
.prose h4 { font: 600 15px/1.4 'Inter Tight', sans-serif; color: #002D54; margin: 1.1rem 0 .4rem; }
.prose p { margin: 0 0 .85rem; }
.prose p:last-child { margin-bottom: 0; }
.prose ul, .prose ol { margin: 0 0 .85rem; padding-left: 1.35rem; }
.prose ul { list-style: disc; }
.prose ol { list-style: decimal; }
.prose li { margin-bottom: .35rem; }
.prose strong { font-weight: 600; color: #002D54; }
.prose a { color: #3090D1; text-decoration: underline; text-underline-offset: 2px; }
.prose a:hover { color: #002D54; }
.prose img { max-width: 100%; height: auto; border-radius: 12px; margin: 1rem 0; }
.prose blockquote { margin: 1rem 0; padding: .6rem 1rem; border-left: 3px solid #3090D1; background: #f2f5f8; border-radius: 0 10px 10px 0; }
.prose table { width: 100%; border-collapse: collapse; margin: 1rem 0; font-size: 14px; display: block; overflow-x: auto; }
.prose th, .prose td { border: 1px solid rgba(0,45,84,.12); padding: .5rem .7rem; text-align: left; vertical-align: top; }
.prose th { background: #eaf3fa; font: 600 13px/1.4 'Inter Tight', sans-serif; color: #002D54; }
.prose hr { border: none; border-top: 1px solid rgba(0,45,84,.12); margin: 1.4rem 0; }
html.dark .prose h2, html.dark .prose h3, html.dark .prose h4, html.dark .prose strong { color: #a8d4f5; }
html.dark .prose th { background: #10314f; color: #cfe4f5; }
html.dark .prose th, html.dark .prose td { border-color: rgba(168,212,245,.18); }
html.dark .prose blockquote { background: #0d2740; border-left-color: #17C3B2; }


/* ============ БАТЧ 4: бейдж наличия (брендовый синий в обеих темах) ============ */
.stock-chip { background: rgba(48,144,209,.12); color: #3090D1; }
html.dark .stock-chip { background: rgba(48,144,209,.22); color: #5FB2E3; }

/* ============ БАТЧ 4: сердечко избранного — без рамки, синее/красное ============ */
.fav-heart { color: #3090D1; background: transparent; border: none; box-shadow: none; backdrop-filter: none; }
.fav-heart .material-symbols-outlined { color: inherit; }
.fav-heart:hover { opacity: .8; }
.fav-heart.is-fav { color: #D32F2F; }
html.dark .fav-heart.is-fav { color: #EF5350; }

/* ============ БАТЧ 4: шапка блога (брендовый блок) ============ */
.blog-hero { background-color: #ffffff; }
html.dark .blog-hero { background-color: rgba(16,31,44,.94); border-color: rgba(150,190,220,.16); }
