/* ==========================================================================
   Manufacturing & Industrial Companies Industry Page (mfg-page)
   Same brand palette/type as the rest of the site
   (navy / gold / white, from variables.css) — its
   own layout language lives here, isolated from
   css/industry-page.css and css/home-service-page.css
   so no other page is touched.
   ========================================================================== */

/* ==========================================
   HERO — full-bleed CNC machining photo (source
   image pre-cropped 20% off the left edge so the
   machine sits left, leaving the bright window
   wall clear on the right for copy), dark scrim
   on the right this time, plus an animated spark
   shower positioned over the tool contact point
   in the photo so the sparks in the image look
   like they keep flying.
========================================== */

.mfg-hero{

    position:relative;

    min-height:94vh;

    display:flex;

    align-items:flex-end;

    overflow:hidden;

    padding-top:120px;

}
.mfg-hero__media{

    position:absolute;

    inset:0;

    z-index:0;

}
.mfg-hero__media img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:24.1% 60.3%;

    transform:scale(1.04);

    filter:saturate(.92) sepia(.06);

}

/* -- spark shower: anchored over the tool
   contact point in the (cropped) photo —
   percentages must match the object-position
   above exactly, that's what keeps this pinned
   to the real sparks at any viewport size -- */

.mfg-hero__sparks{

    position:absolute;

    left:24.1%;

    top:60.3%;

    width:0;

    height:0;

    z-index:1;

}
.mfg-hero__spark-glow{

    position:absolute;

    left:0;

    top:0;

    width:80px;

    height:80px;

    transform:translate(-50%,-50%);

    border-radius:50%;

    background:radial-gradient(closest-side, rgba(255,196,110,.9), rgba(255,140,50,.35) 55%, rgba(255,140,50,0) 75%);

    filter:blur(4px);

    animation:mfgSparkPulse 1.4s ease-in-out infinite;

}
.mfg-hero__spark{

    position:absolute;

    left:0;

    top:0;

    width:6px;

    height:6px;

    border-radius:50%;

    background:#FFDCA0;

    box-shadow:0 0 16px 3px rgba(255,180,90,.9);

    opacity:0;

    animation-name:mfgSparkFly;

    animation-timing-function:ease-out;

    animation-iteration-count:infinite;

}
.mfg-hero__spark:nth-child(2){ --tx:-60px; --ty:-43px; animation-duration:.85s; animation-delay:0s; }
.mfg-hero__spark:nth-child(3){ --tx:-82px; --ty:-14px; animation-duration:.95s; animation-delay:.12s; }
.mfg-hero__spark:nth-child(4){ --tx:-51px; --ty:31px; animation-duration:.75s; animation-delay:.05s; }
.mfg-hero__spark:nth-child(5){ --tx:-26px; --ty:60px; animation-duration:1.05s; animation-delay:.3s; }
.mfg-hero__spark:nth-child(6){ --tx:-71px; --ty:37px; animation-duration:.8s; animation-delay:.22s; }
.mfg-hero__spark:nth-child(7){ --tx:-34px; --ty:-65px; animation-duration:.9s; animation-delay:.4s; }
.mfg-hero__spark:nth-child(8){ --tx:-94px; --ty:17px; animation-duration:.7s; animation-delay:.55s; }
.mfg-hero__spark:nth-child(9){ --tx:-17px; --ty:71px; animation-duration:1s; animation-delay:.15s; }
.mfg-hero__spark:nth-child(10){ --tx:-48px; --ty:-26px; animation-duration:.85s; animation-delay:.62s; }
.mfg-hero__spark:nth-child(11){ --tx:-65px; --ty:51px; animation-duration:.78s; animation-delay:.35s; }
.mfg-hero__spark:nth-child(12){ --tx:14px; --ty:65px; animation-duration:.65s; animation-delay:.48s; }
.mfg-hero__spark:nth-child(13){ --tx:-77px; --ty:-51px; animation-duration:.92s; animation-delay:.68s; }
@keyframes mfgSparkFly{

    0%{ opacity:0; transform:translate(0,0) scale(1); }

    8%{ opacity:1; }

    55%{ opacity:1; transform:translate(calc(var(--tx) * .7), calc(var(--ty) * .55 - 4px)) scale(.85); }

    100%{ opacity:0; transform:translate(var(--tx), calc(var(--ty) + 22px)) scale(.4); }

}
@keyframes mfgSparkPulse{

    0%, 100%{ opacity:.7; transform:translate(-50%,-50%) scale(1); }

    50%{ opacity:1; transform:translate(-50%,-50%) scale(1.25); }

}

