/* Login, registration and catalogue styles; separate from the homepage stylesheet. */
.auth-page{width:calc(100% - 40px);max-width:1440px;min-height:600px;margin:10px auto 70px;display:grid;grid-template-columns:1fr 1fr;overflow:hidden;border-radius:25px;background:#f4f7fc}
.auth-visual{position:relative;min-height:660px;overflow:hidden;background:#10294B;color:white;display:flex;align-items:flex-end;padding:clamp(30px,5vw,65px)}
.auth-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.66;transition:transform .7s}.auth-visual:hover>img{transform:scale(1.035)}
.auth-visual-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#10294b15 0%,#10294b45 35%,#081a31f2 100%)}
.auth-visual-copy{position:relative;z-index:2;animation:auth-rise .7s both}.auth-kicker{display:inline-flex;font-size:.68rem;font-weight:800;letter-spacing:.15em;color:#3478F6}
.auth-visual .auth-kicker{color:#bcd1ff}.auth-visual h1{font-size:clamp(2.7rem,5vw,5rem);line-height:1.02;letter-spacing:-.07em;margin:17px 0}.auth-visual h1 em{font-style:normal;color:#8db4ff}.auth-visual-copy>p{max-width:410px;color:#e0e8f5;line-height:1.8;font-size:.9rem}.auth-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.auth-pills span{border:1px solid #ffffff55;background:#ffffff12;padding:8px 11px;border-radius:8px;font-size:.7rem}
.auth-card-wrap{display:grid;place-items:center;padding:35px clamp(22px,5vw,70px);background:linear-gradient(135deg,#fff,#f3f7ff)}.auth-card{width:100%;max-width:430px;animation:auth-rise .75s .08s both}.auth-brand{display:inline-flex;align-items:center;margin-bottom:25px}.auth-brand img{width:135px;height:68px;object-fit:contain;object-position:left center}.auth-card h2{font-size:clamp(2rem,3.5vw,2.8rem);letter-spacing:-.065em;line-height:1.1;color:#10294B;margin-top:9px}.auth-card h2 em{font-style:normal;color:#3478F6}.auth-subtitle{font-size:.81rem;color:#718097;margin:10px 0 24px}.auth-form{display:flex;flex-direction:column;gap:17px}.auth-form>label{display:flex;flex-direction:column;gap:7px;font-size:.74rem;font-weight:700;color:#263b57}.auth-form input:not([type=checkbox]){width:100%;min-height:46px;border:1px solid #dfe7f2;border-radius:10px;padding:12px 13px;background:#fff;font:inherit;font-size:.78rem;outline:none;transition:border .2s,box-shadow .2s}.auth-form input:focus{border-color:#3478F6;box-shadow:0 0 0 3px #3478f61b}.password-wrap{display:flex;position:relative}.password-wrap input{padding-right:58px!important}.show-password{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#3478F6;font-size:.7rem;font-weight:800;cursor:pointer}.auth-options{display:flex;justify-content:space-between;align-items:center;gap:10px}.remember{display:flex;align-items:center;gap:7px;font-size:.68rem;color:#65748a}.muted-small{font-size:.65rem;color:#7b899c}.auth-submit{width:100%;min-height:49px;display:flex;align-items:center;justify-content:center;gap:20px;border:0;border-radius:10px;background:#10294B;color:white;font-size:.82rem;font-weight:750;cursor:pointer;transition:background .2s,transform .2s}.auth-submit:hover{background:#3478F6;transform:translateY(-2px)}.auth-submit:disabled{opacity:.5;cursor:not-allowed}.auth-switch{text-align:center;font-size:.76rem;color:#69788e;margin-top:22px}.auth-switch a{color:#3478F6;font-weight:800}.auth-security{text-align:center;font-size:.64rem;color:#8290a2;margin-top:17px}.notice{padding:11px 13px;border-radius:9px;margin:12px 0;font-size:.76rem;line-height:1.5}.notice.success{background:#e8f7f0;color:#1e775b}.notice.error{background:#fff0f0;color:#b42332}
.products-page{max-width:1440px;width:calc(100% - 40px);margin:10px auto 70px}.products-hero{position:relative;isolation:isolate;min-height:285px;display:flex;align-items:center;justify-content:space-between;gap:25px;overflow:hidden;padding:45px clamp(25px,5vw,65px);border-radius:23px;background:#edf3ff}.products-hero>div{position:relative;z-index:2}.products-hero h1{font-size:clamp(2.6rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.075em;color:#10294B;margin:14px 0}.products-hero h1 em{font-style:normal;color:#3478F6}.products-hero p{font-size:.86rem;color:#68788e}.products-hero>img{position:absolute;right:0;top:0;width:50%;height:100%;object-fit:cover;z-index:0;mask-image:linear-gradient(90deg,transparent 0%,#000 40%);opacity:.87}.catalog-wrap{padding:60px 0 0}.catalog-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.catalog-heading h2{font-size:clamp(2rem,3.5vw,2.8rem);letter-spacing:-.065em;line-height:1.1;color:#10294B;margin-top:8px}.catalog-heading h2 em{font-style:normal;color:#3478F6}.catalog-heading p{font-size:.75rem;color:#7b899c;margin-top:7px}.catalog-filters{display:grid;grid-template-columns:minmax(200px,1fr) 200px 180px auto;gap:10px;margin-bottom:25px;padding:13px;border:1px solid #e6edf6;border-radius:14px;background:#f8faff}.search-field{display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #dfe7f2;border-radius:9px;background:#fff;color:#3478F6}.search-field span{font-size:1.5rem}.search-field input{width:100%;min-width:0;border:0;outline:0;padding:10px 0;font:inherit;font-size:.75rem}.catalog-filters select{min-width:0;border:1px solid #dfe7f2;border-radius:9px;padding:10px;background:#fff;color:#263b57;font:inherit;font-size:.75rem}.filter-submit{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border:0;border-radius:9px;background:#10294B;color:#fff;font-size:.75rem;font-weight:750;cursor:pointer}.filter-submit:hover{background:#3478F6}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.catalog-product{min-width:0;overflow:hidden;border:1px solid #e6edf6;border-radius:16px;background:#fff;transition:transform .25s,box-shadow .25s,border-color .25s}.catalog-product:hover{transform:translateY(-5px);border-color:#d2e0fa;box-shadow:0 16px 35px #10294b12}.catalog-image{height:220px;display:block;position:relative;overflow:hidden;background:#f1f5fb}.catalog-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.catalog-product:hover .catalog-image img{transform:scale(1.05)}.catalog-badge{position:absolute;top:12px;left:12px;padding:5px 8px;border-radius:6px;background:#10294B;color:#fff;font-size:.58rem;font-weight:800}.catalog-product-info{padding:15px}.catalog-category{font-size:.59rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#3478F6}.catalog-product-info h3{font-size:.91rem;color:#10294B;margin:7px 0}.catalog-product-info h3 a:hover{color:#3478F6}.catalog-product-info>p{font-size:.7rem;line-height:1.6;color:#77859a;min-height:35px}.catalog-product-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e6edf6;margin-top:13px;padding-top:12px}.catalog-product-bottom strong{font-size:.95rem;color:#10294B}.catalog-add{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#3478F6;color:#fff;font-size:1.35rem}.catalog-note{font-size:.68rem;color:#8a96a6;margin-top:17px}.empty-state{text-align:center;padding:65px 20px;border:1px dashed #cbd8e9;border-radius:17px;background:#f8faff}.empty-state>span{font-size:2rem;color:#3478F6}.empty-state h3{color:#10294B;margin:10px}.empty-state p{color:#7b899c;font-size:.82rem;margin-bottom:20px}.detail-page{max-width:1200px;width:calc(100% - 40px);margin:25px auto 80px}.back-link{display:inline-block;color:#3478F6;font-size:.8rem;font-weight:700;margin-bottom:20px}.detail-card{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding:clamp(20px,4vw,50px);border:1px solid #e6edf6;border-radius:22px}.detail-image{min-height:350px;border-radius:16px;overflow:hidden;background:#f1f5fb}.detail-image img{width:100%;height:100%;min-height:350px;object-fit:cover}.detail-info{align-self:center}.detail-info h1{font-size:clamp(2rem,4vw,3.3rem);line-height:1.1;letter-spacing:-.06em;color:#10294B;margin:12px 0}.detail-price{font-size:1.45rem;font-weight:800;color:#3478F6;margin:16px 0}.detail-description{font-size:.88rem;line-height:1.85;color:#69788e}.stock-note{font-size:.76rem;color:#21835f;font-weight:700;margin-top:18px}.detail-add-form{display:flex;align-items:flex-end;gap:12px;margin-top:20px}.detail-add-form label{font-size:.72rem;color:#52657d;font-weight:700}.detail-add-form input{display:block;width:75px;min-height:49px;margin-top:6px;padding:10px;border:1px solid #dfe7f2;border-radius:9px}.detail-add-form .auth-submit{width:auto;padding:0 20px}.detail-info .catalog-note{line-height:1.6}
@keyframes auth-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1000px){.catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-filters{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.auth-visual{padding:35px}.auth-card-wrap{padding:30px}.catalog-image{height:200px}}
@media(max-width:760px){.auth-page{width:calc(100% - 20px);grid-template-columns:1fr;margin-top:10px}.auth-visual{min-height:290px;padding:28px}.auth-visual h1{font-size:2.7rem}.auth-visual-copy>p{font-size:.8rem}.auth-card-wrap{padding:36px 22px}.auth-card{max-width:470px}.auth-brand img{width:115px;height:58px}.auth-options{align-items:flex-start;flex-direction:column}.products-page{width:calc(100% - 20px)}.products-hero{min-height:300px;padding:30px 23px;align-items:flex-start;justify-content:center;flex-direction:column}.products-hero>img{width:100%;opacity:.2;mask-image:linear-gradient(90deg,#0003,#0008)}.products-hero h1{font-size:3rem}.catalog-wrap{padding-top:42px}.catalog-filters{grid-template-columns:1fr}.search-field{grid-column:auto}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.catalog-image{height:165px}.catalog-product-info{padding:11px}.catalog-product-info h3{font-size:.81rem}.catalog-product-info>p{font-size:.66rem}.catalog-product-bottom strong{font-size:.8rem}.catalog-add{width:31px;height:31px}.detail-card{grid-template-columns:1fr;gap:25px}.detail-image,.detail-image img{min-height:260px}.detail-add-form{align-items:stretch;flex-direction:column}.detail-add-form label input{width:100%}.detail-add-form .auth-submit{width:100%}}
@media(max-width:390px){.catalog-grid{grid-template-columns:1fr 1fr}.catalog-image{height:140px}.catalog-product-info h3{font-size:.75rem}.catalog-product-bottom strong{font-size:.75rem}.products-hero h1{font-size:2.55rem}}
@media(prefers-reduced-motion:reduce){.auth-visual-copy,.auth-card,.catalog-product,.catalog-image img,.auth-submit{animation:none!important;transition:none!important}}
