
:root{--black:#111111;--white:#fff;--red:#C62828;--graphite:#2B2F36;--light:#F4F5F7;--steel:#B8C0CC;--burgundy:#7A1E1E;--beige:#E7DED3;--line:#e3e5e8;--max:1220px;--radius:24px;--shadow:0 24px 70px rgba(17,17,17,.12);--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--black);background:#fff;line-height:1.55;overflow-x:hidden}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:14px;top:14px;z-index:999;background:#fff;border:1px solid var(--line);padding:10px;border-radius:8px}
.header-topline{background:var(--black);color:#fff;font-size:12px}.topline-inner{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:22px}.topline-links{display:flex;gap:22px;color:#ddd}.header-main{background:#fff}.header-main-inner{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;flex:0 0 auto}.brand img{width:420px;max-width:42vw}.header-quick{display:flex;align-items:center;gap:28px;color:#62666d;font-size:13px}.header-cta{padding:12px 20px;border:1px solid var(--graphite);border-radius:999px;color:var(--black);font-weight:800;transition:.3s var(--ease)}.header-cta:hover{background:var(--burgundy);border-color:var(--burgundy);color:#fff;transform:translateY(-2px)}.main-nav{position:sticky;top:0;z-index:50;background:var(--graphite);color:#fff;box-shadow:0 8px 22px rgba(0,0,0,.08)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:58px}.main-nav a{position:relative;display:flex;align-items:center;justify-content:center;min-height:58px;padding:0 14px;font-size:14px;font-weight:800;transition:.32s var(--ease);border-radius:10px 10px 0 0}.main-nav a::after{content:"";position:absolute;left:14px;right:14px;bottom:7px;height:2px;background:var(--red);transform:scaleX(0);transition:.28s var(--ease)}.main-nav a:hover,.main-nav a.is-active{background:#fff;color:var(--black);transform:translateY(-5px)}.main-nav a:hover::after,.main-nav a.is-active::after{transform:scaleX(1)}.scroll-progress{position:absolute;left:0;bottom:0;height:2px;background:var(--red);width:0;z-index:60}.menu-button{display:none;margin-left:auto;width:46px;height:46px;border:1px solid var(--line);background:#fff;border-radius:10px;flex-direction:column;align-items:center;justify-content:center;gap:5px}.menu-button span{width:22px;height:2px;background:#111;display:block;transition:.25s}
.section{padding:96px 0}.eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--burgundy);font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.eyebrow::before{content:"";width:28px;height:2px;background:currentColor}.eyebrow-light{color:#fff}.section-head{max-width:940px;margin-bottom:38px}.section-head h2{margin:10px 0 14px;font-size:clamp(34px,4.3vw,58px);line-height:1;letter-spacing:-.045em}.section-head p{margin:0;color:#525861;font-size:17px}.hero{position:relative;overflow:hidden;padding:86px 0 76px;background:linear-gradient(120deg,#fff 0 55%,var(--light) 55% 100%)}.hero::after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 1px 1px,rgba(43,47,54,.12) 1px,transparent 1.2px);background-size:22px 22px;mask-image:linear-gradient(90deg,transparent,#000 45%,#000);opacity:.35;pointer-events:none}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center;position:relative;z-index:2}.hero-copy h1{font-size:clamp(48px,5.6vw,78px);line-height:.96;letter-spacing:-.055em;margin:16px 0 24px;max-width:820px}.hero-copy h1 em{font-style:normal;color:var(--burgundy)}.hero-lead{font-size:18px;color:#454a52;max-width:760px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 22px;border-radius:10px;font-size:14px;font-weight:900;transition:.3s var(--ease);position:relative;overflow:hidden}.btn::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.25) 50%,transparent 65%);transform:translateX(-140%);transition:.55s}.btn:hover::before{transform:translateX(140%)}.btn-primary{background:var(--burgundy);color:#fff;box-shadow:0 14px 34px rgba(122,30,30,.24)}.btn-primary:hover{transform:translateY(-4px) scale(1.015);background:#691919}.btn-secondary{background:#fff;border:1px solid var(--graphite)}.btn-secondary:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(17,17,17,.12)}.btn-light{background:#fff;color:var(--black);margin-top:24px}.hero-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.hero-stats article{padding:16px;border:1px solid rgba(43,47,54,.14);background:rgba(255,255,255,.75);backdrop-filter:blur(12px);border-radius:16px;transition:.3s var(--ease)}.hero-stats article:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.hero-stats strong{font-size:24px;display:block}.hero-stats span{font-size:12px;color:#60656c}.hero-visual{perspective:1000px}.visual-panel{background:linear-gradient(145deg,var(--graphite),#17191d);color:#fff;border-radius:32px;padding:28px;box-shadow:var(--shadow);position:relative;overflow:hidden;transform-style:preserve-3d}.visual-panel::before{content:"";position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(198,40,40,.34),transparent 62%);right:-130px;top:-130px;animation:pulseOrb 5s ease-in-out infinite}.visual-head{display:flex;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12);position:relative}.visual-head span{color:#cdd1d7;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.visual-head b{color:var(--beige)}.visual-grid{display:grid;gap:10px;margin-top:18px;position:relative}.visual-grid div{display:grid;grid-template-columns:40px 120px 1fr;align-items:center;gap:12px;padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.04);transition:.3s var(--ease)}.visual-grid div:hover{transform:translateX(8px);background:rgba(255,255,255,.08);border-color:rgba(231,222,211,.4)}.visual-grid i{font-style:normal;color:var(--red);font-weight:900}.visual-grid span{color:#bfc4cb;font-size:12px}.visual-ribbon{margin-top:18px;padding:14px;border-radius:14px;background:linear-gradient(90deg,var(--burgundy),var(--red));font-weight:900;text-transform:uppercase;letter-spacing:.09em;font-size:12px;text-align:center}.hero-shape{position:absolute;pointer-events:none;filter:blur(.1px);animation:floatShape 8s ease-in-out infinite}.hero-shape-a{width:180px;height:180px;background:var(--beige);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);left:3%;bottom:-72px;opacity:.48}.hero-shape-b{width:110px;height:110px;background:var(--steel);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);right:4%;top:24px;opacity:.3;animation-delay:-2s}.hero-mouse-glow{position:absolute;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(198,40,40,.12),transparent 65%);transform:translate(-50%,-50%);pointer-events:none;opacity:0;transition:opacity .3s;z-index:1}.hero:hover .hero-mouse-glow{opacity:1}.service-marquee{background:var(--black);color:#fff;overflow:hidden;border-top:1px solid #202126;border-bottom:1px solid #202126}.marquee-track{display:inline-block;white-space:nowrap;min-width:200%;padding:14px 0;font-weight:900;letter-spacing:.08em;color:#d9dce0;animation:marquee 28s linear infinite}.palette-intro{background:var(--white)}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.cap-card{min-height:245px;padding:26px;border-radius:22px;border:1px solid var(--line);position:relative;overflow:hidden;transition:.35s var(--ease);box-shadow:0 10px 30px rgba(17,17,17,.04)}.cap-card::after{content:"";position:absolute;right:-70px;bottom:-70px;width:150px;height:150px;border-radius:50%;background:currentColor;opacity:.06;transition:.4s var(--ease)}.cap-card:hover{transform:translateY(-8px) rotate(-.3deg);box-shadow:var(--shadow)}.cap-card:hover::after{transform:scale(1.4)}.cap-card>span{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.35);font-weight:900;font-size:11px}.cap-card h3{font-size:25px;margin:28px 0 12px}.cap-card p{margin:0;font-size:14px}.cap-burgundy{background:var(--burgundy);color:#fff}.cap-burgundy p,.cap-graphite p,.cap-red p,.cap-black p{color:#eee}.cap-graphite{background:var(--graphite);color:#fff}.cap-red{background:var(--red);color:#fff}.cap-beige{background:var(--beige)}.cap-steel{background:var(--steel)}.cap-black{background:var(--black);color:#fff}.showcase-dark{background:linear-gradient(120deg,var(--black),var(--graphite));color:#fff}.showcase-beige{background:var(--beige)}.split-showcase{display:grid;grid-template-columns:1.08fr .92fr;gap:52px;align-items:center}.split-showcase.reverse{grid-template-columns:.92fr 1.08fr}.showcase-image{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);position:relative}.showcase-image::after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.25);border-radius:inherit;pointer-events:none}.showcase-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.showcase-image:hover img{transform:scale(1.035)}.showcase-copy h2{font-size:clamp(36px,4.2vw,56px);line-height:1;letter-spacing:-.045em;margin:12px 0 18px}.showcase-dark .showcase-copy p{color:#d6d9dd}.text-link{display:inline-flex;gap:10px;align-items:center;color:#fff;font-weight:900;margin-top:10px}.text-link span{transition:.25s}.text-link:hover span{transform:translateX(6px)}.text-link.dark{color:var(--black)}.workflow-section{background:var(--light)}.workflow-line{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.workflow-line::before{content:"";position:absolute;left:4%;right:4%;top:22px;height:2px;background:linear-gradient(90deg,var(--burgundy),var(--red),var(--steel));transform:scaleX(0);transform-origin:left;transition:1.2s var(--ease)}.workflow-line.is-visible::before{transform:scaleX(1)}.workflow-line article{position:relative;padding:52px 16px 20px;background:#fff;border-radius:18px;border:1px solid var(--line)}.workflow-line b{position:absolute;top:8px;left:16px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--burgundy);color:var(--burgundy);font-size:11px;z-index:2}.workflow-line h3{font-size:16px;margin:0 0 7px}.workflow-line p{font-size:12px;color:#646970;margin:0}.quality-preview{background:linear-gradient(135deg,#202228,#111);color:#fff;position:relative;overflow:hidden}.quality-preview::after{content:"";position:absolute;right:-20%;top:-40%;width:70%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 80px rgba(255,255,255,.02),0 0 0 160px rgba(255,255,255,.015);animation:slowSpin 18s linear infinite}.quality-grid{position:relative;z-index:1;display:grid;grid-template-columns:.9fr 1.1fr;gap:58px;align-items:center}.quality-grid h2{font-size:clamp(36px,4.2vw,58px);line-height:1;margin:12px 0 18px}.quality-grid p{color:#cfd2d7}.quality-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quality-cards article{padding:22px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.05);backdrop-filter:blur(8px);transition:.3s var(--ease)}.quality-cards article:hover{transform:translateY(-5px);background:rgba(255,255,255,.08)}.quality-cards strong{display:block;margin-bottom:7px}.quality-cards span{color:#b9bdc4;font-size:12px}.final-cta{background:#fff}.cta-panel{padding:34px 38px;border-radius:28px;background:linear-gradient(120deg,var(--beige),#fff);border:1px solid #ded7cf;box-shadow:var(--shadow);display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-panel h2{font-size:clamp(32px,3.6vw,48px);margin:8px 0}.cta-panel p{margin:0;max-width:800px;color:#4f535a}.subhero{padding:72px 0;background:linear-gradient(135deg,#fff,var(--light));position:relative;overflow:hidden}.subhero::after{content:"";position:absolute;right:-90px;top:-80px;width:360px;height:360px;background:var(--beige);clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);opacity:.4;animation:floatShape 9s ease-in-out infinite}.subhero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:center}.subhero h1{font-size:clamp(46px,5vw,70px);line-height:.98;letter-spacing:-.05em;margin:14px 0 20px}.subhero p{font-size:18px;color:#50555c;max-width:800px}.subhero-accent{justify-self:end;width:min(420px,100%);padding:30px;border-radius:24px;background:var(--graphite);color:#fff;box-shadow:var(--shadow)}.subhero-accent.beige{background:var(--beige);color:var(--black)}.subhero-accent b{display:block;font-size:38px;line-height:1;margin-bottom:10px}.subhero-accent span{display:block;color:inherit;opacity:.78}.subhero-photo .photo-crop{border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.subhero-photo .photo-crop img{width:100%;height:330px;object-fit:cover}.services-catalog{background:#fff}.catalog-group{padding:34px 0;border-top:1px solid var(--line)}.catalog-title{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:12px;margin-bottom:24px}.catalog-title>span{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:var(--burgundy);color:#fff;font-weight:900}.catalog-title h2{font-size:36px;margin:0}.mini-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.mini-card-grid article{padding:22px;border-radius:18px;background:var(--light);border:1px solid #e8eaed;transition:.3s var(--ease);min-height:180px}.mini-card-grid article:nth-child(3n+2){background:rgba(231,222,211,.45)}.mini-card-grid article:nth-child(4n){background:rgba(184,192,204,.22)}.mini-card-grid article:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(17,17,17,.08);border-color:#d5d8de}.mini-card-grid h3{font-size:18px;margin:0 0 9px}.mini-card-grid p{font-size:13px;color:#5b6067;margin:0}.service-route{background:var(--burgundy)}.route-panel{color:#fff}.route-panel h2{font-size:clamp(38px,4.5vw,60px);line-height:1;margin:10px 0 18px}.route-panel p{color:#f2e8e8;font-size:17px;max-width:850px}.feature-matrix{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.feature-matrix article{min-height:215px;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff;transition:.32s var(--ease);position:relative;overflow:hidden}.feature-matrix article::after{content:"";position:absolute;right:-40px;bottom:-40px;width:110px;height:110px;border-radius:50%;background:var(--beige);opacity:.35;transition:.35s var(--ease)}.feature-matrix article:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.feature-matrix article:hover::after{transform:scale(1.5)}.feature-matrix span{font-size:11px;font-weight:900;color:var(--red);letter-spacing:.1em}.feature-matrix h3{font-size:21px;margin:22px 0 10px}.feature-matrix p{font-size:13px;color:#5a6068;margin:0}.dark-feature{background:linear-gradient(120deg,var(--graphite),var(--black));color:#fff}.dark-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}.dark-feature h2{font-size:clamp(38px,4.4vw,58px);line-height:1;margin:12px 0 18px}.dark-feature p{color:#cfd2d7}.security-visual{display:grid;grid-template-columns:1fr 1fr;gap:14px}.security-visual div{min-height:140px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);border-radius:22px;display:grid;place-items:center;font-size:28px;font-weight:900;transition:.3s var(--ease)}.security-visual div:hover{transform:translateY(-6px) rotate(1deg);background:var(--burgundy)}.marking-zone{background:var(--graphite);color:#fff}.marking-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.marking-grid h2{font-size:clamp(38px,4.3vw,58px);line-height:1;margin:12px 0 18px}.marking-grid p{color:#cdd1d6}.tag-cloud{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.tag-cloud span{padding:8px 11px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.06);font-size:12px}.marking-steps{display:grid;gap:10px}.marking-steps article{display:grid;grid-template-columns:46px 1fr;align-items:center;gap:12px;padding:16px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);transition:.3s var(--ease)}.marking-steps article:hover{transform:translateX(8px);background:rgba(198,40,40,.22)}.marking-steps b{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--red)}.packaging-zone{background:var(--beige)}.packaging-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.packaging-grid article{padding:24px;background:#fff;border-radius:20px;border:1px solid rgba(122,30,30,.08);min-height:185px;transition:.3s var(--ease)}.packaging-grid article:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.process-rings{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.process-rings div{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);font-weight:900;transition:.4s var(--ease)}.process-rings div:hover{background:var(--burgundy);transform:translateY(-8px) scale(1.04)}.company-about-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center}.company-about-grid h2{font-size:clamp(38px,4vw,56px);line-height:1;margin:12px 0 18px}.company-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.company-facts article{padding:24px;border-radius:20px;background:var(--light);border-top:4px solid var(--burgundy)}.company-facts article:nth-child(2){background:var(--beige);border-color:var(--red)}.company-facts article:nth-child(3){background:rgba(184,192,204,.25);border-color:var(--graphite)}.company-facts strong{display:block;font-size:30px;margin-bottom:7px}.company-facts span{font-size:13px;color:#5e6369}.history-section{background:var(--light)}.timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.timeline article{background:#fff;padding:22px;border-radius:18px;border:1px solid var(--line);min-height:200px;transition:.3s var(--ease)}.timeline article:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.timeline b{display:block;font-size:28px;color:var(--burgundy);margin-bottom:14px}.timeline p{font-size:12px;color:#5b6067;margin:0}.equipment-section{background:linear-gradient(135deg,var(--black),var(--graphite));color:#fff}.equipment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.equipment-grid article{min-height:170px;padding:24px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.05);transition:.3s var(--ease)}.equipment-grid article:hover{transform:translateY(-6px);border-color:rgba(231,222,211,.32);background:rgba(255,255,255,.08)}.equipment-grid strong{display:block;font-size:20px;margin-bottom:22px}.equipment-grid span{font-size:12px;color:#c6cbd1}.equipment-stat{background:var(--burgundy)!important}.equipment-stat strong{font-size:58px;line-height:1}.quality-section{background:#fff}.quality-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quality-columns article{padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 26px rgba(17,17,17,.04)}.quality-columns h3{font-size:19px;margin:0 0 15px}.quality-columns ul{margin:0;padding-left:18px;color:#5c6269;font-size:13px}.contacts-section{background:#fff}.contacts-layout{display:grid;grid-template-columns:1.05fr .95fr;gap:54px;align-items:center}.contact-stack{border-top:1px solid var(--line)}.contact-card{display:grid;grid-template-columns:110px 1fr 40px;align-items:center;gap:16px;min-height:100px;border-bottom:1px solid var(--line);transition:.3s var(--ease);position:relative}.contact-card::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--beige),transparent);transform:scaleX(0);transform-origin:right;transition:.4s var(--ease);z-index:-1}.contact-card:hover{padding-left:12px}.contact-card:hover::before{transform:scaleX(1);transform-origin:left}.contact-card span{font-size:11px;text-transform:uppercase;color:#777;letter-spacing:.1em}.contact-card strong{font-size:24px}.contact-card i{font-style:normal;color:var(--burgundy);font-size:22px;transition:.3s}.contact-card:hover i{transform:translate(4px,-4px)}.contact-copy h2{font-size:clamp(34px,3.7vw,50px)}.big-checks{list-style:none;padding:0;margin:24px 0 0;display:grid;gap:14px}.big-checks li{padding-left:30px;position:relative}.big-checks li::before{content:"✓";position:absolute;left:0;color:var(--red);font-weight:900}.addresses-section{background:var(--light)}.address-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:12px}.address-grid article{padding:24px;background:#fff;border-radius:18px;border:1px solid var(--line)}.address-grid span{display:block;color:#777;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.address-grid strong{font-size:14px;line-height:1.55}.site-footer{background:var(--black);color:#fff;padding:50px 0 0}.footer-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr 1fr;gap:34px;padding-bottom:36px}.footer-brand img{width:340px;max-width:100%;filter:brightness(1.9) grayscale(.12)}.footer-brand-wrap p{color:#aeb2b8;font-size:13px;max-width:410px}.footer-grid>div:not(.footer-brand-wrap){display:grid;align-content:start;gap:8px}.footer-grid h3{font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 8px;color:var(--beige)}.footer-grid a{color:#bfc3c8;font-size:13px}.footer-grid a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;gap:18px;border-top:1px solid #24262b;padding:18px 0 24px;color:#7f848c;font-size:11px}
.reveal-left,.reveal-right,.reveal-up,.stagger-group>*{opacity:0;filter:blur(4px);transition:opacity .75s var(--ease),transform .82s var(--ease),filter .7s var(--ease)}.reveal-left{transform:translateX(-48px)}.reveal-right{transform:translateX(48px)}.reveal-up{transform:translateY(38px)}.reveal-left.is-visible,.reveal-right.is-visible,.reveal-up.is-visible,.stagger-group.is-visible>*{opacity:1;filter:none;transform:none}.stagger-group>*{transform:translateY(28px)}.stagger-group.is-visible>*:nth-child(2){transition-delay:.06s}.stagger-group.is-visible>*:nth-child(3){transition-delay:.12s}.stagger-group.is-visible>*:nth-child(4){transition-delay:.18s}.stagger-group.is-visible>*:nth-child(5){transition-delay:.24s}.stagger-group.is-visible>*:nth-child(6){transition-delay:.30s}.stagger-group.is-visible>*:nth-child(7){transition-delay:.36s}.stagger-group.is-visible>*:nth-child(8){transition-delay:.42s}.stagger-group.is-visible>*:nth-child(9){transition-delay:.48s}.stagger-group.is-visible>*:nth-child(10){transition-delay:.54s}
@keyframes pulseOrb{0%,100%{transform:scale(.9);opacity:.7}50%{transform:scale(1.12);opacity:1}}@keyframes floatShape{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-18px) rotate(8deg)}}@keyframes marquee{to{transform:translateX(-50%)}}@keyframes slowSpin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.header-quick span{display:none}.brand img{width:360px}.hero-grid,.split-showcase,.split-showcase.reverse,.quality-grid,.subhero-grid,.dark-feature-grid,.marking-grid,.company-about-grid,.contacts-layout{grid-template-columns:1fr}.hero-visual,.subhero-accent{justify-self:stretch}.capability-grid,.mini-card-grid{grid-template-columns:repeat(2,1fr)}.feature-matrix,.packaging-grid,.equipment-grid{grid-template-columns:repeat(2,1fr)}.workflow-line,.timeline{grid-template-columns:repeat(3,1fr)}.workflow-line::before{display:none}.quality-columns{grid-template-columns:repeat(2,1fr)}.address-grid{grid-template-columns:1fr 1fr}.address-grid article:first-child{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.showcase-image{max-height:520px}.hero-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.header-main-inner{min-height:88px}.brand img{width:300px;max-width:72vw}.header-quick{display:none}.menu-button{display:flex}.main-nav{position:relative}.nav-inner{display:none;flex-direction:column;align-items:stretch;padding:10px 0}.main-nav.is-open .nav-inner{display:flex}.main-nav a{justify-content:flex-start;width:100%;min-height:48px;border-bottom:1px solid rgba(255,255,255,.08);border-radius:0}.main-nav a:hover,.main-nav a.is-active{transform:none;background:#fff;color:#111}.topline-inner{min-height:38px}.topline-links a:first-child{display:none}.section{padding:72px 0}.hero{padding:64px 0}.hero-copy h1{font-size:48px}.visual-grid div{grid-template-columns:34px 105px 1fr}.capability-grid,.mini-card-grid,.feature-matrix,.packaging-grid,.equipment-grid,.quality-columns{grid-template-columns:1fr}.workflow-line,.timeline{grid-template-columns:1fr 1fr}.quality-cards{grid-template-columns:1fr}.company-facts{grid-template-columns:1fr 1fr}.address-grid{grid-template-columns:1fr}.address-grid article:first-child{grid-column:auto}.footer-grid{grid-template-columns:1fr 1fr}.cta-panel{flex-direction:column;align-items:flex-start}.process-rings div{width:104px;height:104px}.photo-crop img{height:260px!important}}
@media(max-width:540px){.container{width:calc(100% - 32px)}.topline-inner>span{display:none}.topline-inner{justify-content:flex-end}.brand img{width:250px}.hero-copy h1,.subhero h1{font-size:38px}.hero-lead,.subhero p{font-size:16px}.hero-stats,.workflow-line,.timeline,.company-facts,.footer-grid{grid-template-columns:1fr}.visual-panel{padding:20px;border-radius:24px}.visual-grid div{grid-template-columns:32px 1fr}.visual-grid span{grid-column:2}.split-showcase{gap:28px}.showcase-copy h2{font-size:36px}.section-head h2{font-size:36px}.catalog-title{grid-template-columns:1fr}.catalog-title h2{font-size:30px}.contact-card{grid-template-columns:1fr 34px;padding:16px 0;gap:4px}.contact-card span,.contact-card strong{grid-column:1}.contact-card i{grid-column:2;grid-row:1/3}.footer-bottom{flex-direction:column}.footer-brand img{width:270px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal-left,.reveal-right,.reveal-up,.stagger-group>*{opacity:1!important;filter:none!important;transform:none!important}.marquee-track{transform:none!important}.hero-mouse-glow{display:none}}


/* ==========================================================
  НовоПак v5 — компактная липкая навигация + единый логотип
  + страница предварительного расчёта проекта.
  ========================================================== */
.site-header{position:sticky;top:0;z-index:100;background:var(--graphite)}
.header-topline,.header-main{display:none!important}
.main-nav{position:relative;top:auto;z-index:auto;box-shadow:0 10px 28px rgba(0,0,0,.15)}
.nav-shell{min-height:86px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:20px}
.nav-brand{display:flex;align-items:center;flex:0 0 auto}
.nav-brand img{width:235px;max-width:22vw;height:auto}
.nav-inner{min-height:86px;display:flex;align-items:center;justify-content:center;gap:2px}
.main-nav a{min-height:58px;padding:0 10px;font-size:13px}
.nav-inner>a{border-radius:11px}
.header-cta{min-height:44px;padding:0 17px;border:1px solid rgba(255,255,255,.45);border-radius:999px;color:#fff;font-size:12px;font-weight:900;display:inline-flex;align-items:center;white-space:nowrap;transition:.3s var(--ease)}
.header-cta:hover,.header-cta.is-current{background:var(--beige);border-color:var(--beige);color:var(--black);transform:translateY(-2px)}
.scroll-progress{position:absolute;left:0;bottom:0;height:3px;background:var(--red);width:0;z-index:120}

/* Нижний логотип — ровно тот же файл и без фильтра; светлый фон из презентационной палитры. */
.site-footer{background:linear-gradient(135deg,var(--beige),#f4efe9);color:var(--black);border-top:1px solid rgba(122,30,30,.12)}
.footer-brand img{width:340px;max-width:100%;filter:none!important;opacity:1!important}
.footer-brand-wrap p{color:#4e4a46}
.footer-grid h3{color:var(--burgundy)}
.footer-grid a{color:#3d3c3a}.footer-grid a:hover{color:var(--burgundy)}
.footer-bottom{border-top:1px solid rgba(17,17,17,.12);color:#66615d}

/* Страница расчёта. */
.estimate-hero{background:linear-gradient(125deg,#fff 0 56%,var(--beige) 56% 100%);padding:72px 0}
.estimate-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.estimate-hero h1{font-size:clamp(42px,5vw,70px);line-height:.98;letter-spacing:-.05em;margin:14px 0 18px}
.estimate-hero p{font-size:17px;color:#4f535a;max-width:760px}
.estimate-hero-note{padding:28px;border-radius:24px;background:rgba(255,255,255,.72);border:1px solid rgba(122,30,30,.14);box-shadow:var(--shadow);backdrop-filter:blur(12px)}
.estimate-hero-note strong{display:block;color:var(--burgundy);font-size:20px;margin-bottom:8px}
.estimator-section{background:var(--light)}
.estimator-shell{background:#fff;border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);overflow:hidden}
.estimator-tabs{display:flex;gap:0;background:var(--graphite);padding:10px}
.estimator-tab{flex:1;min-height:52px;border:0;border-radius:14px;background:transparent;color:#fff;font-weight:900;font-size:14px;cursor:pointer;transition:.3s var(--ease)}
.estimator-tab:hover{background:rgba(255,255,255,.08)}
.estimator-tab.is-active{background:var(--beige);color:var(--black);box-shadow:0 8px 18px rgba(0,0,0,.16)}
.estimator-panel{display:none;padding:34px}.estimator-panel.is-active{display:block;animation:panelIn .45s var(--ease)}
.calculator-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:start}
.calculator-form,.callback-form{display:grid;gap:16px}
.calculator-form label,.callback-form label{display:grid;gap:7px;font-weight:800;font-size:13px;color:#34383e}
.calculator-form input,.calculator-form select,.callback-form input,.callback-form textarea{width:100%;border:1px solid #cfd3d8;border-radius:12px;padding:13px 14px;background:#fff;font:inherit;color:#111;outline:none;transition:.2s}
.calculator-form input:focus,.calculator-form select:focus,.callback-form input:focus,.callback-form textarea:focus{border-color:var(--burgundy);box-shadow:0 0 0 3px rgba(122,30,30,.10)}
.calculator-form fieldset{border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.calculator-form legend{padding:0 6px;font-weight:900;font-size:13px}
.check-option{display:flex!important;grid-template-columns:none!important;align-items:center;gap:9px!important;font-weight:700!important}
.check-option input{width:auto!important}
.calc-result{position:sticky;top:110px;padding:30px;border-radius:24px;background:linear-gradient(145deg,var(--graphite),#17191d);color:#fff;box-shadow:0 22px 50px rgba(17,17,17,.18)}
.calc-result .eyebrow{color:var(--beige)}
.calc-total{padding:20px 0;border-bottom:1px solid rgba(255,255,255,.12);margin-bottom:18px}.calc-total small{display:block;color:#c6cbd1;margin-bottom:6px}.calc-total strong{display:block;font-size:clamp(38px,5vw,62px);line-height:1;color:#fff}
.calc-breakdown{display:grid;gap:8px;margin-bottom:20px;color:#d6dae0}.calc-breakdown p{color:#d6dae0;margin:0}.calc-breakdown div{display:flex;justify-content:space-between;gap:16px;font-size:13px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.calc-result .btn-secondary{width:100%;border-color:#fff;color:#111}
.calc-disclaimer,.form-note{font-size:11px;color:#777;margin:0;line-height:1.45}
.callback-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:44px;align-items:start}.callback-grid h2{font-size:clamp(34px,4vw,52px);margin:10px 0 16px}.consent{display:flex!important;grid-template-columns:none!important;align-items:flex-start!important;font-weight:600!important}.consent input{width:auto!important;margin-top:3px}
@keyframes panelIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

@media(max-width:1180px){
 .nav-shell{grid-template-columns:auto minmax(0,1fr) auto}.nav-brand img{width:205px;max-width:24vw}.header-cta{display:none}.main-nav a{padding:0 8px;font-size:12px}
 .estimate-hero-grid,.calculator-grid,.callback-grid{grid-template-columns:1fr}.calc-result{position:relative;top:auto}
}
@media(max-width:820px){
 .site-header{position:sticky;top:0}.nav-shell{min-height:76px;grid-template-columns:auto 1fr auto}.nav-brand img{width:220px;max-width:62vw}.menu-button{display:flex;background:var(--graphite);border-color:rgba(255,255,255,.28)}.menu-button span{background:#fff}.nav-inner{display:none;position:absolute;left:0;right:0;top:76px;background:var(--graphite);padding:10px max(20px,calc((100vw - var(--max))/2));box-shadow:0 18px 28px rgba(0,0,0,.22);min-height:0}.main-nav.is-open .nav-inner{display:flex}.main-nav a{min-height:48px}.estimator-panel{padding:24px}.calculator-form fieldset{grid-template-columns:1fr}
}
@media(max-width:540px){.nav-brand img{width:190px}.estimate-hero{padding:52px 0}.estimator-tabs{flex-direction:column}.estimator-panel{padding:18px}.footer-brand img{width:280px}}


/* ==========================================================
  НовоПак v5.1 — светлая навигация и новая hover-анимация.
  ========================================================== */
.site-header{
 background:linear-gradient(90deg,#F4F5F7 0%,#E7DED3 52%,#F4F5F7 100%);
 border-bottom:1px solid rgba(43,47,54,.14);
 box-shadow:0 10px 30px rgba(17,17,17,.08);
}
.main-nav{
 background:linear-gradient(90deg,#F4F5F7 0%,#E7DED3 52%,#F4F5F7 100%);
 color:var(--black);
 box-shadow:none;
}
.nav-shell{min-height:90px}
.nav-brand{
 min-height:0!important;
 padding:0!important;
 border-radius:0!important;
 background:transparent!important;
 transform:none!important;
 box-shadow:none!important;
 position:relative;
 z-index:3;
}
.nav-brand::before,.nav-brand::after{display:none!important}
.nav-brand img{
 width:250px;
 max-width:23vw;
 filter:none!important;
 opacity:1!important;
 transition:filter .28s ease,transform .35s var(--ease);
}
.nav-brand:hover img{
 transform:scale(1.025);
 filter:drop-shadow(0 7px 13px rgba(122,30,30,.16))!important;
}
.nav-inner{min-height:90px;gap:4px}
.nav-inner>a{
 min-height:52px;
 padding:0 13px;
 border-radius:14px;
 color:#24262a;
 transform:none!important;
 background:transparent;
 overflow:hidden;
 isolation:isolate;
 transition:color .28s ease,box-shadow .32s ease,border-color .32s ease;
 border:1px solid transparent;
}
.nav-inner>a::before{
 content:"";
 position:absolute;
 inset:0;
 z-index:-1;
 border-radius:inherit;
 background:linear-gradient(105deg,rgba(255,255,255,.92) 0%,rgba(255,255,255,.92) 45%,rgba(231,222,211,.55) 100%);
 transform:scaleX(.08);
 transform-origin:center;
 opacity:0;
 transition:transform .36s var(--ease),opacity .24s ease;
}
.nav-inner>a::after{
 content:"";
 position:absolute;
 left:18px;
 right:18px;
 bottom:7px;
 height:2px;
 border-radius:999px;
 background:linear-gradient(90deg,var(--burgundy),var(--red));
 transform:scaleX(0);
 transform-origin:center;
 transition:transform .36s var(--ease);
}
.nav-inner>a:hover,
.nav-inner>a.is-active{
 color:var(--burgundy);
 background:transparent;
 transform:none!important;
 border-color:rgba(122,30,30,.13);
 box-shadow:0 9px 24px rgba(43,47,54,.09),inset 0 0 0 1px rgba(255,255,255,.45);
}
.nav-inner>a:hover::before,
.nav-inner>a.is-active::before{
 transform:scaleX(1);
 opacity:1;
}
.nav-inner>a:hover::after,
.nav-inner>a.is-active::after{transform:scaleX(1)}
.header-cta{
 color:#fff;
 background:var(--burgundy);
 border-color:var(--burgundy);
 box-shadow:0 8px 20px rgba(122,30,30,.16);
}
.header-cta:hover,.header-cta.is-current{
 background:#fff;
 border-color:rgba(122,30,30,.30);
 color:var(--burgundy);
 transform:none;
 box-shadow:0 10px 24px rgba(43,47,54,.10);
}
.menu-button{
 background:#fff!important;
 border-color:rgba(43,47,54,.18)!important;
}
.menu-button span{background:var(--graphite)!important}

@media(max-width:1180px){
 .nav-brand img{width:220px;max-width:25vw}
 .nav-inner>a{padding:0 9px;font-size:12px}
}
@media(max-width:820px){
 .nav-shell{min-height:78px}
 .nav-brand img{width:220px;max-width:60vw}
 .nav-inner{
  top:78px;
  background:linear-gradient(180deg,#F4F5F7,#E7DED3);
  border-top:1px solid rgba(43,47,54,.12);
 }
 .nav-inner>a{
  color:var(--black);
  border-bottom:1px solid rgba(43,47,54,.10);
  border-radius:10px;
  padding:0 14px;
 }
 .nav-inner>a:hover,.nav-inner>a.is-active{
  color:var(--burgundy);
  border-color:rgba(122,30,30,.14);
  box-shadow:none;
 }
}
@media(max-width:540px){.nav-brand img{width:190px}}


/* ===== v6 light gray header/footer + cleaner backgrounds ===== */
.site-header{
 background:linear-gradient(90deg,#EEF1F4 0%,#E5EAF0 50%,#EEF1F4 100%)!important;
}
.main-nav{
 position:sticky!important;
 top:0!important;
 z-index:120!important;
 background:linear-gradient(90deg,#EEF1F4 0%,#E5EAF0 50%,#EEF1F4 100%)!important;
 box-shadow:0 10px 28px rgba(0,0,0,.08)!important;
}
.nav-inner{
 min-height:90px;
}
.nav-inner>a::before{
 background:linear-gradient(105deg,rgba(255,255,255,.96) 0%,rgba(247,249,251,.96) 48%,rgba(229,234,240,.82) 100%)!important;
}
.nav-inner>a:hover,
.nav-inner>a.is-active{
 color:var(--black)!important;
}
.header-cta{
 box-shadow:0 10px 22px rgba(122,30,30,.14);
}
.header-cta:hover,.header-cta.is-current{
 background:#fff!important;
 color:var(--burgundy)!important;
 border-color:rgba(122,30,30,.28)!important;
}
.site-footer{
 background:linear-gradient(135deg,#EEF1F4 0%,#E5EAF0 48%,#EEF1F4 100%)!important;
 color:var(--black)!important;
 border-top:1px solid rgba(43,47,54,.1)!important;
}
.footer-brand img{
 filter:none!important;
 opacity:1!important;
}
.footer-brand-wrap p{color:#575c63!important}
.footer-grid h3{color:var(--burgundy)!important}
.footer-grid a{color:#3f444b!important}
.footer-grid a:hover{color:var(--burgundy)!important}
.footer-bottom{border-top:1px solid rgba(43,47,54,.12)!important;color:#676d74!important}

/* Make geometric patterned backgrounds solid and calmer */
.hero{
 background:var(--light)!important;
}
.hero::after,
.subhero::after,
.hero-shape,
.hero-shape-a,
.hero-shape-b{
 display:none!important;
}

/* Less noticeable cursor glow */
.hero-mouse-glow{
 width:320px!important;
 height:320px!important;
 background:radial-gradient(circle,rgba(198,40,40,.055),rgba(198,40,40,.02) 34%,transparent 68%)!important;
 opacity:0!important;
 transition:opacity .35s ease!important;
}
.hero:hover .hero-mouse-glow{
 opacity:.55!important;
}

/* Slightly cleaner mobile menu on light gray */
@media(max-width:820px){
 .nav-inner{
  background:linear-gradient(180deg,#EEF1F4,#E5EAF0)!important;
 }
 .menu-button{
  background:#fff!important;
  border-color:rgba(43,47,54,.16)!important;
 }
 .menu-button span{background:var(--graphite)!important}
 .nav-inner>a{
  border-bottom:1px solid rgba(43,47,54,.08)!important;
 }
}


/* ===== v7 refinements ===== */
/* Header/footer a little darker than main page, but still logo-safe */
.site-header,
.main-nav{
 background:linear-gradient(90deg,#DDE2E7 0%,#D2D8DF 50%,#DDE2E7 100%)!important;
}
.site-footer{
 background:linear-gradient(135deg,#DDE2E7 0%,#D2D8DF 50%,#DDE2E7 100%)!important;
}
@media(max-width:820px){.nav-inner{background:linear-gradient(180deg,#DDE2E7,#D2D8DF)!important}}

/* Slogan panel without numbering */
.slogan-panel{min-height:430px;display:flex;flex-direction:column;justify-content:center;padding:38px 36px!important}
.slogan-kicker{position:relative;z-index:1;color:var(--beige);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.18em;margin-bottom:16px}
.slogan-title{position:relative;z-index:1;font-size:clamp(34px,3.4vw,52px);line-height:1.02;letter-spacing:-.04em;margin:0 0 20px;max-width:620px}
.slogan-title em{font-style:normal;color:#fff}
.slogan-copy{position:relative;z-index:1;color:#cfd3d8!important;font-size:16px;max-width:590px;margin:0 0 24px}
.slogan-values{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:9px;margin-bottom:8px}
.slogan-values span{display:inline-flex;align-items:center;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);font-size:12px;font-weight:900;letter-spacing:.04em;transition:.3s var(--ease)}
.slogan-values span:hover{background:rgba(255,255,255,.11);border-color:rgba(231,222,211,.36);transform:translateY(-2px)}

/* Contacts representatives */
.subhero-accent.neutral{background:rgba(184,192,204,.24)!important;border-color:rgba(43,47,54,.10)!important}
.representatives-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:start}
.representative-card{text-align:center;padding:28px 22px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 12px 30px rgba(17,17,17,.05);transition:.35s var(--ease)}
.representative-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}
.representative-photo{width:168px;height:168px;margin:0 auto 22px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#EEF1F4,#D9DEE4);border:1px solid #cdd3d9;box-shadow:inset 0 0 0 10px rgba(255,255,255,.55);overflow:hidden}
.representative-photo span{font-size:12px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#7a8087}
.representative-card h3{margin:0 0 4px;font-size:21px}
.representative-role{margin:0 0 14px;color:#6c7279;font-size:13px}
.representative-card a{display:block;width:max-content;max-width:100%;margin:5px auto;color:var(--burgundy);font-weight:800;font-size:14px}
.address-grid-two{grid-template-columns:1.4fr .8fr!important}
.address-grid-two article:first-child{grid-column:auto!important}

/* Calculator contacts + silent submission */
.calc-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calc-contact-hint{margin:-4px 0 0;color:#70767d;font-size:12px}
.calc-buttons{display:flex;gap:10px;flex-wrap:wrap}
.form-status{min-height:20px;margin-top:4px;font-size:13px;font-weight:800}
.form-status.is-success{color:#2f7b48}
.form-status.is-error{color:#b12626}

@media(max-width:820px){
 .representatives-grid,.address-grid-two,.calc-contact-fields{grid-template-columns:1fr!important}
 .representative-photo{width:148px;height:148px}
}


/* ===== v8 navigation consolidation, contact readability and consolidated services ===== */
.subhero-accent.neutral{
 background:linear-gradient(145deg,#59636f 0%,#2B2F36 100%)!important;
 color:#fff!important;
 border:1px solid rgba(255,255,255,.12)!important;
 box-shadow:0 22px 48px rgba(17,17,17,.16)!important;
}
.subhero-accent.neutral b{color:#fff!important}
.subhero-accent.neutral span{color:#eef1f4!important;opacity:1!important}
.representative-photo{
 width:336px!important;
 height:336px!important;
 max-width:100%;
 box-shadow:inset 0 0 0 14px rgba(255,255,255,.58),0 18px 34px rgba(17,17,17,.08)!important;
}
.representative-card{padding:24px 16px 28px!important}
.service-jump-section{background:#fff;padding:22px 0;border-bottom:1px solid var(--line);position:sticky;top:90px;z-index:18;box-shadow:0 8px 20px rgba(17,17,17,.035)}
.service-jump{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.service-jump a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;background:var(--light);border:1px solid var(--line);font-size:12px;font-weight:900;color:var(--graphite);transition:.28s var(--ease)}
.service-jump a:hover{background:#fff;color:var(--burgundy);border-color:rgba(122,30,30,.28);box-shadow:0 8px 20px rgba(17,17,17,.06);transform:translateY(-2px)}
.service-topic{scroll-margin-top:160px}
.service-topic-steel{background:rgba(184,192,204,.18)}
.service-topic-light{background:var(--light)}
.service-photo-intro{margin-bottom:36px}
.service-matrix-top{margin-top:28px}
.service-inline-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.service-inline-tags span{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:999px;background:var(--light);border:1px solid var(--line);font-size:11px;font-weight:900;color:var(--graphite)}
.security-strip{margin-top:28px;padding:26px 28px;border-radius:22px;background:linear-gradient(125deg,var(--graphite),#191b1f);color:#fff;display:grid;grid-template-columns:1.4fr .6fr;gap:28px;align-items:center;box-shadow:var(--shadow)}
.security-strip p{margin:7px 0 0;color:#d5d9de}
.security-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.security-pills span{width:66px;height:66px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);font-weight:900;font-size:12px;box-sizing:border-box;text-align:center;line-height:1.1}.security-pills span:last-child{width:auto;min-width:66px;height:66px;padding:0 15px;border-radius:33px;white-space:nowrap}
.process-compact{margin-top:28px;padding:22px 24px;border-radius:20px;background:linear-gradient(120deg,var(--graphite),var(--black));color:#fff;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;box-shadow:var(--shadow)}
.process-compact strong{color:var(--beige)}
.process-compact span{padding:8px 11px;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);font-weight:800;font-size:12px}
.process-compact i{font-style:normal;color:var(--red);font-weight:900}
@media(max-width:1100px){
 .representative-photo{width:290px!important;height:290px!important}
 .service-jump-section{top:90px}
}
@media(max-width:820px){
 .representative-photo{width:260px!important;height:260px!important}
 .service-jump-section{position:relative;top:auto}
 .security-strip{grid-template-columns:1fr}
 .security-pills{justify-content:flex-start}
}
@media(max-width:540px){.representative-photo{width:230px!important;height:230px!important}}


/* ===== v9: expanded top navigation with five dedicated service tabs ===== */
.nav-shell.container{width:min(1540px,calc(100% - 28px));max-width:1540px}
.nav-shell{grid-template-columns:auto minmax(0,1fr) auto!important;gap:12px!important}
.nav-brand img{width:185px!important;max-width:185px!important}
.nav-inner{justify-content:center!important;gap:1px!important;min-width:0}
.nav-inner>a{padding:0 7px!important;font-size:11.5px!important;white-space:nowrap;min-height:58px!important}
.nav-inner>a::after{left:7px!important;right:7px!important}
.header-cta{display:none!important}
@media(max-width:1320px){
 .nav-brand img{width:165px!important;max-width:165px!important}
 .nav-inner>a{padding:0 5px!important;font-size:10.5px!important}
}
@media(max-width:1180px){
 .nav-shell{min-height:78px!important;grid-template-columns:auto 1fr auto!important}
 .nav-brand img{width:205px!important;max-width:48vw!important}
 .menu-button{display:flex!important;background:#fff!important;border-color:rgba(43,47,54,.16)!important}
 .menu-button span{background:var(--graphite)!important}
 .nav-inner{display:none!important;position:absolute;left:0;right:0;top:78px;background:linear-gradient(180deg,#DDE2E7,#D2D8DF)!important;padding:12px max(20px,calc((100vw - var(--max))/2));box-shadow:0 18px 28px rgba(0,0,0,.16);min-height:0!important;flex-direction:column;align-items:stretch!important;z-index:150}
 .main-nav.is-open .nav-inner{display:flex!important}
 .nav-inner>a{font-size:14px!important;min-height:48px!important;justify-content:flex-start!important;padding:0 12px!important;border-bottom:1px solid rgba(43,47,54,.08)!important;border-radius:8px!important}
 .nav-inner>a:hover,.nav-inner>a.is-active{transform:none!important}
}
@media(max-width:540px){.nav-brand img{width:185px!important;max-width:64vw!important}}


/* v10 — длинные названия вкладок упаковки карт */
@media(min-width:1101px){
 .nav-shell{gap:12px!important}
 .nav-brand img{width:205px!important;max-width:18vw!important}
 .nav-inner{gap:0!important}
 .nav-inner>a{padding:0 6px!important;font-size:11px!important;white-space:nowrap!important;letter-spacing:-.01em}
}


/* ===== v12 — compact multi-line navigation, no "All capabilities" page ===== */
@media(min-width:1181px){
  .nav-shell.container{width:min(1580px,calc(100% - 26px))!important;max-width:1580px!important}
  .nav-shell{min-height:96px!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:18px!important}
  .nav-brand img{width:248px!important;max-width:248px!important}
  .nav-inner{min-height:96px!important;gap:3px!important;justify-content:center!important;align-items:center!important}
  .nav-inner>a{
    min-height:62px!important;
    padding:7px 11px!important;
    font-size:13.5px!important;
    line-height:1.08!important;
    letter-spacing:0!important;
    white-space:normal!important;
    text-align:center!important;
    flex-direction:column!important;
    gap:2px!important;
    border-radius:12px!important;
  }
  .nav-inner>a>span{display:block;white-space:nowrap}
  .nav-inner>a::after{left:10px!important;right:10px!important;bottom:6px!important}
  .nav-inner>a[href="bank-cards.html"]{min-width:122px}
  .nav-inner>a[href="sim-cards.html"]{min-width:82px}
  .nav-inner>a[href="marking.html"]{min-width:74px}
  .nav-project-cta{
    min-width:136px!important;
    min-height:48px!important;
    margin-left:5px!important;
    padding:0 16px!important;
    flex-direction:row!important;
    background:var(--burgundy)!important;
    color:#fff!important;
    border:1px solid var(--burgundy)!important;
    border-radius:999px!important;
    box-shadow:0 10px 24px rgba(122,30,30,.22)!important;
  }
  .nav-project-cta::before,.nav-project-cta::after{display:none!important}
  .nav-project-cta:hover,.nav-project-cta.is-active{
    background:#641818!important;
    color:#fff!important;
    transform:translateY(-2px)!important;
    box-shadow:0 14px 30px rgba(122,30,30,.28)!important;
  }
}
@media(min-width:1181px) and (max-width:1360px){
  .nav-brand img{width:225px!important;max-width:225px!important}
  .nav-inner>a{font-size:12.7px!important;padding:7px 8px!important}
  .nav-project-cta{min-width:126px!important;padding:0 13px!important}
}
@media(max-width:1180px){
  .nav-project-cta{
    background:var(--burgundy)!important;
    color:#fff!important;
    border-bottom:0!important;
    margin-top:8px!important;
    justify-content:center!important;
    border-radius:10px!important;
  }
  .nav-project-cta::before,.nav-project-cta::after{display:none!important}
  .nav-project-cta:hover,.nav-project-cta.is-active{background:#641818!important;color:#fff!important}
  .nav-inner>a>span{display:inline}
}


/* ===== v13 palette cards without bright red ===== */
.cap-red{background:rgba(184,192,204,.42)!important;color:var(--black)!important}
.cap-red p{color:#384048!important}
.cap-mist{background:#EEF1F4;color:var(--black)}
.cap-light{background:#F6F7F9;color:var(--black)}
.cap-light p,.cap-mist p{color:#4d535b}
.cap-card.cap-steel,.cap-card.cap-beige,.cap-card.cap-mist,.cap-card.cap-light{color:var(--black)}
.cap-card.cap-steel p,.cap-card.cap-beige p,.cap-card.cap-mist p,.cap-card.cap-light p{color:#48505a}

.tone-beige{background:var(--beige)!important;color:var(--black)!important;border-color:rgba(122,30,30,.10)!important}
.tone-steel{background:rgba(184,192,204,.42)!important;color:var(--black)!important;border-color:rgba(43,47,54,.10)!important}
.tone-mist{background:#EEF1F4!important;color:var(--black)!important;border-color:rgba(43,47,54,.08)!important}
.tone-light{background:#F7F8FA!important;color:var(--black)!important;border-color:rgba(43,47,54,.08)!important}
.tone-burgundy{background:var(--burgundy)!important;color:#fff!important;border-color:rgba(255,255,255,.08)!important}
.tone-graphite{background:var(--graphite)!important;color:#fff!important;border-color:rgba(255,255,255,.08)!important}
.feature-matrix article.tone-beige::after,.feature-matrix article.tone-steel::after,.feature-matrix article.tone-mist::after,.feature-matrix article.tone-light::after{background:rgba(255,255,255,.42)!important}
.feature-matrix article.tone-burgundy::after,.feature-matrix article.tone-graphite::after{background:rgba(255,255,255,.10)!important}
.feature-matrix article.tone-beige p,.feature-matrix article.tone-steel p,.feature-matrix article.tone-mist p,.feature-matrix article.tone-light p,
.packaging-grid article.tone-beige p,.packaging-grid article.tone-steel p,.packaging-grid article.tone-mist p,.packaging-grid article.tone-light p,
.mini-card-grid article.tone-beige p,.mini-card-grid article.tone-steel p,.mini-card-grid article.tone-mist p,.mini-card-grid article.tone-light p,
.quality-columns article.tone-beige ul,.quality-columns article.tone-steel ul,.quality-columns article.tone-mist ul,.quality-columns article.tone-light ul,
.company-facts article.tone-beige span,.company-facts article.tone-steel span,.company-facts article.tone-mist span,.company-facts article.tone-light span{color:#4d535b!important}
.feature-matrix article.tone-burgundy p,.feature-matrix article.tone-graphite p,
.packaging-grid article.tone-burgundy p,.packaging-grid article.tone-graphite p,
.mini-card-grid article.tone-burgundy p,.mini-card-grid article.tone-graphite p,
.quality-columns article.tone-burgundy ul,.quality-columns article.tone-graphite ul,
.company-facts article.tone-burgundy span,.company-facts article.tone-graphite span{color:#eceff3!important}
.feature-matrix article.tone-beige span,.feature-matrix article.tone-steel span,.feature-matrix article.tone-mist span,.feature-matrix article.tone-light span{color:var(--burgundy)!important}
.feature-matrix article.tone-burgundy span,.feature-matrix article.tone-graphite span{color:var(--beige)!important}
.packaging-grid article.tone-burgundy,.packaging-grid article.tone-graphite,
.mini-card-grid article.tone-burgundy,.mini-card-grid article.tone-graphite,
.quality-columns article.tone-burgundy,.quality-columns article.tone-graphite,
.company-facts article.tone-burgundy,.company-facts article.tone-graphite{color:#fff!important}
.marking-zone + .service-topic .feature-matrix article{min-height:230px}


/* ===== v14 illustrations over subhero accent ===== */
.subhero-grid{align-items:start!important}
.subhero-side-stack{display:grid;gap:18px;align-self:start;padding-top:26px}
.subhero-illustration{width:100%;max-width:360px;aspect-ratio:1/1;object-fit:cover;border-radius:26px;box-shadow:0 18px 42px rgba(17,17,17,.14);border:1px solid rgba(43,47,54,.08);background:#fff}
.subhero-accent{margin-top:4px!important}

/* Stronger pastel colors for cards, avoid white blend */
.cap-mist{background:rgba(184,192,204,.62)!important;color:var(--black)!important}
.cap-light{background:#DDE3EA!important;color:var(--black)!important}
.cap-card.cap-mist p,.cap-card.cap-light p{color:#434a53!important}

.tone-beige{background:#E7DED3!important;color:var(--black)!important}
.tone-steel{background:#CDD5DE!important;color:var(--black)!important}
.tone-burgundy{background:var(--burgundy)!important;color:#fff!important}
.tone-graphite{background:var(--graphite)!important;color:#fff!important}
.feature-matrix article.tone-beige::after,.feature-matrix article.tone-steel::after,.mini-card-grid article.tone-beige::after,.mini-card-grid article.tone-steel::after,.packaging-grid article.tone-beige::after,.packaging-grid article.tone-steel::after{background:rgba(255,255,255,.28)!important}
.feature-matrix article.tone-beige p,.feature-matrix article.tone-steel p,.mini-card-grid article.tone-beige p,.mini-card-grid article.tone-steel p,.packaging-grid article.tone-beige p,.packaging-grid article.tone-steel p,.quality-columns article.tone-beige ul,.quality-columns article.tone-steel ul,.company-facts article.tone-beige span,.company-facts article.tone-steel span{color:#48505a!important}
.feature-matrix article.tone-burgundy p,.feature-matrix article.tone-graphite p,.mini-card-grid article.tone-burgundy p,.mini-card-grid article.tone-graphite p,.packaging-grid article.tone-burgundy p,.packaging-grid article.tone-graphite p,.quality-columns article.tone-burgundy ul,.quality-columns article.tone-graphite ul,.company-facts article.tone-burgundy span,.company-facts article.tone-graphite span{color:#EEF1F4!important}
.feature-matrix article.tone-beige span,.feature-matrix article.tone-steel span{color:var(--burgundy)!important}
.feature-matrix article.tone-burgundy span,.feature-matrix article.tone-graphite span{color:var(--beige)!important}
.mini-card-grid article.tone-beige,.mini-card-grid article.tone-steel,.mini-card-grid article.tone-burgundy,.mini-card-grid article.tone-graphite,
.packaging-grid article.tone-beige,.packaging-grid article.tone-steel,.packaging-grid article.tone-burgundy,.packaging-grid article.tone-graphite,
.quality-columns article.tone-beige,.quality-columns article.tone-steel,.quality-columns article.tone-burgundy,.quality-columns article.tone-graphite,
.company-facts article.tone-beige,.company-facts article.tone-steel,.company-facts article.tone-burgundy,.company-facts article.tone-graphite{box-shadow:0 12px 30px rgba(17,17,17,.06)}

/* Project CTA: white text always, softer animation */
.nav-project-cta{color:#fff!important}
.nav-project-cta:hover,.nav-project-cta.is-active,.nav-project-cta:focus-visible{color:#fff!important;transform:translateY(-3px)!important;letter-spacing:.01em}

@media(max-width:1100px){
  .subhero-side-stack{padding-top:6px}
  .subhero-illustration{max-width:420px}
}
@media(max-width:820px){
  .subhero-side-stack{order:3;padding-top:0}
  .subhero-illustration{max-width:100%}
}


/* ===== v15 refinements from user feedback ===== */
.subhero-side-stack{gap:20px!important;padding-top:22px!important}
.subhero-accent{margin-top:8px!important}
.subhero-illustration{border-radius:24px!important;box-shadow:0 18px 40px rgba(17,17,17,.12)!important}

.cap-card.cap-steel{background:#CDD5DE!important;color:var(--black)!important}
.cap-card.cap-steel p{color:#48505a!important}
.cap-card.cap-beige{background:#E7DED3!important;color:var(--black)!important}
.cap-card.cap-beige p{color:#4b525a!important}
.cap-card.cap-burgundy{background:var(--burgundy)!important;color:#fff!important}
.cap-card.cap-burgundy p{color:#EEF1F4!important}
.cap-card.cap-graphite{background:var(--graphite)!important;color:#fff!important}
.cap-card.cap-graphite p{color:#EEF1F4!important}

/* Informational boxes on inner pages: avoid white shades */
.feature-matrix article.tone-beige,.mini-card-grid article.tone-beige,.packaging-grid article.tone-beige,.quality-columns article.tone-beige,.company-facts article.tone-beige{background:#E7DED3!important;color:var(--black)!important}
.feature-matrix article.tone-steel,.mini-card-grid article.tone-steel,.packaging-grid article.tone-steel,.quality-columns article.tone-steel,.company-facts article.tone-steel{background:#CDD5DE!important;color:var(--black)!important}
.feature-matrix article.tone-burgundy,.mini-card-grid article.tone-burgundy,.packaging-grid article.tone-burgundy,.quality-columns article.tone-burgundy,.company-facts article.tone-burgundy{background:var(--burgundy)!important;color:#fff!important}
.feature-matrix article.tone-graphite,.mini-card-grid article.tone-graphite,.packaging-grid article.tone-graphite,.quality-columns article.tone-graphite,.company-facts article.tone-graphite{background:var(--graphite)!important;color:#fff!important}

.nav-project-cta,
.nav-project-cta:hover,
.nav-project-cta.is-active,
.nav-project-cta:focus-visible,
.nav-project-cta:active{color:#fff!important}
.nav-project-cta:hover,.nav-project-cta.is-active,.nav-project-cta:focus-visible,.nav-project-cta:active{transform:translateY(-4px)!important;box-shadow:0 14px 28px rgba(122,30,30,.28)!important}


/* ===== v16 requested refinements ===== */
.psi-strip{margin-top:18px;background:linear-gradient(125deg,#2a2f36,#1b1f24)!important}
.psi-strip strong{font-size:22px;color:#fff}
.psi-strip p{color:#d8dde2!important}

/* Top-row project button only: keep white text and nav-like animation */
.nav-project-cta{background:var(--burgundy)!important;border-radius:10px 10px 0 0!important;color:#fff!important}
.nav-project-cta:hover,.nav-project-cta.is-active,.nav-project-cta:focus-visible,.nav-project-cta:active{background:#6b1919!important;color:#fff!important;transform:translateY(-5px)!important}
.nav-project-cta::after{background:var(--beige)!important;transform:scaleX(0)!important}
.nav-project-cta:hover::after,.nav-project-cta.is-active::after,.nav-project-cta:focus-visible::after{transform:scaleX(1)!important}

/* Printing lower object cards */
.visual-object-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.object-card{display:grid;grid-template-columns:92px 1fr;gap:18px;align-items:center;padding:18px 20px;border-radius:22px;border:1px solid rgba(122,30,30,.08);box-shadow:0 10px 26px rgba(17,17,17,.05)}
.object-card .object-copy h3{margin:0 0 8px;font-size:22px}
.object-card .object-copy p{margin:0;color:#575e66}
.object-visual{width:92px;height:92px;border-radius:22px;background:linear-gradient(145deg,#f1eadf,#dccdb6);position:relative;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 10px 18px rgba(17,17,17,.06)}
.object-visual::before,.object-visual::after{content:"";position:absolute;background:#c7b08f}
.object-archive::before{width:56px;height:40px;left:18px;top:28px;border-radius:8px}
.object-archive::after{width:64px;height:10px;left:14px;top:18px;border-radius:8px;background:#b89b72}
.object-home::before{width:48px;height:38px;left:22px;top:34px;border-radius:6px}
.object-home::after{width:40px;height:22px;left:26px;top:18px;clip-path:polygon(50% 0,100% 100%,0 100%);background:#b89972}
.object-mail::before{width:58px;height:42px;left:17px;top:26px;border-radius:8px}
.object-mail::after{width:42px;height:28px;left:25px;top:34px;clip-path:polygon(0 0,100% 0,50% 54%);background:#e9dcc7}
.object-transport::before{width:50px;height:34px;left:20px;top:28px;border-radius:7px}
.object-transport::after{width:18px;height:18px;left:24px;bottom:14px;border-radius:50%;box-shadow:30px 0 0 #b89b72;background:#b89b72}
.object-insert::before{width:58px;height:58px;left:17px;top:17px;border-radius:16px}
.object-insert::after{width:28px;height:28px;left:32px;top:32px;border-radius:10px;background:#eadfce;box-shadow:-20px 0 0 #eadfce,20px 0 0 #eadfce,0 -20px 0 #eadfce,0 20px 0 #eadfce}
.object-design::before{width:54px;height:54px;left:19px;top:19px;border-radius:14px;transform:rotate(45deg)}
.object-design::after{width:10px;height:46px;right:20px;top:22px;border-radius:10px;background:#9e8460;transform:rotate(24deg)}

/* 5-card print grid + 5 quality cards */
.mini-card-grid{grid-template-columns:repeat(5,1fr)!important}
.quality-columns{grid-template-columns:repeat(5,1fr)!important}

@media(max-width:1180px){
  .mini-card-grid{grid-template-columns:repeat(3,1fr)!important}
  .quality-columns{grid-template-columns:repeat(3,1fr)!important}
}
@media(max-width:900px){
  .visual-object-grid{grid-template-columns:1fr!important}
  .mini-card-grid{grid-template-columns:repeat(2,1fr)!important}
  .quality-columns{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:640px){
  .mini-card-grid,.quality-columns{grid-template-columns:1fr!important}
  .object-card{grid-template-columns:78px 1fr}
  .object-visual{width:78px;height:78px}
}


/* ===== v16.1 — top navigation “Обсудить проект” hover ===== */
.nav-inner .nav-project-cta{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background:var(--burgundy)!important;
  color:#fff!important;
}
.nav-inner .nav-project-cta::before{
  display:block!important;
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-1!important;
  border-radius:inherit!important;
  background:linear-gradient(105deg,#8b2424 0%,#721b1b 52%,#641818 100%)!important;
  transform:scaleX(.08)!important;
  transform-origin:center!important;
  opacity:0!important;
  transition:transform .36s var(--ease),opacity .24s ease!important;
}
.nav-inner .nav-project-cta::after{
  display:block!important;
  content:""!important;
  position:absolute!important;
  left:10px!important;
  right:10px!important;
  bottom:6px!important;
  height:2px!important;
  border-radius:999px!important;
  background:var(--beige)!important;
  transform:scaleX(0)!important;
  transform-origin:center!important;
  transition:transform .36s var(--ease)!important;
}
.nav-inner .nav-project-cta:hover,
.nav-inner .nav-project-cta.is-active,
.nav-inner .nav-project-cta:focus-visible,
.nav-inner .nav-project-cta:active{
  background:var(--burgundy)!important;
  color:#fff!important;
  transform:none!important;
  border-color:rgba(122,30,30,.45)!important;
  box-shadow:0 9px 24px rgba(43,47,54,.11),inset 0 0 0 1px rgba(255,255,255,.15)!important;
}
.nav-inner .nav-project-cta:hover::before,
.nav-inner .nav-project-cta.is-active::before,
.nav-inner .nav-project-cta:focus-visible::before{
  transform:scaleX(1)!important;
  opacity:1!important;
}
.nav-inner .nav-project-cta:hover::after,
.nav-inner .nav-project-cta.is-active::after,
.nav-inner .nav-project-cta:focus-visible::after{
  transform:scaleX(1)!important;
}


/* ===== v17 — Journal / News page ===== */
.journal-hero{padding:82px 0 72px;background:#f3f5f7;border-bottom:1px solid rgba(43,47,54,.08)}
.journal-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.journal-hero h1{font-size:clamp(48px,5.7vw,78px);line-height:.96;letter-spacing:-.055em;margin:14px 0 24px;max-width:850px}
.journal-lead{font-size:18px;max-width:760px;color:#50565e}
.journal-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}.journal-tags span{padding:9px 14px;border-radius:999px;background:#fff;border:1px solid rgba(43,47,54,.10);font-size:12px;font-weight:900;color:#4b5057}
.journal-cover{min-height:390px;padding:34px;border-radius:30px;background:linear-gradient(145deg,var(--graphite),#20242a);color:#fff;position:relative;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:flex-end}
.journal-cover::before{content:"";position:absolute;width:270px;height:270px;border-radius:50%;background:var(--beige);opacity:.10;right:-80px;top:-70px}.journal-cover::after{content:"";position:absolute;width:150px;height:150px;border:1px solid rgba(255,255,255,.11);border-radius:50%;right:30px;top:46px;box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 76px rgba(255,255,255,.015)}
.journal-cover-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:#c9ced4;position:relative;z-index:2}.journal-cover>strong{font-size:64px;line-height:1;margin:12px 0 14px;color:var(--beige);position:relative;z-index:2}.journal-cover p{color:#d2d6db;margin:0;max-width:390px;position:relative;z-index:2}.journal-cover-mark{position:absolute;right:30px;bottom:25px;font-size:140px;font-weight:900;line-height:.8;color:rgba(255,255,255,.035)}
.journal-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:34px}.journal-section-head h2{font-size:clamp(34px,4vw,54px);line-height:1;margin:8px 0 0}.journal-section-head>p{max-width:560px;margin:0;color:#5b6168}
.journal-featured{background:#fff}.journal-feature-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:18px}.journal-feature-card{border-radius:26px;overflow:hidden;border:1px solid rgba(43,47,54,.10);background:#e7ded3;box-shadow:0 12px 34px rgba(17,17,17,.06);transition:.35s var(--ease)}.journal-feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.journal-feature-large{display:grid;grid-template-columns:1.05fr .95fr}.journal-feature-image{min-height:430px;overflow:hidden}.journal-feature-image.compact{min-height:250px}.journal-feature-image img{width:100%;height:100%;object-fit:cover;transition:.6s var(--ease)}.journal-feature-card:hover img{transform:scale(1.03)}.journal-feature-content{padding:28px;display:flex;flex-direction:column}.journal-feature-content time,.journal-card-body time{font-size:11px;color:#6b7076;text-transform:uppercase;letter-spacing:.08em;margin:11px 0}.journal-feature-content h3{font-size:30px;line-height:1.05;margin:0 0 14px}.journal-feature-content p{color:#4f555d}.journal-feature-content a,.journal-card-body a{margin-top:auto;color:var(--burgundy);font-weight:900;font-size:13px}.journal-feature-content a b{display:inline-block;transition:.2s}.journal-feature-content a:hover b{transform:translateX(5px)}
.journal-category{display:inline-flex;width:max-content;padding:7px 10px;border-radius:999px;background:var(--burgundy);color:#fff;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.journal-category.steel{background:#bcc5cf;color:#24282d}.journal-category.beige{background:#d9c8b3;color:#2f3338}.journal-category.graphite{background:var(--graphite);color:#fff}.journal-category.burgundy{background:var(--burgundy);color:#fff}
.journal-stream-section{background:#eef1f4}.journal-filter{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.journal-filter button{border:1px solid rgba(43,47,54,.12);background:#dde3e9;color:#3f454c;padding:9px 13px;border-radius:999px;font:inherit;font-size:11px;font-weight:900;cursor:pointer;transition:.25s}.journal-filter button:hover,.journal-filter button.is-active{background:var(--graphite);color:#fff;transform:translateY(-2px)}
.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.journal-card{background:#e7ded3;border-radius:24px;overflow:hidden;border:1px solid rgba(43,47,54,.08);box-shadow:0 10px 28px rgba(17,17,17,.05);transition:.35s var(--ease)}.journal-card:nth-child(2n){background:#cdd5de}.journal-card:nth-child(3n){background:#d8c9bb}.journal-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.journal-card.is-hidden{display:none}.journal-card-media{height:225px;overflow:hidden;background:#f6f2ec}.journal-card-media img{width:100%;height:100%;object-fit:cover;transition:.55s var(--ease)}.journal-card:hover img{transform:scale(1.04)}.journal-card-media.icon-media img{object-fit:cover}.journal-card-body{padding:24px;display:flex;min-height:285px;flex-direction:column}.journal-card-body h3{font-size:24px;line-height:1.08;margin:0 0 12px}.journal-card-body p{font-size:14px;color:#4c535b}.journal-note{font-size:11px;color:#646a71;margin-top:auto;border-top:1px solid rgba(43,47,54,.12);padding-top:13px}.placeholder-media{display:grid;place-items:center;background:linear-gradient(135deg,#ccd4dc,#e7ded3)}.news-placeholder-icon{width:92px;height:92px;border-radius:25px;background:var(--burgundy);color:#fff;display:grid;place-items:center;font-size:48px;font-weight:900;box-shadow:0 12px 26px rgba(122,30,30,.2)}
.journal-gallery-section{background:#fff}.journal-gallery{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:12px}.journal-gallery figure{height:330px;margin:0;border-radius:24px;overflow:hidden;position:relative;background:#ddd;box-shadow:0 10px 26px rgba(17,17,17,.06)}.journal-gallery img{width:100%;height:100%;object-fit:cover;transition:.55s var(--ease)}.journal-gallery figure:hover img{transform:scale(1.04)}.journal-gallery figcaption{position:absolute;left:14px;bottom:14px;background:rgba(17,17,17,.78);color:#fff;padding:8px 12px;border-radius:999px;font-size:11px;font-weight:900;backdrop-filter:blur(8px)}
.journal-archive-section{background:#e1e5e9}.journal-archive{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;padding:38px;border-radius:28px;background:#cdd5de;border:1px solid rgba(43,47,54,.10)}.journal-archive h2{font-size:40px;line-height:1;margin:8px 0 14px}.journal-archive p{margin:0;color:#4d535a}.journal-months{display:flex;gap:10px;justify-content:flex-end}.journal-months>a,.journal-month-empty{width:125px;height:125px;border-radius:24px;background:#e7ded3;display:flex;flex-direction:column;justify-content:center;padding:16px;color:#333;transition:.3s}.journal-months>a:hover{transform:translateY(-5px);box-shadow:0 12px 24px rgba(17,17,17,.10)}.journal-months .is-current{background:var(--burgundy);color:#fff}.journal-months strong{font-size:34px;line-height:1}.journal-months span{font-size:11px;margin-top:9px;line-height:1.25}.journal-month-empty{opacity:.6}
@media(min-width:1181px){.nav-inner>a[href="journal.html"]{min-width:66px!important}}
@media(max-width:1100px){.journal-hero-grid,.journal-feature-grid,.journal-feature-large,.journal-archive{grid-template-columns:1fr}.journal-grid{grid-template-columns:repeat(2,1fr)}.journal-gallery{grid-template-columns:1fr 1fr}.journal-months{justify-content:flex-start}.journal-feature-image{min-height:330px}.journal-section-head{align-items:flex-start;flex-direction:column}.journal-filter{justify-content:flex-start}}
@media(max-width:700px){.journal-grid,.journal-gallery{grid-template-columns:1fr}.journal-gallery figure{height:280px}.journal-months{display:grid;grid-template-columns:repeat(3,1fr)}.journal-months>a,.journal-month-empty{width:auto;height:110px}.journal-cover{min-height:320px}.journal-feature-content h3{font-size:26px}}

.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.news-card{background:#E7DED3;border-radius:24px;overflow:hidden;box-shadow:0 14px 30px rgba(0,0,0,.08);cursor:pointer}.news-card img{width:100%;height:240px;object-fit:cover}.news-card div{padding:22px}.news-card h2{font-size:22px}.news-card p{color:#454b52}.news-card button{background:#7a1e1e;color:#fff;border:0;padding:12px 22px;border-radius:10px}.news-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;align-items:center;justify-content:center}.news-window{background:#f3f5f7;max-width:760px;padding:32px;border-radius:28px;position:relative}.news-window img{width:100%;max-height:380px;object-fit:cover;border-radius:18px}.news-window button{position:absolute;right:20px;top:15px;border:0;background:#7a1e1e;color:white;border-radius:50%;width:36px;height:36px;font-size:24px}@media(max-width:900px){.news-grid{grid-template-columns:1fr}}


/* v19 blog performance */
.blog-page .site-header{will-change:auto!important}
.blog-page .nav-inner{transform:translateZ(0);}
.news-modal{backdrop-filter:none!important;}
.blog-page .tilt-card{transition:transform .2s ease!important;}

/* ===== Printing product photos: seamless unified windows ===== */
.visual-object-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:14px!important}
.object-card{display:grid!important;grid-template-columns:132px 1fr!important;gap:20px!important;align-items:center!important;padding:16px 18px!important;min-height:150px!important;cursor:zoom-in;background:#f4eee7!important;border:0!important;border-radius:22px!important;overflow:hidden}
.object-card:hover{transform:translateY(-4px)!important;box-shadow:0 14px 32px rgba(17,17,17,.10)!important}
.object-card:focus-visible{outline:3px solid rgba(183,34,34,.35);outline-offset:3px}
.object-visual{width:132px!important;height:110px!important;border-radius:16px!important;overflow:hidden!important;background:#f4eee7!important;border:0!important;box-shadow:none!important;position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important}
.object-visual::before,.object-visual::after{display:none!important}
.object-visual img{width:92%!important;height:92%!important;max-width:92%!important;max-height:92%!important;object-fit:contain!important;object-position:center center!important;display:block!important;margin:auto!important;transition:transform .35s ease!important}
.object-card:hover .object-visual img{transform:scale(1.015)}
.object-card .object-copy h3{margin:0 0 8px!important;font-size:21px!important;line-height:1.12!important}
.object-card .object-copy p{margin:0!important;color:#4e5660!important;line-height:1.45!important}
.printing-lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:30px;background:rgba(12,14,17,.78);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .25s ease,visibility .25s ease}
.printing-lightbox.is-open{opacity:1;visibility:visible;pointer-events:auto}
.printing-lightbox-panel{width:min(920px,92vw);max-height:90vh;padding:18px;background:#fff;border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.35);transform:translateY(12px) scale(.98);transition:transform .25s ease}
.printing-lightbox.is-open .printing-lightbox-panel{transform:translateY(0) scale(1)}
.printing-lightbox-panel h2{margin:0 0 14px;padding:0 44px 0 6px;font-size:24px;color:#17191c}
.printing-lightbox-panel img{display:block;width:100%;max-height:76vh;object-fit:contain;object-position:center;border-radius:14px;background:#f6f6f6}
.printing-lightbox-close{position:absolute;top:22px;right:28px;z-index:2;width:48px;height:48px;border:0;border-radius:50%;background:#fff;color:#17191c;font-size:34px;line-height:1;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.18)}
body.printing-lightbox-open{overflow:hidden}
@media(max-width:900px){.visual-object-grid{grid-template-columns:1fr!important}}
@media(max-width:640px){.object-card{grid-template-columns:100px 1fr!important;gap:14px!important;min-height:126px!important;padding:12px!important}.object-visual{width:100px!important;height:88px!important}.object-visual img{width:92%!important;height:92%!important;max-width:92%!important;max-height:92%!important;object-fit:contain!important}.object-card .object-copy h3{font-size:18px!important}.object-card .object-copy p{font-size:13px!important}.printing-lightbox{padding:14px}.printing-lightbox-panel{padding:12px;border-radius:18px}.printing-lightbox-panel h2{font-size:20px}.printing-lightbox-close{top:12px;right:12px;width:42px;height:42px}}

/* Team section on Company page — same visual language as Contacts */
.team-section{background:#fff}
.team-grid{grid-template-columns:repeat(4,1fr);gap:18px}
.team-grid .representative-card{height:100%;box-sizing:border-box}
.team-grid .representative-photo{width:220px!important;height:220px!important}
@media(max-width:1100px){.team-grid{grid-template-columns:repeat(2,1fr)}.team-grid .representative-photo{width:210px!important;height:210px!important}}
@media(max-width:540px){.team-grid{grid-template-columns:1fr}.team-grid .representative-photo{width:230px!important;height:230px!important}}

/* v28 — фотографии команды */
.team-grid .representative-photo{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#fff;
}
.team-grid .representative-photo img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:cover;
  object-position:center;
  border-radius:50%;
}
.team-grid .representative-photo span{display:none}

/* v29 — одинаковое фото Лучицкой в контактах */
.contacts-section .representative-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  border-radius:50%;
}

/* ===== v30: team/contact photos, footer contacts, Lojements ===== */
.team-grid .representative-photo img,
.contacts-representatives .representative-photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  border-radius:50%;
  transform:scale(1.09);
  transform-origin:center;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}
.team-grid .representative-photo,
.contacts-representatives .representative-photo{
  isolation:isolate;
}
.team-grid .representative-photo img:focus{outline:none}
.team-grid .representative-card a{display:none}
.contacts-representatives .representative-card a{
  text-decoration:none!important;
}
.contacts-representatives{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.footer-contact-list{
  display:grid;
  align-content:start;
  gap:10px;
}
.footer-contact-list h3{margin-bottom:2px!important}
.footer-contact-person{
  display:grid;
  gap:2px;
}
.footer-contact-person strong{
  color:#fff;
  font-size:12px;
}
.footer-contact-person a{
  color:#bfc3c8!important;
  text-decoration:none!important;
  font-size:12px!important;
}
.footer-contact-person a:hover{color:#fff!important}
@media(min-width:821px){
  .nav-inner{gap:3px!important}
  .main-nav a{padding-left:10px!important;padding-right:10px!important;font-size:13px!important}
  .main-nav a::after{left:10px!important;right:10px!important}
}
@media(max-width:820px){
  .contacts-representatives{grid-template-columns:1fr!important}
}

/* v33: final visual corrections — do not alter global page layout */
.contacts-representatives{
  align-items:stretch !important;
}
.contacts-representatives .representative-card{
  display:flex;
  flex-direction:column;
  height:100%;
}
.contacts-representatives .representative-card .representative-role{
  min-height:40px;
}
.contacts-representatives .representative-card a:last-child{
  margin-top:auto;
  text-decoration:none!important;
}

/* Footer contact column */
.footer-contact-list,
.footer-contact-list h3,
.footer-contact-person strong,
.footer-contact-person a{
  color:#111!important;
}
.footer-contact-person a{
  text-decoration:none!important;
}

/* Team/contact portraits: only a subtle crop, no layout change */
.team-grid .representative-photo,
.contacts-representatives .representative-photo{
  overflow:hidden;
}
.team-grid .representative-photo img,
.contacts-representatives .representative-photo img{
  transform:scale(1.10);
  transform-origin:center;
  object-fit:cover;
  object-position:center;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}

/* v34: Ложементы — материалы */
.lojements-materials{
  max-width:1120px;
  margin-left:auto!important;
  margin-right:auto!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  justify-content:center;
}
.lojements-materials article{
  text-align:center;
  min-height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}
.lojements-materials article p{
  max-width:320px;
}
.lojements-production{
  overflow:hidden;
}
.lojements-production .process-compact{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:nowrap;
  width:100%;
  white-space:nowrap;
}
.lojements-production .process-compact span{
  flex:1 1 auto;
  white-space:nowrap;
}
.lojements-production .process-compact b{
  flex:0 0 auto;
  font-size:22px;
  line-height:1;
  opacity:.75;
}
@media(max-width:1050px){
  .lojements-production .process-compact{gap:10px;font-size:12px}
  .lojements-production .process-compact b{font-size:18px}
}
@media(max-width:760px){
  .lojements-materials{grid-template-columns:1fr!important}
  .lojements-production .process-compact{
    overflow-x:auto;
    justify-content:flex-start;
    padding-bottom:8px;
  }
  .lojements-production .process-compact span{flex:0 0 auto}
}

/* v35: real production photography replaces blue illustrations */
.subhero-side-stack .subhero-illustration{
  width:100%;
  height:320px;
  object-fit:cover;
  object-position:center;
  border-radius:24px;
  display:block;
  box-shadow:0 18px 45px rgba(20,27,35,.12);
}
.service-photo-intro .showcase-image img{
  width:100%;
  height:100%;
  min-height:360px;
  object-fit:cover;
  object-position:center;
  border-radius:24px;
}
@media(max-width:760px){
  .subhero-side-stack .subhero-illustration{height:240px}
  .service-photo-intro .showcase-image img{min-height:280px}
}

/* v36 contextual photos: right-side subhero illustrations stay unchanged */
.context-photo-section{padding-top:28px}
.context-photo-block{align-items:center}
.context-photo-block .showcase-image{overflow:hidden;border-radius:24px}
.context-photo-block .showcase-image img{width:100%;min-height:360px;height:100%;display:block;object-fit:cover;object-position:center;border-radius:24px}
.context-photo-block .showcase-copy{padding:18px 6px}
@media(max-width:760px){.context-photo-block .showcase-image img{min-height:260px}.context-photo-section{padding-top:18px}}

/* v37 — красивые карточки сертификатов */
.certificates-section{position:relative;background:linear-gradient(180deg,#f5f6f7 0%,#eef0f2 100%);overflow:hidden}
.certificates-section:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(60,68,76,.08);border-radius:50%;right:-160px;top:-180px}
.certificates-heading{max-width:820px}.certificates-heading p{max-width:760px}
.certificates-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:38px}
.certificate-card{display:flex;flex-direction:column;background:#fff;border:1px solid rgba(34,39,44,.09);border-radius:22px;overflow:hidden;box-shadow:0 14px 40px rgba(29,36,42,.08);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.certificate-card:hover{transform:translateY(-5px);box-shadow:0 20px 48px rgba(29,36,42,.13);border-color:rgba(185,38,45,.22)}
.certificate-preview{position:relative;display:block;height:310px;background:#e9ecef;overflow:hidden}
.certificate-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(18,22,25,.38));opacity:0;transition:opacity .25s ease}
.certificate-preview img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .35s ease}
.certificate-card:hover .certificate-preview img{transform:scale(1.025)}
.certificate-card:hover .certificate-preview:after{opacity:1}
.certificate-open{position:absolute;left:18px;bottom:16px;z-index:2;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.94);color:#252a2f;font-size:12px;font-weight:700;letter-spacing:.02em;opacity:0;transform:translateY(5px);transition:all .25s ease}
.certificate-card:hover .certificate-open{opacity:1;transform:translateY(0)}
.certificate-body{padding:22px 22px 20px;display:flex;flex-direction:column;flex:1}
.certificate-label{display:inline-flex;align-self:flex-start;padding:6px 10px;margin-bottom:12px;border-radius:999px;background:#f0f2f3;color:#687078;font-size:10px;font-weight:800;letter-spacing:.09em}
.certificate-body h3{margin:0 0 10px;font-size:21px;line-height:1.2}
.certificate-body p{margin:0;color:#626a72;font-size:14px;line-height:1.58}
.certificate-meta{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:17px;padding-top:15px;border-top:1px solid #e6e8ea;color:#7a8187;font-size:11px}
.certificate-download{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding:12px 14px;border-radius:12px;background:#242a30;color:#fff!important;font-size:13px;font-weight:700;text-decoration:none!important;transition:background .2s ease,transform .2s ease}
.certificate-download:hover{background:#b3262e;transform:translateY(-1px)}
.certificate-download span{font-size:17px;line-height:1}
@media(max-width:980px){.certificates-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.certificates-grid{grid-template-columns:1fr;gap:18px}.certificate-preview{height:330px}.certificate-body{padding:20px}}

/* v38 — certificates moved below the team */
.certificates-section{margin-top:48px}

/* v39 — Blog: text-only monthly news, chronological order */
.blog-page .news-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
}
.blog-page .news-card{
  min-height:260px;
  cursor:pointer;
  display:flex;
  align-items:stretch;
}
.blog-page .news-card-text{
  width:100%;
  display:flex;
  flex-direction:column;
  padding:28px;
}
.blog-page .news-card small{
  display:block;
  margin-bottom:10px;
}
.blog-page .news-card h2{
  margin:0 0 12px;
}
.blog-page .news-card p{
  margin:0;
  color:#56606a;
  line-height:1.65;
}
.blog-page .news-card button{
  margin-top:auto;
  align-self:flex-start;
}
.blog-page .news-window{
  max-width:820px;
  width:calc(100% - 40px);
  padding:38px 42px 42px;
}
.blog-page .news-window #newsMonth{
  display:block;
  margin-bottom:10px;
  color:#8a2b2b;
  font-weight:700;
}
.blog-page .news-modal-text{
  white-space:pre-line;
  color:#4f5962;
  line-height:1.75;
  font-size:16px;
}
@media(max-width:760px){
  .blog-page .news-grid{grid-template-columns:1fr}
  .blog-page .news-window{padding:28px 24px 30px}
}

/* v40 — Blog cards restored to polished site style */
.blog-page .news-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px;
  align-items:stretch;
}
.blog-page .news-card{
  position:relative;
  min-height:300px;
  padding:0;
  overflow:hidden;
  border-radius:24px;
  border:1px solid rgba(42,48,54,.10);
  background:linear-gradient(145deg,#f4eee5 0%,#ebe4da 100%);
  box-shadow:0 12px 30px rgba(35,42,48,.08);
  cursor:pointer;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.blog-page .news-card:nth-child(2){background:linear-gradient(145deg,#eef1f2 0%,#e3e7e9 100%)}
.blog-page .news-card:nth-child(3){background:linear-gradient(145deg,#f1eee9 0%,#e6e1da 100%)}
.blog-page .news-card:nth-child(4){background:linear-gradient(145deg,#eee9e2 0%,#ded8d0 100%)}
.blog-page .news-card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 38px rgba(35,42,48,.12);
  border-color:rgba(142,35,38,.20);
}
.blog-page .news-card-accent{
  position:absolute;
  left:0;top:0;bottom:0;
  width:5px;
  background:#8e2528;
}
.blog-page .news-card-inner{
  min-height:300px;
  display:flex;
  flex-direction:column;
  padding:28px 30px 26px;
}
.blog-page .news-card small{
  display:inline-block;
  color:#8e2528;
  font-weight:800;
  letter-spacing:.04em;
  margin-bottom:11px;
}
.blog-page .news-card h2{
  margin:0 0 13px;
  font-size:22px;
  line-height:1.22;
}
.blog-page .news-card p{
  margin:0;
  color:#56606a;
  line-height:1.62;
  font-size:14px;
}
.blog-page .news-read-more{
  margin-top:auto;
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  gap:12px;
  border:0;
  padding:11px 16px;
  border-radius:12px;
  background:#252b30;
  color:#fff;
  font:inherit;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  transition:background .2s ease,transform .2s ease;
}
.blog-page .news-read-more:hover{background:#8e2528;transform:translateX(2px)}
.blog-page .news-read-more span{font-size:18px;line-height:1}
.blog-page .news-modal{
  display:none;
  position:fixed;
  inset:0;
  z-index:9999;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(25,29,33,.58);
}
.blog-page .news-window{
  position:relative;
  width:min(820px,100%);
  max-height:calc(100vh - 40px);
  overflow:auto;
  padding:38px 42px 42px;
  border-radius:26px;
  background:#f4f5f5;
  box-shadow:0 28px 80px rgba(0,0,0,.25);
}
.blog-page .news-window #newsMonth{
  display:block;
  margin-bottom:10px;
  color:#8e2528;
  font-size:13px;
  font-weight:800;
}
.blog-page .news-window #newsTitle{
  margin:0 38px 20px 0;
  font-size:28px;
  line-height:1.2;
}
.blog-page .news-modal-text{
  white-space:pre-line;
  color:#505a62;
  line-height:1.78;
  font-size:16px;
}
.blog-page .news-close{
  position:absolute;
  right:18px;
  top:16px;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:#8e2528;
  color:#fff;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}
body.news-modal-open{overflow:hidden}
@media(max-width:760px){
  .blog-page .news-grid{grid-template-columns:1fr}
  .blog-page .news-card,.blog-page .news-card-inner{min-height:280px}
  .blog-page .news-window{padding:30px 24px 32px}
  .blog-page .news-window #newsTitle{font-size:23px}
}

/* v41 — May blog photo + carousel */
.blog-page .news-card-image{
  width:100%;
  height:190px;
  overflow:hidden;
  background:#ece9e4;
}
.blog-page .news-card-image img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 28%;
}
.blog-page .news-card:has(.news-card-image) .news-card-inner{
  min-height:205px;
}
.blog-page .news-card:has(.news-card-image){
  display:flex;
  flex-direction:column;
}
.blog-page .news-card:has(.news-card-image) .news-card-accent{
  bottom:0;
  height:calc(100% - 190px);
  top:190px;
}
.blog-page .news-carousel{
  position:relative;
  width:100%;
  margin:0 0 28px;
  padding:0 46px;
}
.blog-page .news-carousel-viewport{
  width:100%;
  height:360px;
  overflow:hidden;
  border-radius:18px;
  background:#e9eaeb;
}
.blog-page .news-carousel-viewport img{
  width:100%;
  height:100%;
  display:block;
  object-fit:contain;
  background:#e9eaeb;
}
.blog-page .news-carousel-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:3;
  width:38px;
  height:38px;
  border:0;
  border-radius:50%;
  background:#252b30;
  color:#fff;
  font-size:31px;
  line-height:34px;
  cursor:pointer;
  box-shadow:0 5px 18px rgba(0,0,0,.15);
}
.blog-page .news-carousel-arrow:hover{background:#8e2528}
.blog-page .news-carousel-prev{left:0}
.blog-page .news-carousel-next{right:0}
.blog-page .news-carousel-dots{
  display:flex;
  justify-content:center;
  gap:7px;
  margin-top:12px;
}
.blog-page .news-carousel-dot{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:50%;
  background:#c4c8cb;
  cursor:pointer;
}
.blog-page .news-carousel-dot.is-active{background:#8e2528}
@media(max-width:760px){
  .blog-page .news-carousel{padding:0 38px}
  .blog-page .news-carousel-viewport{height:300px}
  .blog-page .news-card-image{height:170px}
  .blog-page .news-card:has(.news-card-image) .news-card-accent{top:170px;height:calc(100% - 170px)}
}

/* =========================================================
   v43 — BLOG REDESIGN / reliable cards + modal carousel
   ========================================================= */
.blog-page .news-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}
.blog-page .news-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  height:100%!important;
  padding:0!important;
  border:0!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#eee9e2!important;
  box-shadow:0 10px 28px rgba(35,42,48,.09)!important;
  cursor:default!important;
  transform:none!important;
}
.blog-page .news-card:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 14px 32px rgba(35,42,48,.13)!important;
}
.blog-page .news-card-accent{display:none!important}

.blog-page .news-card-image{
  position:relative!important;
  width:100%!important;
  height:205px!important;
  flex:0 0 205px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#e3e0dc!important;
}
.blog-page .news-card-image img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:0!important;
  transform:none!important;
}
.blog-page .news-card:nth-child(1) .news-card-image img{object-position:center 30%!important}
.blog-page .news-card:nth-child(2) .news-card-image img{object-position:center 50%!important}
.blog-page .news-card:nth-child(3) .news-card-image img{object-position:center 50%!important}
.blog-page .news-card:nth-child(4) .news-card-image img{object-position:center 50%!important}

.blog-page .news-card-inner{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  min-height:205px!important;
  padding:19px 21px 18px!important;
  background:#eee9e2!important;
}
.blog-page .news-card small{
  display:block!important;
  margin:0 0 7px!important;
  padding:0!important;
  color:#8e2528!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1.2!important;
  letter-spacing:.04em!important;
}
.blog-page .news-card h2{
  margin:0 0 8px!important;
  padding:0!important;
  color:#20252a!important;
  font-size:20px!important;
  line-height:1.25!important;
}
.blog-page .news-card p{
  margin:0!important;
  padding:0!important;
  color:#59626a!important;
  font-size:14px!important;
  line-height:1.45!important;
}
.blog-page .news-read-more{
  position:static!important;
  margin:14px 0 0!important;
  align-self:flex-start!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:9px!important;
  padding:9px 13px!important;
  border:0!important;
  border-radius:10px!important;
  background:#252b30!important;
  color:#fff!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.blog-page .news-read-more:hover{
  background:#8e2528!important;
  transform:none!important;
}
.blog-page .news-read-more span{font-size:16px!important}

.blog-page .news-modal{
  display:none;
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  align-items:center!important;
  justify-content:center!important;
  padding:18px!important;
  background:rgba(25,29,33,.62)!important;
  backdrop-filter:blur(3px)!important;
}
.blog-page .news-window{
  position:relative!important;
  width:min(780px,calc(100vw - 36px))!important;
  max-height:calc(100vh - 36px)!important;
  overflow:auto!important;
  margin:0!important;
  padding:22px!important;
  border:0!important;
  border-radius:22px!important;
  background:#f4f5f5!important;
  box-shadow:0 26px 70px rgba(0,0,0,.28)!important;
}
.blog-page .news-carousel{
  position:relative!important;
  width:100%!important;
  height:390px!important;
  margin:0 0 18px!important;
  padding:0!important;
}
.blog-page .news-carousel-viewport{
  width:100%!important;
  height:100%!important;
  overflow:hidden!important;
  border-radius:16px!important;
  background:#e5e3df!important;
}
.blog-page .news-carousel-viewport img{
  width:100%!important;
  height:100%!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:16px!important;
  background:#e5e3df!important;
}
.blog-page .news-carousel-arrow{
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:5!important;
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:#252b30!important;
  color:#fff!important;
  font-size:30px!important;
  line-height:40px!important;
  text-align:center!important;
  cursor:pointer!important;
  box-shadow:0 5px 16px rgba(0,0,0,.2)!important;
}
.blog-page .news-carousel-arrow:hover{background:#8e2528!important}
.blog-page .news-carousel-prev{left:12px!important}
.blog-page .news-carousel-next{right:12px!important}
.blog-page .news-carousel-arrow[hidden]{display:none!important}
.blog-page .news-carousel-dots{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:-16px!important;
  display:flex!important;
  justify-content:center!important;
  gap:7px!important;
  margin:0!important;
}
.blog-page .news-carousel-dot{
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:#c5c7c8!important;
  cursor:pointer!important;
}
.blog-page .news-carousel-dot.is-active{background:#8e2528!important}
.blog-page .news-modal-content{
  padding:0 4px 2px!important;
}
.blog-page .news-window #newsMonth{
  display:block!important;
  margin:0 0 7px!important;
  color:#8e2528!important;
  font-size:12px!important;
  font-weight:800!important;
}
.blog-page .news-window #newsTitle{
  margin:0 42px 13px 0!important;
  color:#20252a!important;
  font-size:25px!important;
  line-height:1.22!important;
}
.blog-page .news-modal-text{
  white-space:pre-line!important;
  color:#505a62!important;
  font-size:15px!important;
  line-height:1.65!important;
}
.blog-page .news-window .news-close{
  position:absolute!important;
  right:14px!important;
  top:13px!important;
  z-index:10!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  padding:0!important;
  border:0!important;
  border-radius:50%!important;
  background:#8e2528!important;
  color:#fff!important;
  font-size:24px!important;
  line-height:36px!important;
  text-align:center!important;
  cursor:pointer!important;
}
.blog-page .news-window .news-close:hover{background:#252b30!important}
body.news-modal-open{overflow:hidden!important}

@media(max-width:760px){
  .blog-page .news-grid{grid-template-columns:1fr!important}
  .blog-page .news-card-image{height:185px!important;flex-basis:185px!important}
  .blog-page .news-card-inner{min-height:0!important}
  .blog-page .news-carousel{height:300px!important}
  .blog-page .news-window{padding:16px!important;width:min(100%,calc(100vw - 24px))!important}
  .blog-page .news-window #newsTitle{font-size:21px!important}
}

/* v44 — content-matched blog photos */
.blog-page .news-card-image img{object-fit:cover!important}
.blog-page .news-card[data-news-id="4"] .news-card-image img{object-position:center 50%!important}
.blog-page .news-card[data-news-id="3"] .news-card-image img{object-position:center 50%!important}
.blog-page .news-card[data-news-id="2"] .news-card-image img{object-position:center 50%!important}
.blog-page .news-card[data-news-id="1"] .news-card-image img{object-position:center 40%!important}

/* Compact downloadable presentation cards */
.presentation-download-section{padding:18px 0 6px}
.presentation-download-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;max-width:920px;margin:0 auto;padding:14px 18px;background:rgba(255,255,255,.96);border:1px solid rgba(93,31,35,.14);border-radius:16px;box-shadow:0 7px 22px rgba(26,31,38,.07);text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.presentation-download-card:hover{transform:translateY(-2px);box-shadow:0 11px 28px rgba(26,31,38,.11);border-color:rgba(93,31,35,.28)}
.presentation-icon{display:grid;place-items:center;width:46px;height:52px;border-radius:11px;background:#7b2025;color:#fff;font-size:10px;font-weight:800;letter-spacing:.08em}
.presentation-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.presentation-copy small{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#8a8d92}
.presentation-copy strong{font-size:17px;line-height:1.2;color:#24272b}
.presentation-copy em{font-style:normal;font-size:12.5px;line-height:1.35;color:#686d73}
.presentation-action{white-space:nowrap;padding:9px 13px;border-radius:9px;background:#f2eeee;color:#7b2025;font-size:12.5px;font-weight:700}
@media (max-width:700px){.presentation-download-card{grid-template-columns:auto 1fr;gap:11px;padding:13px}.presentation-action{grid-column:2;justify-self:start}.presentation-copy strong{font-size:15px}.presentation-copy em{font-size:11.5px}}

/* v47: only content-matched blog photos */

/* v51: preferred callback time */
.callback-time-row{display:block}
.callback-time-field{display:grid;gap:7px}
.time-label{display:flex;align-items:center;gap:7px;font-weight:800;font-size:13px;color:#34383e}
.clock-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1.5px solid var(--burgundy);border-radius:50%;font-size:16px;line-height:1;color:var(--burgundy)}
.callback-time-field select{width:100%;border:1px solid #cfd3d8;border-radius:12px;padding:13px 14px;background:#fff;font:inherit;color:#111;outline:none;transition:.2s}
.callback-time-field select:focus{border-color:var(--burgundy);box-shadow:0 0 0 3px rgba(122,30,30,.10)}
.company-building-photo{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:18px}
/* v56 calculator: compact price hints and clear total */
.check-option span{line-height:1.35}
.check-option small{font-weight:700;color:#7a1e1e;white-space:nowrap}
.calc-breakdown-total{font-size:15px!important;margin-top:6px;padding-top:13px!important;border-bottom:0!important}
.calc-breakdown-total strong{font-size:18px}

/* v57 calculator UX: hide unit prices, contact validation, compact result */
.calculator-form input.is-invalid,.calculator-form select.is-invalid{border-color:#c62828!important;box-shadow:0 0 0 3px rgba(198,40,40,.14)!important;background:#fff7f7!important}
.calc-selected-title{font-weight:900!important;color:#fff!important;border-bottom:0!important;padding-bottom:2px!important}
.calc-selected-operation{justify-content:flex-start!important;border-bottom:1px solid rgba(255,255,255,.08)!important;padding:7px 0!important}
.calc-selected-operation span{color:#e2e5e9}

.calculator-form input.is-invalid,.calculator-form select.is-invalid,.callback-form input.is-invalid{border-color:#c62828!important;box-shadow:0 0 0 3px rgba(198,40,40,.14)!important;background:#fff7f7!important}