.mfg-hero__scrim{

    position:absolute;

    inset:0;

    z-index:1;

    background:

        radial-gradient(ellipse 90% 70% at 50% 100%, rgba(8,21,45,.85) 0%, rgba(8,21,45,.2) 55%, rgba(8,21,45,0) 75%),

        linear-gradient(0deg, rgba(8,21,45,.9) 0%, rgba(8,21,45,.55) 34%, rgba(8,21,45,.1) 64%, rgba(8,21,45,.2) 100%),

        linear-gradient(260deg, rgba(8,21,45,.62) 0%, rgba(8,21,45,.16) 48%, rgba(8,21,45,0) 68%);

}
.mfg-hero__inner{

    position:relative;

    z-index:2;

    padding-bottom:300px;

}
.mfg-hero__copy{

    max-width:830px;

    margin-left:auto;

}
.mfg-hero__tag{

    display:block;

    color:var(--color-gold);

    letter-spacing:2.5px;

    font-size:.8rem;

    font-weight:700;

    text-transform:uppercase;

    margin-bottom:22px;

}
.mfg-hero__copy h1{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.75rem, 2.75vw, 2.85rem);

    line-height:1.3;

    letter-spacing:-.5px;

    color:var(--color-white);

    text-shadow:0 6px 26px rgba(0,0,0,.5);

    margin-bottom:26px;

    white-space:nowrap;

}
.mfg-hero__copy h1 em{

    font-style:italic;

    color:var(--color-gold);

}
.mfg-hero__quote{

    position:relative;

    padding-left:20px;

    border-left:2px solid var(--color-gold);

    font-size:1.18rem;

    line-height:1.75;

    color:var(--color-text);

    text-shadow:0 2px 14px rgba(0,0,0,.45);

    max-width:580px;

    margin-bottom:36px;

}
.mfg-hero .hero__buttons{

    justify-content:flex-start;

}
@media (max-width:900px){

    .mfg-hero{ min-height:auto; padding:130px 0 60px; align-items:flex-start; }

    .mfg-hero__inner{ padding-bottom:20px; }

    .mfg-hero__sparks{ display:none; }

    .mfg-hero__copy{ max-width:none; margin-left:0; }

    .mfg-hero__copy h1{ white-space:normal; }

}
@media (max-width:640px){

    .mfg-hero{ padding:70px 0 50px; }

}
@media (prefers-reduced-motion: reduce){

    .mfg-hero__spark,
    .mfg-hero__spark-glow{ animation:none; opacity:0; }

}

/* ==========================================
   SECTION 2 — YOUR FACTORY CAN BE IMPRESSIVE
   (white bg, photo left / copy right — the
   photo frame carries a slight tilt + lift,
   matching the mockup's tilted-card treatment)
========================================== */

.mfg-invest{

    background:var(--color-white);

    padding:var(--space-3xl) 0;

}
.mfg-invest__grid{

    display:grid;

    grid-template-columns:.95fr 1.05fr;

    gap:90px;

    align-items:center;

}

/* -- tilted photo card -- */

.mfg-invest__media{

    perspective:1200px;

    opacity:0;

    transform:translateY(24px);

    transition:opacity .7s ease, transform .7s ease;

}
.mfg-invest__media.is-visible{

    opacity:1;

    transform:translateY(0);

}
.mfg-invest__copy{

    opacity:0;

    transform:translateY(24px);

    transition:opacity .7s ease .12s, transform .7s ease .12s;

}
.mfg-invest__copy.is-visible{

    opacity:1;

    transform:translateY(0);

}
.mfg-invest__frame{

    position:relative;

    overflow:hidden;

    border-radius:var(--radius-lg);

    aspect-ratio:4/3;

    transform:rotate(-2deg);

    box-shadow:

        0 30px 60px rgba(8,21,45,.22),

        0 10px 24px rgba(8,21,45,.14);

    transition:transform .5s ease, box-shadow .5s ease;

}
.mfg-invest__frame:hover{

    transform:rotate(0deg) scale(1.015);

    box-shadow:

        0 40px 80px rgba(8,21,45,.26),

        0 14px 30px rgba(8,21,45,.16);

}
.mfg-invest__frame img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:center 30%;

}

