/* Shared hero layout; the supplied 3D component contains its own stage styles. */
.shredder-hero{isolation:isolate;position:relative;overflow:hidden;min-height:0;padding:142px 0 128px;background:radial-gradient(ellipse at 80% 35%,#12344a 0%,#071b2d 45%,#051322 100%);}
.shredder-hero::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,rgba(5,16,32,.35),transparent 70%);}
.shredder-hero::after{content:'';position:absolute;bottom:0;left:0;right:0;height:64px;z-index:0;pointer-events:none;background:linear-gradient(180deg,transparent,#071322);}
.shredder-hero .hero-content{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:52px;align-items:center;min-height:480px;}
.shredder-hero .hero-text{max-width:none;min-width:0;position:relative;z-index:1;}
.shredder-hero .hero-title{font-size:clamp(2rem,3.4vw,3.05rem);color:#f7fafc;line-height:1.22;text-shadow:none;overflow-wrap:break-word;}
.shredder-hero .hero-desc{color:#d9e6f0;font-size:1rem;line-height:1.85;max-width:600px;}
.shredder-hero .hero-badge{background:rgba(7,24,42,.8);border-color:rgba(245,181,27,.42);color:#f5cc7d;line-height:1.65;}
.shredder-hero .hero-buttons{gap:12px;flex-wrap:wrap;}
.shredder-hero .hero-buttons .btn{font-size:.9rem;padding:15px 21px;min-height:52px;filter:none;text-shadow:none;backdrop-filter:none;transform:none;}
.shredder-hero .hero-buttons .btn-primary{background:#f5b51b;border-color:#f5b51b;color:#071322;font-weight:750;box-shadow:0 8px 28px rgba(245,158,11,.1);}
.shredder-hero .hero-buttons .btn-primary:hover{background:#facc4c;}
.btn-hero-outline{border:1px solid #8ca6bb;color:#f4f8fc;background:#0a1a2d;box-shadow:none;}
.btn-hero-outline:hover{background:#132c43;border-color:#d2e6f1;}
.shredder-hero .hero-visual{min-width:0;display:block;align-self:center;}
.shredder-hero a:focus-visible{outline:3px solid #f5bd40;outline-offset:4px;}
@media(max-width:1100px){.shredder-hero .hero-content{gap:32px;}.shredder-hero .hero-buttons .btn{padding:13px 17px;font-size:.84rem;}}
@media(max-width:900px){.shredder-hero{padding:120px 0 105px;}.shredder-hero .hero-content{grid-template-columns:minmax(0,1fr);gap:38px;min-height:0;}.shredder-hero .hero-text{max-width:720px;}.shredder-hero .hero-visual{width:100%;max-width:660px;justify-self:center;}.shredder-hero .hero-desc{max-width:none;}}
@media(max-width:480px){.shredder-hero{padding:110px 0 55px;}.shredder-hero .hero-title{font-size:1.9rem;line-height:1.27;letter-spacing:-.02em;}.shredder-hero .hero-desc{font-size:.94rem;}.shredder-hero .hero-content{gap:30px;}.shredder-hero .hero-buttons .btn{font-size:.84rem;}}
