/*
Theme Name: Shuangrui
Author: www.heyben.store
Description: A WordPress theme with Tailwind CSS, AOS, and Alpine.js. that is a good job ! ao ao !

Version: 2.0
*/

/* Shuangrui visual system — layout and content remain template-controlled. */
:root {
    --sr-navy: #0b172a;
    --sr-navy-soft: #102a43;
    --sr-teal: #0f766e;
    --sr-teal-bright: #14b8a6;
    --sr-cyan: #67e8f9;
    --sr-amber: #f59e0b;
    --sr-ink: #172033;
    --sr-muted: #64748b;
    --sr-surface: #f6f8fb;
    --sr-line: #e2e8f0;
}

html { scroll-behavior: smooth; }
body {
    color: var(--sr-ink);
    background: var(--sr-surface);
    text-rendering: optimizeLegibility;
}

/* Recolor the existing Tailwind utility vocabulary without changing markup. */
.text-blue-900 { color: var(--sr-navy) !important; }
.text-blue-700, .text-blue-600 { color: var(--sr-teal) !important; }
.text-blue-500 { color: var(--sr-teal-bright) !important; }
.text-blue-400 { color: var(--sr-cyan) !important; }
.text-blue-100 { color: #cffafe !important; }
.bg-blue-900 { background-color: var(--sr-navy) !important; }
.bg-blue-700, .bg-blue-600 { background-color: var(--sr-teal) !important; }
.bg-blue-500 { background-color: var(--sr-teal-bright) !important; }
.bg-blue-100 { background-color: #cffafe !important; }
.bg-blue-50 { background-color: #ecfeff !important; }
.border-blue-600 { border-color: var(--sr-teal) !important; }
.border-blue-200 { border-color: #a5f3fc !important; }
.border-blue-100 { border-color: #cffafe !important; }
.ring-blue-500 { --tw-ring-color: var(--sr-teal-bright) !important; }
.shadow-blue-200 { --tw-shadow-color: rgba(20, 184, 166, .25) !important; }
.shadow-blue-900\/40 { --tw-shadow-color: rgba(11, 23, 42, .4) !important; }
.hover\:text-blue-600:hover { color: var(--sr-teal) !important; }
.hover\:text-blue-500:hover { color: var(--sr-teal-bright) !important; }
.hover\:bg-blue-700:hover { background-color: #115e59 !important; }
.hover\:bg-blue-600:hover { background-color: var(--sr-teal) !important; }
.hover\:bg-blue-500:hover { background-color: #0d9488 !important; }
.hover\:bg-blue-50:hover { background-color: #ecfeff !important; }
.hover\:border-blue-600:hover { border-color: var(--sr-teal) !important; }

.bg-gray-900 { background-color: var(--sr-navy) !important; }
.bg-gray-800 { background-color: #172554 !important; }
.bg-gray-50 { background-color: var(--sr-surface) !important; }
.bg-gray-100 { background-color: #eef2f7 !important; }
.text-gray-900 { color: var(--sr-ink) !important; }
.text-gray-700 { color: #334155 !important; }
.text-gray-600 { color: #475569 !important; }
.text-gray-500, .text-gray-400 { color: var(--sr-muted) !important; }
.border-gray-100 { border-color: var(--sr-line) !important; }
.border-gray-200 { border-color: #cbd5e1 !important; }
.border-gray-800 { border-color: #1e293b !important; }
.hover\:bg-gray-50:hover { background-color: #eefcff !important; }
.hover\:bg-gray-100:hover { background-color: #e2e8f0 !important; }
.hover\:bg-gray-800:hover { background-color: #1e3a5f !important; }

/* Motion language: quiet lift, image depth, and a restrained industrial glow. */
a, button, input, textarea, select { transition-duration: 240ms; }
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible {
    outline: 3px solid rgba(20, 184, 166, .35);
    outline-offset: 3px;
}
.hover-lift { transition: transform .45s cubic-bezier(.22, 1, .36, 1), box-shadow .45s ease, border-color .3s ease; }
.hover-lift:hover { transform: translateY(-8px); box-shadow: 0 20px 40px -18px rgba(11, 23, 42, .3); }
.group:hover img:not(header img) { transform: scale(1.045); }
img { transition: transform .7s cubic-bezier(.22, 1, .36, 1), filter .5s ease; }
.btn-glow { position: relative; overflow: hidden; }
.btn-glow::after {
    content: ''; position: absolute; inset: 0; transform: translateX(-120%);
    background: linear-gradient(105deg, transparent 25%, rgba(255,255,255,.3) 50%, transparent 75%);
    transition: transform .7s ease;
}
.btn-glow:hover::after { transform: translateX(120%); }
.nav-link::after { background-color: var(--sr-teal-bright) !important; box-shadow: 0 0 12px rgba(20,184,166,.6); }
header { box-shadow: 0 8px 30px rgba(11, 23, 42, .08) !important; }
::selection { background: rgba(20, 184, 166, .22); color: var(--sr-navy); }
::-webkit-scrollbar { width: 10px; }
::-webkit-scrollbar-track { background: var(--sr-surface); }
::-webkit-scrollbar-thumb { background: #99f6e4; border: 2px solid var(--sr-surface); border-radius: 999px; }
::-webkit-scrollbar-thumb:hover { background: var(--sr-teal-bright); }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Homepage hero: near-full-screen industrial stage with a restrained technical glow. */
.sr-hero {
    min-height: 820px;
    min-height: clamp(780px, calc(100svh - 80px), 960px);
    isolation: isolate;
}
.sr-hero::before {
    content: '';
    position: absolute;
    z-index: 13;
    inset: clamp(16px, 2vw, 34px);
    border: 1px solid rgba(255, 255, 255, .13);
    pointer-events: none;
}
.sr-hero::after {
    content: '';
    position: absolute;
    z-index: 14;
    top: clamp(16px, 2vw, 34px);
    left: clamp(16px, 2vw, 34px);
    width: clamp(70px, 8vw, 132px);
    height: clamp(70px, 8vw, 132px);
    border-top: 3px solid var(--sr-teal-bright);
    border-left: 3px solid var(--sr-teal-bright);
    pointer-events: none;
}
.sr-hero-background { overflow: hidden; }
.sr-hero-background::before,
.sr-hero-background::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
}
.sr-hero-background::before {
    background:
        radial-gradient(circle at 75% 62%, transparent 0, rgba(4, 12, 24, .04) 28%, rgba(4, 12, 24, .48) 100%),
        linear-gradient(to top, rgba(4, 12, 24, .72), transparent 46%);
}
.sr-hero-background::after {
    background: linear-gradient(90deg, rgba(5, 14, 29, .93) 0%, rgba(5, 14, 29, .78) 32%, rgba(5, 14, 29, .27) 61%, rgba(5, 14, 29, .08) 100%);
}
.sr-hero-image {
    position: relative;
    z-index: 1;
    object-position: center 58%;
    filter: saturate(.82) contrast(1.06);
    animation: sr-hero-image-drift 22s cubic-bezier(.45, 0, .55, 1) infinite alternate;
    will-change: transform;
}
.sr-hero-overlay {
    z-index: 3;
    background: radial-gradient(circle at 68% 54%, rgba(20, 184, 166, .13), transparent 30%);
    animation: sr-hero-breathe 8s ease-in-out infinite alternate;
    pointer-events: none;
}
.sr-machine-particles {
    position: absolute;
    inset: 0;
    z-index: 7;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
.sr-machine-workzone {
    position: absolute;
    z-index: 8;
    left: 64.2%;
    top: 66%;
    width: 1px;
    height: 1px;
    pointer-events: none;
}
.sr-machine-contact {
    position: absolute;
    left: 0;
    top: 0;
    width: 68px;
    height: 18px;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    background: radial-gradient(ellipse, rgba(255, 238, 190, .95) 0%, rgba(94, 234, 212, .5) 22%, rgba(20, 184, 166, .08) 56%, transparent 74%);
    box-shadow: 0 0 10px rgba(255, 220, 150, .5), 0 0 25px rgba(45, 212, 191, .48), 0 0 54px rgba(20, 184, 166, .26);
    animation: sr-machine-contact-pulse .17s ease-in-out infinite alternate;
}
.sr-machine-contact::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 5px;
    width: 3px;
    height: 21px;
    border-radius: 2px;
    background: linear-gradient(90deg, #64748b, #f8fafc 48%, #475569);
    box-shadow: 0 0 7px rgba(226, 232, 240, .65);
    transform: translateX(-50%);
    transform-origin: bottom;
    animation: sr-machine-spindle .11s linear infinite alternate;
}
.sr-machine-coolant {
    position: absolute;
    top: -16px;
    width: 58px;
    height: 54px;
    border-radius: 50%;
    opacity: .56;
    filter: drop-shadow(0 0 5px rgba(207, 250, 254, .42));
}
.sr-machine-coolant::before,
.sr-machine-coolant::after {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: inherit;
    border: 1px solid transparent;
    animation: sr-coolant-flow .7s linear infinite;
}
.sr-machine-coolant-left { right: 5px; transform: rotate(31deg); }
.sr-machine-coolant-right { left: 5px; transform: rotate(-31deg) scaleX(-1); }
.sr-machine-coolant::before { border-right-color: rgba(207, 250, 254, .82); }
.sr-machine-coolant::after { inset: 5px 7px; border-right-color: rgba(153, 246, 228, .52); animation-delay: -.32s; }
.sr-machine-mist {
    position: absolute;
    left: 0;
    top: 0;
    width: 18px;
    height: 9px;
    border-radius: 50%;
    background: rgba(219, 250, 255, .22);
    filter: blur(5px);
    animation: sr-machine-mist-rise 1.65s ease-out infinite;
}
.sr-machine-mist-two { animation-delay: -.55s; }
.sr-machine-mist-three { animation-delay: -1.1s; }
.sr-machine-label {
    position: absolute;
    left: 78px;
    bottom: 78px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 11px;
    border: 1px solid rgba(153, 246, 228, .22);
    border-radius: 3px;
    color: rgba(236, 254, 255, .82);
    background: rgba(5, 14, 29, .44);
    backdrop-filter: blur(8px);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .18em;
    white-space: nowrap;
}
.sr-machine-label::after {
    content: '';
    position: absolute;
    right: 100%;
    bottom: -35px;
    width: 92px;
    height: 55px;
    border-left: 1px solid rgba(153, 246, 228, .3);
    border-bottom: 1px solid rgba(153, 246, 228, .3);
    transform: skewX(-48deg);
    transform-origin: right bottom;
}
.sr-machine-label i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #5eead4;
    box-shadow: 0 0 10px #2dd4bf;
    animation: sr-machine-status 1.1s ease-in-out infinite alternate;
}

/* Inner-page machining window: a separate, photo-led motion system. */
.sr-inner-machine-card {
    position: relative;
    min-height: 260px;
    overflow: hidden;
    isolation: isolate;
    background: #071526 !important;
    border: 1px solid rgba(153, 246, 228, .16);
    box-shadow: 0 28px 70px -28px rgba(3, 10, 20, .72) !important;
}
.sr-inner-machine-card::before {
    content: '';
    position: absolute;
    z-index: 2;
    inset: 0;
    background: linear-gradient(90deg, #071526 0%, rgba(7, 21, 38, .97) 42%, rgba(7, 21, 38, .58) 66%, rgba(7, 21, 38, .18) 100%);
    pointer-events: none;
}
.sr-inner-machine-card::after {
    content: '';
    position: absolute;
    z-index: 3;
    left: 0;
    top: 0;
    width: 110px;
    height: 3px;
    background: linear-gradient(90deg, #2dd4bf, transparent);
    box-shadow: 0 0 18px rgba(45, 212, 191, .65);
}
.sr-inner-machine-scene {
    position: absolute;
    z-index: 1;
    inset: 0 0 0 43%;
    overflow: hidden;
    background: #0b172a;
}
.sr-inner-machine-scene > img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 42% 55%;
    filter: saturate(.62) contrast(1.08) brightness(.72);
    transform: scale(1.035);
}
.sr-inner-machine-scene::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(3, 10, 20, .58), transparent 56%), radial-gradient(circle at 22% 62%, rgba(45, 212, 191, .11), transparent 22%);
}
.sr-inner-machine-table {
    position: absolute;
    z-index: 3;
    left: 0;
    top: 57%;
    width: 62%;
    height: 26%;
    opacity: .32;
    background: repeating-linear-gradient(90deg, transparent 0 18px, rgba(207, 250, 254, .28) 19px 20px, transparent 21px 38px);
    clip-path: polygon(0 12%, 100% 0, 91% 100%, 0 90%);
    animation: sr-inner-table-feed 4.8s cubic-bezier(.45, 0, .55, 1) infinite alternate;
}
.sr-inner-machine-tool {
    position: absolute;
    z-index: 5;
    left: 21%;
    top: 42%;
    width: 10px;
    height: 65px;
    border-radius: 2px 2px 5px 5px;
    background: linear-gradient(90deg, #334155, #e2e8f0 46%, #475569 75%, #1e293b);
    box-shadow: 0 0 12px rgba(226, 232, 240, .28);
    animation: sr-inner-tool-cycle 3.8s cubic-bezier(.65, 0, .35, 1) infinite;
}
.sr-inner-machine-tool::before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -4px;
    width: 22px;
    height: 9px;
    border-radius: 50%;
    background: radial-gradient(ellipse, rgba(253, 230, 138, .9), rgba(45, 212, 191, .24) 40%, transparent 72%);
    box-shadow: 0 0 17px rgba(45, 212, 191, .48);
    transform: translateX(-50%);
    animation: sr-inner-tool-contact .19s ease-in-out infinite alternate;
}
.sr-inner-machine-tool i {
    position: absolute;
    left: 50%;
    top: -7px;
    width: 26px;
    height: 10px;
    border-radius: 2px;
    border: 1px solid rgba(226, 232, 240, .38);
    transform: translateX(-50%);
}
.sr-inner-machine-scan {
    position: absolute;
    z-index: 4;
    top: 12%;
    bottom: 13%;
    width: 1px;
    background: linear-gradient(transparent, rgba(94, 234, 212, .82) 25%, rgba(94, 234, 212, .82) 75%, transparent);
    box-shadow: 0 0 14px rgba(45, 212, 191, .72);
    animation: sr-inner-measure-scan 5.5s ease-in-out infinite;
}
.sr-inner-machine-readout {
    position: absolute;
    z-index: 6;
    right: 22px;
    bottom: 18px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 10px;
    border: 1px solid rgba(153, 246, 228, .2);
    border-radius: 3px;
    color: rgba(236, 254, 255, .78);
    background: rgba(3, 10, 20, .5);
    backdrop-filter: blur(7px);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .16em;
}
.sr-inner-machine-readout i {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #5eead4;
    box-shadow: 0 0 10px #2dd4bf;
    animation: sr-inner-running-light 1s steps(2, end) infinite;
}
.sr-inner-machine-copy {
    position: relative;
    z-index: 20;
    max-width: 55%;
    padding-right: 28px;
}
.sr-hero-stage {
    width: 100%;
    padding-top: clamp(96px, 12vh, 150px);
    padding-bottom: clamp(150px, 18vh, 190px);
}
.sr-hero-copy {
    position: relative;
    max-width: min(830px, 66vw);
}
.sr-hero-copy::before {
    content: '';
    position: absolute;
    top: 47px;
    left: -34px;
    width: 1px;
    height: calc(100% - 52px);
    background: linear-gradient(var(--sr-teal-bright), rgba(103, 232, 249, .08));
}
.sr-hero-kicker {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 25px;
    color: #a7f3d0;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .24em;
    text-transform: uppercase;
}
.sr-hero-kicker span { width: 48px; height: 2px; background: var(--sr-teal-bright); box-shadow: 0 0 16px rgba(20, 184, 166, .75); }
.sr-hero-title {
    margin: 0;
    font-size: clamp(58px, 5.25vw, 92px);
    line-height: 1.04;
    letter-spacing: -.045em;
    text-wrap: balance;
    text-shadow: 0 12px 38px rgba(0, 0, 0, .38);
}
.sr-hero-title > span {
    display: inline-block;
    margin-top: .14em;
    color: #5eead4;
    background: linear-gradient(95deg, #5eead4 0%, #a5f3fc 55%, #f8fafc 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    filter: drop-shadow(0 8px 24px rgba(20, 184, 166, .18));
}
.sr-hero-description {
    max-width: 730px;
    margin: 36px 0 40px;
    padding: 3px 0 3px 20px;
    border-left: 3px solid var(--sr-teal-bright);
    color: rgba(241, 245, 249, .82);
    font-size: clamp(16px, 1.2vw, 19px);
    line-height: 1.9;
    text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}
.sr-hero-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 174px;
    min-height: 58px;
    padding: 0 28px;
    border: 1px solid transparent;
    border-radius: 4px;
    isolation: isolate;
    overflow: hidden;
    font-size: 16px;
    letter-spacing: .02em;
    box-shadow: 0 16px 36px rgba(3, 10, 20, .28);
}
.sr-hero-btn-primary { color: #fff; background: linear-gradient(135deg, #0f766e, #0d9488); }
.sr-hero-btn-primary > span { margin-left: 24px; font-size: 19px; transition: transform .3s ease; }
.sr-hero-btn-primary:hover { color: #fff; transform: translateY(-4px); box-shadow: 0 18px 38px rgba(13, 148, 136, .28); }
.sr-hero-btn-primary:hover > span { transform: translate(3px, -3px); }
.sr-hero-btn-secondary {
    color: #fff;
    border-color: rgba(255, 255, 255, .32);
    background: rgba(8, 22, 38, .32);
    backdrop-filter: blur(10px);
}
.sr-hero-btn-secondary:hover { color: #fff; border-color: rgba(94, 234, 212, .8); background: rgba(15, 118, 110, .22); transform: translateY(-4px); }
.sr-hero-btn::before {
    content: '';
    position: absolute;
    inset: 1px;
    border-radius: inherit;
    z-index: -1;
    background: linear-gradient(120deg, transparent 25%, rgba(255, 255, 255, .24), transparent 75%);
    transform: translateX(-130%);
    transition: transform .8s ease;
}
.sr-hero-btn:hover::before { transform: translateX(130%); }
.sr-hero-grid {
    z-index: 4;
    opacity: .2;
    background-image: linear-gradient(rgba(103, 232, 249, .16) 1px, transparent 1px), linear-gradient(90deg, rgba(103, 232, 249, .16) 1px, transparent 1px);
    background-size: 86px 86px;
    -webkit-mask-image: linear-gradient(to right, transparent, #000 25%, #000 75%, transparent);
    mask-image: linear-gradient(to right, transparent, #000 25%, #000 75%, transparent);
    animation: sr-grid-drift 28s linear infinite;
}
.sr-hero-scanline {
    z-index: 5;
    height: 1px;
    background: linear-gradient(90deg, transparent 12%, rgba(103, 232, 249, .8), transparent 88%);
    box-shadow: 0 0 22px rgba(103, 232, 249, .65);
    animation: sr-scanline 7s ease-in-out infinite;
}
.sr-hero-orb {
    position: absolute;
    z-index: 6;
    width: 24rem;
    height: 24rem;
    border-radius: 999px;
    pointer-events: none;
    filter: blur(5px);
    opacity: .22;
    background: radial-gradient(circle, rgba(20, 184, 166, .78), rgba(20, 184, 166, 0) 68%);
    animation: sr-orb-float 10s ease-in-out infinite alternate;
}
.sr-hero-orb-one { right: -9rem; top: 7rem; }
.sr-hero-orb-two { left: -14rem; bottom: -12rem; width: 30rem; height: 30rem; animation-delay: -3s; background: radial-gradient(circle, rgba(245, 158, 11, .4), rgba(245, 158, 11, 0) 68%); }
.sr-hero-rail {
    position: absolute;
    z-index: 20;
    right: clamp(30px, 3.1vw, 60px);
    top: 50%;
    display: flex;
    align-items: center;
    gap: 20px;
    color: rgba(255, 255, 255, .54);
    transform: translate(45%, -50%) rotate(90deg);
    transform-origin: center;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .24em;
    white-space: nowrap;
}
.sr-hero-rail i { display: block; width: 76px; height: 1px; background: rgba(255, 255, 255, .34); }
.sr-hero-rail strong { color: #5eead4; font-size: 13px; }
.sr-hero-scroll {
    position: absolute;
    z-index: 20;
    left: 50%;
    bottom: 92px;
    align-items: center;
    gap: 15px;
    color: rgba(255, 255, 255, .58);
    transform: translateX(-50%);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .25em;
}
.sr-hero-scroll:hover { color: #fff; }
.sr-hero-scroll i {
    position: relative;
    display: block;
    width: 1px;
    height: 46px;
    overflow: hidden;
    background: rgba(255, 255, 255, .22);
}
.sr-hero-scroll i::after {
    content: '';
    position: absolute;
    inset: 0;
    background: #5eead4;
    transform: translateY(-100%);
    animation: sr-scroll-drop 2.2s ease-in-out infinite;
}
@keyframes sr-hero-image-drift { from { transform: scale(1.025); } to { transform: scale(1.09) translate3d(-.7%, -.3%, 0); } }
@keyframes sr-hero-breathe { from { opacity: .55; } to { opacity: 1; } }
@keyframes sr-grid-drift { from { transform: translate3d(0, 0, 0); } to { transform: translate3d(86px, 86px, 0); } }
@keyframes sr-scanline { 0%, 100% { transform: translateY(0); opacity: 0; } 24%, 76% { opacity: .75; } 50% { transform: translateY(-820px); } }
@keyframes sr-orb-float { from { transform: translate3d(0, 0, 0) scale(1); } to { transform: translate3d(-26px, 20px, 0) scale(1.12); } }
@keyframes sr-scroll-drop { 0% { transform: translateY(-100%); } 50%, 100% { transform: translateY(100%); } }
@keyframes sr-machine-contact-pulse { from { opacity: .68; transform: translate(-50%, -50%) scale(.9); } to { opacity: 1; transform: translate(-50%, -50%) scale(1.1); } }
@keyframes sr-machine-spindle { from { transform: translateX(-50%) scaleX(.72); } to { transform: translateX(-50%) scaleX(1.18); } }
@keyframes sr-coolant-flow { 0% { opacity: 0; clip-path: inset(0 0 100% 0); } 35% { opacity: 1; } 100% { opacity: 0; clip-path: inset(0 0 0 0); } }
@keyframes sr-machine-mist-rise { 0% { opacity: 0; transform: translate(-50%, 0) scale(.7); } 25% { opacity: .7; } 100% { opacity: 0; transform: translate(calc(-50% + 10px), -45px) scale(3.2); } }
@keyframes sr-machine-status { from { opacity: .45; } to { opacity: 1; } }
@keyframes sr-inner-table-feed { from { transform: translateX(-7px); } to { transform: translateX(12px); } }
@keyframes sr-inner-tool-cycle { 0%, 18%, 100% { transform: translateY(-9px); } 34%, 76% { transform: translateY(7px); } }
@keyframes sr-inner-tool-contact { from { opacity: .48; transform: translateX(-50%) scale(.82); } to { opacity: .95; transform: translateX(-50%) scale(1.12); } }
@keyframes sr-inner-measure-scan { 0%, 8% { left: 9%; opacity: 0; } 18% { opacity: .8; } 72% { opacity: .7; } 84%, 100% { left: 76%; opacity: 0; } }
@keyframes sr-inner-running-light { 0%, 45% { opacity: .38; } 50%, 100% { opacity: 1; } }

@media (max-width: 1023px) {
    .sr-hero { min-height: 820px; }
    .sr-hero-copy { max-width: 76vw; }
    .sr-hero-title { font-size: clamp(52px, 7.2vw, 74px); }
    .sr-hero-rail { display: none; }
}

@media (max-width: 767px) {
    .sr-hero { min-height: 760px; }
    .sr-hero::before { inset: 12px; }
    .sr-hero::after { top: 12px; left: 12px; width: 68px; height: 68px; border-width: 2px; }
    .sr-hero-background::after { background: linear-gradient(90deg, rgba(5, 14, 29, .9), rgba(5, 14, 29, .56)); }
    .sr-hero-image { object-position: 63% center; }
    .sr-machine-workzone { top: 65.5%; }
    .sr-machine-label { display: none; }
    .sr-machine-contact { width: 50px; }
    .sr-machine-coolant { transform: scale(.78) rotate(31deg); }
    .sr-machine-coolant-right { transform: scale(.78) rotate(-31deg) scaleX(-1); }
    .sr-hero-stage { padding: 105px 28px 130px; }
    .sr-hero-copy { max-width: none; }
    .sr-hero-copy::before { display: none; }
    .sr-hero-kicker { margin-bottom: 21px; font-size: 10px; letter-spacing: .16em; }
    .sr-hero-kicker span { width: 30px; }
    .sr-hero-title { font-size: clamp(43px, 12vw, 58px); line-height: 1.08; letter-spacing: -.045em; }
    .sr-hero-description { margin: 28px 0 32px; padding-left: 15px; font-size: 15px; line-height: 1.75; }
    .sr-hero-btn { min-width: 0; min-height: 54px; padding: 0 22px; font-size: 15px; }
    .sr-hero-btn-primary > span { margin-left: 17px; }
    .sr-hero-grid { opacity: .11; background-size: 60px 60px; }
    .sr-hero-orb-one { right: -16rem; }
    .sr-inner-machine-card { min-height: 390px; justify-content: flex-end; }
    .sr-inner-machine-card::before { background: linear-gradient(to bottom, rgba(7, 21, 38, .42), rgba(7, 21, 38, .94) 54%, #071526 76%); }
    .sr-inner-machine-scene { inset: 0 0 38% 0; }
    .sr-inner-machine-scene > img { object-position: 18% 55%; }
    .sr-inner-machine-copy { max-width: none; padding: 150px 0 0; }
    .sr-inner-machine-readout { right: 14px; bottom: 12px; }
}

.sr-page-hero::before { content: ''; position: absolute; width: 28rem; height: 28rem; top: -18rem; right: -7rem; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; box-shadow: 0 0 0 56px rgba(255,255,255,.04), 0 0 0 112px rgba(255,255,255,.025); animation: sr-hero-ring 12s ease-in-out infinite alternate; }
.sr-page-hero-image { animation: sr-page-image-drift 18s ease-in-out infinite alternate; }
.sr-eyebrow i { width: 1.7rem; height: 1px; display: inline-block; background: currentColor; }
.sr-section-orb { position: absolute; width: 28rem; height: 28rem; border-radius: 50%; pointer-events: none; filter: blur(4px); opacity: .55; background: radial-gradient(circle, rgba(20,184,166,.15), transparent 68%); }
.sr-section-orb-left { left: -16rem; bottom: -15rem; }
.sr-section-orb-right { right: -15rem; top: -14rem; }
.sr-about-stat { min-height: 88px; padding: 1rem .45rem; text-align: center; background: #f0fdfa; border: 1px solid #ccfbf1; border-radius: 1rem; }
.sr-about-stat strong { display: block; color: var(--sr-navy); font-size: 1.35rem; font-weight: 800; line-height: 1.2; }
.sr-about-stat span { display: block; margin-top: .4rem; color: var(--sr-muted); font-size: .7rem; font-weight: 700; letter-spacing: .04em; }
.sr-about-photo-stack { padding: 0 1.5rem 2rem 0; }
.sr-about-floating-photo { position: absolute; z-index: 11; width: 44%; height: 40%; min-height: 140px; left: -1.5rem; bottom: 0; background: var(--sr-navy); animation: sr-photo-float 6s ease-in-out infinite alternate; }
@keyframes sr-page-image-drift { from { transform: scale(1.02); } to { transform: scale(1.1) translateX(-1%); } }
@keyframes sr-hero-ring { from { transform: translate3d(0,0,0) scale(.96); } to { transform: translate3d(-16px,18px,0) scale(1.04); } }
@keyframes sr-photo-float { from { transform: translateY(0); } to { transform: translateY(-12px); } }

@media (max-width: 767px) {
    .sr-page-hero::before { width: 18rem; height: 18rem; right: -9rem; top: -9rem; }
    .sr-about-photo-stack { margin-top: 1rem; padding-right: .8rem; }
    .sr-about-floating-photo { left: -.8rem; }
}