/* -- copy -- */

.mfg-invest__copy h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.9rem, 3.1vw, 2.5rem);

    line-height:1.32;

    letter-spacing:-.5px;

    color:var(--color-background);

}
.mfg-invest__copy h2 em{

    font-style:italic;

    color:var(--color-gold);

}
.mfg-invest__bar{

    display:block;

    width:64px;

    height:4px;

    border-radius:var(--radius-pill);

    background:var(--color-gold);

    margin:26px 0 30px;

}
.mfg-invest__lead{

    font-weight:700;

    font-size:1.08rem;

    color:var(--color-background);

    margin-bottom:22px;

}
.mfg-invest__list{

    display:flex;

    flex-direction:column;

    gap:18px;

    margin-bottom:30px;

}
.mfg-invest__list li{

    display:flex;

    align-items:flex-start;

    gap:14px;

    font-size:1.02rem;

    line-height:1.6;

    color:rgba(8,21,45,.68);

}
.mfg-invest__list li svg{

    flex:none;

    width:22px;

    height:22px;

    margin-top:1px;

    color:var(--color-gold);

}
.mfg-invest__closing{

    font-weight:700;

    font-size:1.08rem;

    line-height:1.65;

    color:var(--color-background);

}
@media (max-width:900px){

    .mfg-invest__grid{ grid-template-columns:1fr; gap:44px; }

    .mfg-invest__frame{ transform:rotate(0deg); }

}
@media (prefers-reduced-motion: reduce){

    .mfg-invest__media,
    .mfg-invest__copy{ transition:none; opacity:1; transform:none; }

    .mfg-invest__frame{ transition:none; }

}

/* ==========================================
   SECTION 3 — THEY'RE SEARCHING FOR WHAT YOU
   CAN DO
   (navy bg, static cards — no scroll-reveal or
   entrance motion per request, hover is just
   the standard gold border/tint used elsewhere
   on the site, nothing fancier)
========================================== */

.mfg-capability{

    background:var(--color-background-alt);

    padding:var(--space-3xl) 0;

}
.mfg-capability__head{

    max-width:700px;

    margin:0 auto 56px;

    text-align:center;

}
.mfg-capability__head h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(2rem, 3.4vw, 2.6rem);

    line-height:1.32;

    letter-spacing:-.5px;

    color:var(--color-white);

    margin-bottom:16px;

}
.mfg-capability__head h2 em{

    font-style:italic;

    color:var(--color-gold);

}
.mfg-capability__head p{

    font-size:1.1rem;

    line-height:1.8;

    color:var(--color-text);

}
.mfg-capability__grid{

    display:grid;

    grid-template-columns:repeat(3, 1fr);

    gap:28px;

}
.mfg-capability__card{

    background:rgba(255,255,255,.05);

    border:1px solid rgba(255,255,255,.12);

    border-radius:var(--radius-lg);

    padding:32px 28px;

}
.mfg-capability__card:hover{

    border-color:rgba(216,177,75,.4);

    background:rgba(216,177,75,.06);

}
.mfg-capability__icon{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    width:44px;

    height:44px;

    border-radius:var(--radius-sm);

    background:rgba(216,177,75,.14);

    color:var(--color-gold);

    margin-bottom:20px;

}
.mfg-capability__icon svg{

    width:22px;

    height:22px;

}
.mfg-capability__card h3{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:1.22rem;

    color:var(--color-white);

    margin-bottom:16px;

}
.mfg-capability__query{

    font-family:monospace;

    font-size:.88rem;

    color:var(--color-text);

    background:rgba(255,255,255,.06);

    border:1px solid rgba(255,255,255,.1);

    border-radius:var(--radius-sm);

    padding:10px 14px;

    margin-bottom:18px;

}
.mfg-capability__desc{

    font-size:.95rem;

    line-height:1.7;

    color:var(--color-text);

}
@media (max-width:900px){

    .mfg-capability__grid{ grid-template-columns:1fr; gap:22px; }

}

/* ==========================================
   SECTION 4 — YOUR WEBSITE SHOULD EXPLAIN YOUR
   FACTORY WHEN YOU'RE NOT THERE
   (white bg: a "meeting vs. website" comparison
   pair, then a 9-item numbered grid of what the
   site needs to communicate)
========================================== */

.mfg-explain{

    background:var(--color-white);

    padding:var(--space-3xl) 0;

}
.mfg-explain__head{

    max-width:960px;

    margin:0 auto 56px;

    text-align:center;

}
.mfg-explain__head p{

    max-width:none;

    white-space:nowrap;

}
.mfg-explain__head h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.6rem, 2.5vw, 2.15rem);

    line-height:1.38;

    letter-spacing:-.5px;

    color:var(--color-background);

    margin-bottom:16px;

    white-space:nowrap;

}
.mfg-explain__head h2 em{

    font-style:italic;

    color:var(--color-gold);

}
.mfg-explain__head p{

    font-size:1.1rem;

    line-height:1.8;

    color:rgba(8,21,45,.62);

}

/* -- meeting vs. website comparison -- */

.mfg-explain__compare{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:28px;

    margin-bottom:76px;

    opacity:0;

    transform:translateY(20px);

    transition:opacity .65s ease, transform .65s ease;

}
.mfg-explain__compare.is-visible{

    opacity:1;

    transform:translateY(0);

}
.mfg-explain__panel{

    background:var(--color-white);

    border:1px solid rgba(8,21,45,.12);

    border-radius:var(--radius-lg);

    padding:34px 32px;

}
.mfg-explain__panel--dark{

    background:var(--color-background);

    border-color:rgba(216,177,75,.45);

    box-shadow:0 0 46px rgba(216,177,75,.22), 0 30px 60px rgba(8,21,45,.2);

}
.mfg-explain__panel-label{

    display:block;

    color:var(--color-gold);

    letter-spacing:2px;

    font-size:.78rem;

    font-weight:700;

    text-transform:uppercase;

    margin-bottom:20px;

}
.mfg-explain__panel-quote{

    font-style:italic;

    font-size:1.08rem;

    line-height:1.65;

    color:rgba(8,21,45,.72);

    margin-bottom:22px;

}
.mfg-explain__panel--dark .mfg-explain__panel-quote{

    font-style:normal;

    font-weight:700;

    color:var(--color-white);

}
.mfg-explain__panel-attr{

    font-size:.88rem;

    color:rgba(8,21,45,.5);

}
.mfg-explain__panel--dark .mfg-explain__panel-attr{

    color:var(--color-text);

}

/* -- 9-item numbered grid -- */

.mfg-explain__grid{

    display:grid;

    grid-template-columns:repeat(3, 1fr);

    gap:0 48px;

    margin-bottom:64px;

}
.mfg-explain__item{

    display:flex;

    gap:16px;

    padding:22px 0;

    border-top:1px solid rgba(8,21,45,.1);

    opacity:0;

    transform:translateY(16px);

    transition:opacity .55s ease, transform .55s ease;
}
.mfg-explain__item.is-visible{

    opacity:1;

    transform:translateY(0);

}
.mfg-explain__num{

    flex:none;

    font-family:var(--font-heading);

    font-weight:600;

    font-size:1.1rem;

    color:var(--color-gold);

    padding-top:2px;

}
.mfg-explain__item h3{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:1.12rem;

    color:var(--color-background);

    margin-bottom:6px;

}
.mfg-explain__item p{

    font-size:.92rem;

    line-height:1.6;

    color:rgba(8,21,45,.6);

}
.mfg-explain__closing{

    max-width:720px;

    margin:0 auto;

    border-left:3px solid var(--color-gold);

    padding-left:28px;

    font-family:var(--font-heading);

    font-style:italic;

    font-size:1.4rem;

    line-height:1.55;

    color:var(--color-background);

}
@media (max-width:900px){

    .mfg-explain__compare{ grid-template-columns:1fr; gap:20px; }

    .mfg-explain__grid{ grid-template-columns:1fr; gap:0; }

    .mfg-explain__head p{ white-space:normal; }

    .mfg-explain__head h2{ white-space:normal; }

}
@media (prefers-reduced-motion: reduce){

    .mfg-explain__compare,
    .mfg-explain__item{ transition:none; opacity:1; transform:none; }

}

/* ==========================================
   SECTION 5 — THE NEXT PURCHASING MANAGER MAY
   ASK AI
   (navy bg, copy + split photo, with a floating
   glass card overlapping the photo's bottom edge
   that auto-swipes through 6 example ways buyers
   ask AI to find a supplier)
========================================== */

.mfg-ai{

    background:var(--color-background-alt);

    padding:var(--space-3xl) 0;

}
.mfg-ai__grid{

    display:grid;

    grid-template-columns:.85fr 1.15fr;

    gap:70px;

    align-items:center;

}
.mfg-ai__copy h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.7rem, 2.25vw, 2.1rem);

    line-height:1.35;

    letter-spacing:-.5px;

    white-space:nowrap;

    color:var(--color-white);

    margin-bottom:22px;

}
.mfg-ai__copy h2 em{

    font-style:italic;

    color:var(--color-gold);

}
.mfg-ai__copy p{

    font-size:1.02rem;

    line-height:1.8;

    color:var(--color-text);

    margin-bottom:18px;

}
.mfg-ai__tip{

    background:linear-gradient(135deg, rgba(216,177,75,.12), rgba(216,177,75,.03));

    border:1px solid rgba(216,177,75,.3);

    border-left:3px solid var(--color-gold);

    border-radius:var(--radius-md);

    padding:20px 24px;

    margin-top:26px;

}
.mfg-ai__tip p{

    margin-bottom:0;

    font-size:.98rem;

    line-height:1.7;

    color:var(--color-text);

}

/* -- media: split photo + floating rotating
   query card -- */

.mfg-ai__media{

    position:relative;

    padding-bottom:56px;

}
.mfg-ai__frame{

    position:relative;

    overflow:hidden;

    border-radius:var(--radius-lg);

    aspect-ratio:16/10;

    box-shadow:0 30px 70px rgba(0,0,0,.3);

}
.mfg-ai__frame img{

    width:100%;

    height:100%;

    object-fit:cover;

}
.mfg-ai__card{

    position:relative;

    z-index:1;

    margin:-56px 32px 0;

    background:rgba(17,32,64,.92);

    border:1px solid rgba(216,177,75,.35);

    border-radius:var(--radius-md);

    padding:22px 26px;

    backdrop-filter:blur(14px);

    -webkit-backdrop-filter:blur(14px);

    box-shadow:0 20px 46px rgba(0,0,0,.35);

}
.mfg-ai__card-label{

    display:flex;

    align-items:center;

    gap:10px;

    color:var(--color-gold);

    font-size:.76rem;

    font-weight:700;

    letter-spacing:1.6px;

    text-transform:uppercase;

    margin-bottom:12px;

}
.mfg-ai__card-label svg{

    width:16px;

    height:16px;

    flex:none;

}
.mfg-ai__card-query{

    font-size:1rem;

    font-style:italic;

    line-height:1.55;

    color:var(--color-white);

    min-height:3.1em;

    transition:opacity .4s ease, transform .4s ease;

}
.mfg-ai__card-query.is-swiping{

    opacity:0;

    transform:translateY(6px);

}
@media (max-width:900px){

    .mfg-ai__grid{ grid-template-columns:1fr; gap:44px; }

    .mfg-ai__copy h2{ white-space:normal; }

}
@media (prefers-reduced-motion: reduce){

    .mfg-ai__card-query{ transition:none; }

    .mfg-ai__card-query.is-swiping{ opacity:1; transform:none; }

}

/* ==========================================
   SECTION 6 — YOU'VE ALREADY DONE THE WORK
   (white bg, photo left / copy right — straight
   frame, no tilt, to stay visually distinct from
   the tilted card in the earlier "invest" section)
========================================== */

.mfg-evidence{

    background:var(--color-white);

    padding:var(--space-3xl) 0;

}
.mfg-evidence__grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

    opacity:0;

    transform:translateY(24px);

    transition:opacity .7s ease, transform .7s ease;

}
.mfg-evidence__grid.is-visible{

    opacity:1;

    transform:translateY(0);

}
.mfg-evidence__frame{

    position:relative;

    overflow:hidden;

    border-radius:var(--radius-lg);

    aspect-ratio:16/10;

    box-shadow:var(--shadow-card);

}
.mfg-evidence__frame img{

    width:100%;

    height:100%;

    object-fit:cover;

    object-position:55% 42%;

}
.mfg-evidence__copy h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.9rem, 3.1vw, 2.5rem);

    line-height:1.32;

    letter-spacing:-.5px;

    color:var(--color-background);

    margin-bottom:22px;

}
.mfg-evidence__copy h2 em{

    font-style:italic;

    color:var(--color-gold);

}
.mfg-evidence__copy > p{

    font-size:1.05rem;

    line-height:1.8;

    color:rgba(8,21,45,.62);

    margin-bottom:30px;

}
.mfg-evidence__list{

    display:flex;

    flex-direction:column;

    gap:20px;

}
.mfg-evidence__list li{

    display:flex;

    align-items:center;

    gap:16px;

    font-size:1.05rem;

    color:var(--color-background);

}
.mfg-evidence__check{

    flex:none;

    display:flex;

    align-items:center;

    justify-content:center;

    width:28px;

    height:28px;

    border-radius:50%;

    background:var(--color-gold);

    color:var(--color-background);

    box-shadow:0 6px 18px rgba(216,177,75,.35);

}
.mfg-evidence__check svg{

    width:15px;

    height:15px;

}
@media (max-width:900px){

    .mfg-evidence__grid{ grid-template-columns:1fr; gap:44px; }

}
@media (prefers-reduced-motion: reduce){

    .mfg-evidence__grid{ transition:none; opacity:1; transform:none; }

}

/* ==========================================
   SECTION 7 — FINAL CTA
   (navy bg, plain — no photo, soft gold glows,
   closing the page)
========================================== */

.mfg-cta{

    position:relative;

    background:var(--color-background);

    padding:var(--space-3xl) 0 var(--space-lg);

    overflow:hidden;

}
.mfg-cta__glow{

    position:absolute;

    border-radius:50%;

    filter:blur(120px);

    pointer-events:none;

    z-index:0;

}
.mfg-cta__glow--one{

    width:560px;

    height:560px;

    top:-260px;

    left:4%;

    background:radial-gradient(circle, rgba(216,177,75,.24), rgba(216,177,75,0) 70%);

}
.mfg-cta__glow--two{

    width:460px;

    height:460px;

    bottom:-220px;

    right:6%;

    background:radial-gradient(circle, rgba(216,177,75,.14), rgba(216,177,75,0) 70%);

}
.mfg-cta__card{

    position:relative;

    z-index:1;

    max-width:820px;

    margin:0 auto;

    text-align:center;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(216,177,75,.22);

    border-radius:calc(var(--radius-lg) + 6px);

    padding:66px 60px;

    backdrop-filter:blur(18px);

    -webkit-backdrop-filter:blur(18px);

    box-shadow:0 40px 90px rgba(0,0,0,.35);

    opacity:0;

    transform:translateY(24px);

    transition:opacity .7s ease, transform .7s ease;

}
.mfg-cta__card.is-visible{

    opacity:1;

    transform:translateY(0);

}
.mfg-cta__tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    color:var(--color-gold);

    letter-spacing:2.5px;

    font-size:.8rem;

    font-weight:700;

    text-transform:uppercase;

    margin-bottom:24px;

}
.mfg-cta__tag-dot{

    width:7px;

    height:7px;

    border-radius:50%;

    background:#3DDC84;

    box-shadow:0 0 0 4px rgba(61,220,132,.22);

    animation:mfgCtaPulse 2.4s ease-in-out infinite;

}
@keyframes mfgCtaPulse{

    0%, 100%{ box-shadow:0 0 0 4px rgba(61,220,132,.22); }

    50%{ box-shadow:0 0 0 8px rgba(61,220,132,.1); }

}
.mfg-cta__card h2{

    font-family:var(--font-heading);

    font-weight:600;

    font-size:clamp(1.3rem, 1.85vw, 1.7rem);

    line-height:1.4;

    letter-spacing:-.5px;

    color:var(--color-white);

    white-space:nowrap;

    margin-bottom:22px;

}
.mfg-cta__card p{

    font-size:1.1rem;

    line-height:1.8;

    color:var(--color-text);

    max-width:600px;

    margin:0 auto 40px;

}
.mfg-cta .hero__buttons{

    justify-content:center;

}
@media (max-width:900px){

    .mfg-cta__card h2{ white-space:normal; }

    .mfg-cta__card{ padding:48px 28px; }

}
@media (prefers-reduced-motion: reduce){

    .mfg-cta__card{ transition:none; opacity:1; transform:none; }

    .mfg-cta__tag-dot{ animation:none; }

}
