/* =========================================================
   HERO · GRABADO CON LÁSER
========================================================= */

:root{
    --td-orange:#f28a1a;
    --td-orange-soft:#ff9d2e;

    --td-green:#2f9b57;
    --td-green-soft:#55c47f;

    --td-black:#171717;
}


/* =========================================================
   HERO
========================================================= */

.td-engrave-hero{
    position:relative;

    width:100%;
    min-height:86vh;

    display:flex;
    align-items:center;

    overflow:hidden;

    padding:
        clamp(100px,10vw,145px)
        24px
        clamp(75px,7vw,105px);

    background:
        radial-gradient(
            circle at 77% 28%,
            rgba(242,138,26,.075),
            transparent 24%
        ),
        radial-gradient(
            circle at 73% 72%,
            rgba(47,155,87,.055),
            transparent 22%
        ),
        #fff;
}


/* =========================================================
   GRID
========================================================= */

.td-engrave-hero__grid{
    position:absolute;
    inset:0;

    opacity:.24;

    pointer-events:none;

    background-image:
        linear-gradient(
            rgba(0,0,0,.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(0,0,0,.035) 1px,
            transparent 1px
        );

    background-size:42px 42px;

    mask-image:
        linear-gradient(
            to right,
            transparent 0%,
            rgba(0,0,0,.35) 48%,
            rgba(0,0,0,.75) 100%
        );
}


.td-engrave-hero__glow{
    position:absolute;

    right:4%;
    top:16%;

    width:310px;
    height:310px;

    border-radius:50%;

    background:
        rgba(242,138,26,.06);

    filter:blur(80px);

    pointer-events:none;
}


/* =========================================================
   INNER
========================================================= */

.td-engrave-hero__inner{
    position:relative;
    z-index:2;

    width:min(1240px,100%);
    margin:0 auto;

    display:grid;

    grid-template-columns:
        minmax(0,.9fr)
        minmax(520px,1.1fr);

    gap:
        clamp(50px,7vw,105px);

    align-items:center;
}


/* =========================================================
   CONTENIDO
========================================================= */

.td-engrave-hero__content{
    max-width:660px;
}


.td-engrave-hero__eyebrow{
    display:inline-flex;
    align-items:center;

    gap:12px;

    margin-bottom:24px;

    font-size:12px;
    font-weight:800;

    letter-spacing:.15em;
    text-transform:uppercase;

    color:#666;
}


.td-engrave-hero__eyebrow > span{
    width:38px;
    height:3px;

    border-radius:99px;

    background:var(--td-orange);
}


.td-engrave-hero h1{
    margin:0;

    font-size:
        clamp(52px,5.6vw,88px);

    line-height:.95;

    letter-spacing:-.055em;

    font-weight:500;

    color:var(--td-black);
}


.td-engrave-hero h1 strong{
    display:block;

    margin-top:8px;

    font-weight:900;

    color:var(--td-orange);

    animation:
        tdEngraveTitle
        .85s
        cubic-bezier(.2,.75,.2,1)
        both;
}


@keyframes tdEngraveTitle{

    from{
        opacity:0;
        transform:translateY(24px);
    }

    to{
        opacity:1;
        transform:translateY(0);
    }

}


/* =========================================================
   TEXTO
========================================================= */

.td-engrave-hero__lead{
    max-width:620px;

    margin:
        clamp(32px,3.5vw,44px)
        0
        0;

    font-size:
        clamp(18px,1.35vw,21px);

    line-height:1.75;

    color:#656565;
}


/* =========================================================
   ACTIONS
========================================================= */

.td-engrave-hero__actions{
    display:flex;
    align-items:center;

    flex-wrap:wrap;

    gap:24px;

    margin-top:32px;
}


.td-engrave-hero__button{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    gap:16px;

    min-height:58px;

    padding:0 24px;

    border-radius:999px;

    background:#171717;

    color:#fff;

    text-decoration:none;

    font-size:15px;
    font-weight:800;

    transition:
        transform .3s ease,
        background .3s ease,
        box-shadow .3s ease;
}


.td-engrave-hero__button:hover{
    transform:translateY(-3px);

    background:var(--td-orange);

    box-shadow:
        0 18px 42px
        rgba(242,138,26,.22);
}


.td-engrave-hero__button span:last-child{
    display:grid;
    place-items:center;

    width:28px;
    height:28px;

    border-radius:50%;

    background:
        rgba(255,255,255,.15);
}


.td-engrave-hero__link{
    display:inline-flex;
    align-items:center;

    gap:8px;

    color:#555;

    text-decoration:none;

    font-size:14px;
    font-weight:700;
}


.td-engrave-hero__link:hover{
    color:var(--td-green);
}


/* =========================================================
   USES
========================================================= */

.td-engrave-hero__uses{
    display:flex;
    align-items:center;

    flex-wrap:wrap;

    gap:10px;

    margin-top:28px;

    font-size:10px;
    font-weight:800;

    letter-spacing:.08em;
    text-transform:uppercase;

    color:#8a8a8a;
}


.td-engrave-hero__uses i{
    width:4px;
    height:4px;

    border-radius:50%;

    background:var(--td-green);
}


/* =========================================================
   VISUAL
========================================================= */

.td-engrave-hero__visual{
    position:relative;

    min-height:560px;
}


/* =========================================================
   MACHINE
========================================================= */

.td-engrave-machine{
    position:absolute;

    left:50%;
    top:50%;

    width:min(530px,90%);

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

    overflow:hidden;

    border-radius:24px;

    background:#171717;

    color:#fff;

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

    box-shadow:
        0 36px 90px
        rgba(0,0,0,.20);

    animation:
        tdEngraveMachineFloat
        7s
        ease-in-out
        infinite;
}


@keyframes tdEngraveMachineFloat{

    0%,100%{
        transform:
            translate(-50%,-50%)
            translateY(0);
    }

    50%{
        transform:
            translate(-50%,-50%)
            translateY(-8px);
    }

}


/* =========================================================
   HEADER
========================================================= */

.td-engrave-machine__header{
    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:17px 20px;

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

    font-size:8px;
    font-weight:800;

    letter-spacing:.12em;
}


.td-engrave-machine__header div{
    display:flex;
    align-items:center;

    gap:8px;
}


.td-engrave-machine__header div > span{
    width:7px;
    height:7px;

    border-radius:50%;

    background:var(--td-orange);

    box-shadow:
        0 0 0 5px
        rgba(242,138,26,.08);
}


.td-engrave-machine__header small{
    color:
        rgba(255,255,255,.35);
}


/* =========================================================
   BED
========================================================= */

.td-engrave-bed{
    position:relative;

    height:390px;

    overflow:hidden;

    background:#202020;
}


.td-engrave-bed__grid{
    position:absolute;
    inset:0;

    opacity:.22;

    background-image:
        linear-gradient(
            rgba(255,255,255,.07) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.07) 1px,
            transparent 1px
        );

    background-size:18px 18px;
}


/* =========================================================
   PIEZA
========================================================= */

.td-engrave-piece{
    position:absolute;

    left:50%;
    top:50%;

    width:78%;
    height:70%;

    transform:
        translate(-50%,-50%)
        rotate(-2deg);

    overflow:hidden;

    border-radius:10px;

    background:
        linear-gradient(
            135deg,
            #b98c59,
            #795334
        );

    box-shadow:
        0 20px 50px
        rgba(0,0,0,.32);
}


.td-engrave-piece::after{
    content:"";

    position:absolute;
    inset:0;

    opacity:.13;

    pointer-events:none;

    background:
        repeating-linear-gradient(
            0deg,
            transparent 0,
            transparent 5px,
            rgba(255,255,255,.14) 6px
        );
}


.td-engrave-piece__material{
    position:absolute;

    z-index:10;

    left:14px;
    top:12px;

    font-size:7px;
    font-weight:800;

    letter-spacing:.13em;

    color:
        rgba(255,255,255,.45);
}


/* =========================================================
   MARCA
========================================================= */

.td-engrave-mark{
    position:absolute;

    z-index:4;

    left:50%;
    top:52%;

    width:68%;

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

    text-align:center;

    opacity:.96;

    color:#3d2717;

    animation:
        tdEngraveReveal
        6s
        ease-in-out
        infinite;
}


@keyframes tdEngraveReveal{

    0%{
        opacity:.08;
        filter:blur(3px);
    }

    55%,
    100%{
        opacity:1;
        filter:blur(0);
    }

}


.td-engrave-mark__small{
    display:block;

    margin-bottom:8px;

    font-size:7px;
    font-weight:900;

    letter-spacing:.20em;
}


.td-engrave-mark > strong{
    display:block;

    font-size:44px;
    line-height:.85;

    letter-spacing:-.055em;
}


.td-engrave-mark > strong span{
    color:#24160f;
}


.td-engrave-mark__line{
    width:80px;
    height:2px;

    margin:
        14px
        auto;

    background:#3d2717;
}


.td-engrave-mark > small{
    font-size:6px;
    font-weight:900;

    letter-spacing:.18em;
}


/* =========================================================
   SCAN
========================================================= */

.td-engrave-scan{
    position:absolute;

    z-index:6;

    left:10%;
    right:10%;

    height:2px;

    top:18%;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--td-orange),
            #fff,
            var(--td-orange),
            transparent
        );

    box-shadow:
        0 0 12px
        rgba(242,138,26,.85);

    animation:
        tdEngraveScan
        6s
        ease-in-out
        infinite;
}


@keyframes tdEngraveScan{

    0%{
        top:18%;
        opacity:0;
    }

    10%{
        opacity:1;
    }

    80%{
        top:83%;
        opacity:1;
    }

    100%{
        top:83%;
        opacity:0;
    }

}


/* =========================================================
   HEAD
========================================================= */

.td-engrave-head{
    position:absolute;

    z-index:8;

    left:55%;
    top:13%;

    width:34px;
    height:72px;

    animation:
        tdEngraveHead
        6s
        ease-in-out
        infinite;
}


@keyframes tdEngraveHead{

    0%{
        transform:translate(-130px,0);
    }

    20%{
        transform:translate(100px,45px);
    }

    40%{
        transform:translate(-100px,95px);
    }

    60%{
        transform:translate(105px,145px);
    }

    80%{
        transform:translate(-90px,190px);
    }

    100%{
        transform:translate(-130px,0);
    }

}


.td-engrave-head__body{
    position:absolute;

    left:50%;

    width:28px;
    height:38px;

    transform:translateX(-50%);

    border-radius:
        5px
        5px
        10px
        10px;

    background:
        linear-gradient(
            #3d3d3d,
            #111
        );

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


.td-engrave-head__beam{
    position:absolute;

    left:50%;
    top:35px;

    width:1px;
    height:30px;

    background:var(--td-orange);

    box-shadow:
        0 0 8px
        var(--td-orange);
}


.td-engrave-head__point{
    position:absolute;

    left:50%;
    bottom:2px;

    width:8px;
    height:8px;

    transform:translateX(-50%);

    border-radius:50%;

    background:#fff;

    box-shadow:
        0 0 10px 3px
        var(--td-orange);

    animation:
        tdEngraveSpark
        .3s
        ease-in-out
        infinite
        alternate;
}


@keyframes tdEngraveSpark{

    to{
        transform:
            translateX(-50%)
            scale(.55);

        opacity:.65;
    }

}


/* =========================================================
   HUD
========================================================= */

.td-engrave-hud{
    position:absolute;
    z-index:10;

    bottom:14px;

    padding:8px 10px;

    border-radius:9px;

    background:
        rgba(0,0,0,.44);

    backdrop-filter:blur(5px);
}


.td-engrave-hud span,
.td-engrave-hud strong{
    display:block;
}


.td-engrave-hud span{
    margin-bottom:3px;

    font-size:6px;

    color:
        rgba(255,255,255,.40);
}


.td-engrave-hud strong{
    font-size:9px;
}


.td-engrave-hud--one{
    left:14px;
}


.td-engrave-hud--two{
    right:14px;
}


/* =========================================================
   FOOTER
========================================================= */

.td-engrave-machine__footer{
    display:grid;

    grid-template-columns:
        auto
        1fr
        auto;

    gap:14px;

    align-items:center;

    padding:
        16px
        20px;
}


.td-engrave-machine__footer > span{
    font-size:8px;

    color:
        rgba(255,255,255,.50);
}


.td-engrave-machine__footer > strong{
    font-size:17px;

    color:var(--td-orange);
}


.td-engrave-progress{
    height:3px;

    overflow:hidden;

    border-radius:99px;

    background:
        rgba(255,255,255,.08);
}


.td-engrave-progress i{
    display:block;

    width:84%;
    height:100%;

    border-radius:inherit;

    background:
        linear-gradient(
            90deg,
            var(--td-orange),
            var(--td-green)
        );

    animation:
        tdEngraveProgress
        6s
        ease-in-out
        infinite;
}


@keyframes tdEngraveProgress{

    0%{
        width:0;
    }

    80%,
    100%{
        width:100%;
    }

}


/* =========================================================
   FLOATS
========================================================= */

.td-engrave-float{
    position:absolute;
    z-index:12;

    display:flex;
    align-items:center;

    gap:10px;

    padding:
        11px
        14px;

    border-radius:14px;

    background:#fff;

    border:
        1px solid
        rgba(0,0,0,.06);

    box-shadow:
        0 16px 36px
        rgba(0,0,0,.10);

    animation:
        tdEngraveFloat
        6s
        ease-in-out
        infinite;
}


.td-engrave-float > span{
    display:grid;
    place-items:center;

    width:34px;
    height:34px;

    border-radius:10px;

    background:#f3f3f1;

    color:var(--td-orange);

    font-size:9px;
    font-weight:900;
}


.td-engrave-float strong,
.td-engrave-float small{
    display:block;
}


.td-engrave-float strong{
    font-size:10px;

    color:#333;
}


.td-engrave-float small{
    margin-top:2px;

    font-size:7px;

    color:#999;
}


.td-engrave-float--one{
    left:0;
    top:12%;
}


.td-engrave-float--two{
    right:0;
    top:19%;

    animation-delay:.8s;
}


.td-engrave-float--three{
    right:4%;
    bottom:7%;

    animation-delay:1.5s;
}


.td-engrave-float--three > span{
    color:var(--td-green);
}


@keyframes tdEngraveFloat{

    0%,100%{
        transform:translateY(0);
    }

    50%{
        transform:translateY(-8px);
    }

}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:1050px){

    .td-engrave-hero{
        min-height:auto;
    }


    .td-engrave-hero__inner{
        grid-template-columns:1fr;

        gap:60px;
    }


    .td-engrave-hero__content{
        max-width:800px;
    }


    .td-engrave-hero__visual{
        width:min(700px,100%);

        min-height:540px;

        margin:0 auto;
    }

}


@media (max-width:700px){

    .td-engrave-hero{
        padding:
            95px
            20px
            65px;
    }


    .td-engrave-hero h1{
        font-size:
            clamp(46px,12.5vw,68px);
    }


    .td-engrave-hero__lead{
        font-size:17px;
    }


    .td-engrave-hero__actions{
        flex-direction:column;
        align-items:flex-start;

        gap:18px;
    }


    .td-engrave-hero__visual{
        min-height:500px;

        transform:scale(.88);

        transform-origin:center top;

        margin-bottom:-55px;
    }

}


@media (max-width:520px){

    .td-engrave-hero__visual{
        width:122%;

        left:-11%;

        transform:scale(.74);

        margin-bottom:-120px;
    }

}
/* =========================================================
   BLOQUE 02 · GRABADO CON LÁSER
========================================================= */

.td-engrave-info{
    position:relative;
    overflow:hidden;

    padding:
        clamp(72px,7vw,108px)
        24px;

    background:#f8f8f6;
}


.td-engrave-info__inner{
    width:min(1180px,100%);
    margin:0 auto;
}


/* =========================================================
   INTRO
========================================================= */

.td-engrave-info__intro{
    display:grid;

    grid-template-columns:
        minmax(0,.9fr)
        minmax(0,1.1fr);

    gap:
        clamp(45px,7vw,105px);

    align-items:start;
}


.td-engrave-info__eyebrow{
    margin-bottom:17px;

    font-size:12px;
    font-weight:800;

    letter-spacing:.15em;
    text-transform:uppercase;

    color:var(--td-orange);
}


.td-engrave-info h2{
    max-width:650px;

    margin:0;

    font-size:
        clamp(42px,4.8vw,70px);

    line-height:.98;
    letter-spacing:-.052em;

    font-weight:500;

    color:#171717;
}


.td-engrave-info h2 strong{
    display:block;
    font-weight:900;
}


.td-engrave-info__copy p{
    margin:0 0 20px;

    font-size:
        clamp(17px,1.25vw,20px);

    line-height:1.8;

    color:#666;
}


.td-engrave-info__copy p:last-child{
    margin-bottom:0;
}


/* =========================================================
   MATERIALES
========================================================= */

.td-engrave-materials{
    margin-top:
        clamp(55px,6vw,85px);
}


.td-engrave-materials__heading{
    max-width:760px;
}


.td-engrave-materials__heading > span{
    display:block;

    margin-bottom:12px;

    font-size:11px;
    font-weight:800;

    letter-spacing:.15em;
    text-transform:uppercase;

    color:var(--td-green);
}


.td-engrave-materials h3{
    margin:0;

    font-size:
        clamp(36px,4.3vw,60px);

    line-height:.98;
    letter-spacing:-.05em;

    font-weight:500;

    color:#171717;
}


.td-engrave-materials h3 strong{
    display:block;
    font-weight:900;
}


.td-engrave-materials__heading p{
    max-width:680px;

    margin:22px 0 0;

    font-size:16px;
    line-height:1.75;

    color:#707070;
}


/* =========================================================
   GRID MATERIAL
========================================================= */

.td-engrave-materials__grid{
    display:grid;

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

    gap:16px;

    margin-top:36px;
}


.td-engrave-material{
    min-height:275px;

    padding:26px;

    border-radius:22px;

    background:#fff;

    border:
        1px solid
        rgba(0,0,0,.06);

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}


.td-engrave-material:hover{
    transform:translateY(-6px);

    box-shadow:
        0 22px 50px
        rgba(0,0,0,.07);
}


.td-engrave-material > span{
    display:block;

    margin-bottom:36px;

    font-size:10px;
    font-weight:900;

    color:var(--td-orange);
}


.td-engrave-material h4{
    margin:0;

    font-size:
        clamp(25px,2.4vw,34px);

    line-height:1;

    letter-spacing:-.04em;

    color:#171717;
}


.td-engrave-material p{
    margin:18px 0 0;

    font-size:14px;
    line-height:1.7;

    color:#747474;
}


.td-engrave-material--featured{
    background:var(--td-orange);
}


.td-engrave-material--featured > span,
.td-engrave-material--featured h4{
    color:#fff;
}


.td-engrave-material--featured p{
    color:
        rgba(255,255,255,.78);
}


.td-engrave-material--featured a{
    display:inline-block;

    margin-top:20px;

    color:#fff;

    text-decoration:none;

    font-size:12px;
    font-weight:900;
}


/* =========================================================
   VIDEO
========================================================= */

.td-engrave-video{
    display:grid;

    grid-template-columns:
        minmax(260px,.7fr)
        minmax(0,1.3fr);

    gap:
        clamp(35px,5vw,70px);

    align-items:center;

    margin-top:
        clamp(60px,7vw,95px);

    padding:
        clamp(34px,4vw,50px);

    border-radius:30px;

    background:#171717;

    color:#fff;
}


.td-engrave-video__content > span{
    display:block;

    margin-bottom:12px;

    font-size:11px;
    font-weight:800;

    letter-spacing:.15em;
    text-transform:uppercase;

    color:var(--td-orange);
}


.td-engrave-video h3{
    margin:0;

    font-size:
        clamp(34px,4vw,54px);

    line-height:.98;
    letter-spacing:-.045em;

    font-weight:500;
}


.td-engrave-video h3 strong{
    display:block;
    font-weight:900;
}


.td-engrave-video__content p{
    margin:22px 0 0;

    font-size:15px;
    line-height:1.75;

    color:
        rgba(255,255,255,.60);
}


.td-engrave-video__frame{
    position:relative;

    aspect-ratio:16 / 9;

    overflow:hidden;

    border-radius:18px;

    background:#000;

    box-shadow:
        0 24px 60px
        rgba(0,0,0,.28);
}


.td-engrave-video__frame iframe{
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    border:0;
}


/* =========================================================
   TICOLASER
========================================================= */

.td-engrave-ticolaser{
    display:grid;

    grid-template-columns:
        280px
        1fr;

    gap:
        clamp(35px,5vw,65px);

    align-items:center;

    margin-top:30px;

    padding:
        clamp(28px,3vw,40px);

    border-radius:24px;

    background:#fff;

    border:
        1px solid
        rgba(0,0,0,.06);
}


.td-engrave-ticolaser__logo{
    padding:22px;

    border-radius:18px;

    background:#f4f4f2;
}


.td-engrave-ticolaser__logo img{
    display:block;

    width:100%;
    height:auto;
}


.td-engrave-ticolaser__content > span{
    display:block;

    margin-bottom:9px;

    font-size:10px;
    font-weight:800;

    letter-spacing:.14em;
    text-transform:uppercase;

    color:var(--td-green);
}


.td-engrave-ticolaser h3{
    margin:0;

    font-size:
        clamp(27px,3vw,40px);

    line-height:1;
    letter-spacing:-.04em;

    font-weight:500;

    color:#171717;
}


.td-engrave-ticolaser h3 strong{
    display:block;

    font-weight:900;
}


.td-engrave-ticolaser p{
    margin:17px 0 0;

    font-size:14px;
    line-height:1.7;

    color:#707070;
}


.td-engrave-ticolaser a{
    display:inline-block;

    margin-top:18px;

    color:var(--td-orange);

    text-decoration:none;

    font-size:12px;
    font-weight:900;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:900px){

    .td-engrave-info__intro,
    .td-engrave-video,
    .td-engrave-ticolaser{
        grid-template-columns:1fr;
    }

    .td-engrave-materials__grid{
        grid-template-columns:
            repeat(2,minmax(0,1fr));
    }

    .td-engrave-ticolaser__logo{
        width:min(300px,100%);
    }

}


@media (max-width:600px){

    .td-engrave-info{
        padding:
            65px
            20px;
    }

    .td-engrave-materials__grid{
        grid-template-columns:1fr;
    }

    .td-engrave-material{
        min-height:auto;
    }

    .td-engrave-video{
        padding:
            26px
            22px;

        border-radius:24px;
    }

}
/* =========================================================
   BLOQUE 03 · CTA WHATSAPP
========================================================= */

.td-engrave-cta{
    position:relative;
    overflow:hidden;

    padding:
        clamp(80px,8vw,118px)
        24px;

    background:#171717;
    color:#fff;
}

.td-engrave-cta__inner{
    width:min(980px,100%);
    margin:0 auto;

    text-align:center;
}

.td-engrave-cta__eyebrow{
    margin-bottom:17px;

    font-size:12px;
    font-weight:800;

    letter-spacing:.16em;
    text-transform:uppercase;

    color:var(--td-orange);
}

.td-engrave-cta h2{
    margin:0 auto;

    font-size:
        clamp(46px,5.8vw,82px);

    line-height:.96;
    letter-spacing:-.055em;

    font-weight:500;
}

.td-engrave-cta h2 strong{
    display:block;

    margin-top:7px;

    font-weight:900;

    color:var(--td-orange);
}

.td-engrave-cta p{
    max-width:760px;

    margin:
        30px
        auto
        0;

    font-size:
        clamp(17px,1.35vw,20px);

    line-height:1.75;

    color:
        rgba(255,255,255,.68);
}


/* =========================================================
   PASOS
========================================================= */

.td-engrave-cta__steps{
    display:flex;
    align-items:center;
    justify-content:center;

    flex-wrap:wrap;

    gap:14px;

    margin-top:36px;
}

.td-engrave-cta__steps div{
    display:flex;
    align-items:center;

    gap:9px;

    font-size:10px;
    font-weight:800;

    letter-spacing:.06em;
    text-transform:uppercase;

    color:
        rgba(255,255,255,.56);
}

.td-engrave-cta__steps div span{
    display:grid;
    place-items:center;

    width:28px;
    height:28px;

    border-radius:50%;

    background:
        rgba(242,138,26,.12);

    color:var(--td-orange);

    font-size:8px;
}

.td-engrave-cta__steps > i{
    width:24px;
    height:1px;

    background:
        rgba(255,255,255,.13);
}


/* =========================================================
   WHATSAPP
========================================================= */

.td-engrave-cta__whatsapp{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    gap:14px;

    min-height:62px;

    margin-top:38px;

    padding:
        0
        25px;

    border-radius:999px;

    background:#25D366;

    color:#fff;

    text-decoration:none;

    font-size:15px;
    font-weight:800;

    box-shadow:
        0 20px 50px
        rgba(37,211,102,.18);

    transition:
        transform .3s ease,
        box-shadow .3s ease,
        filter .3s ease;
}

.td-engrave-cta__whatsapp:hover{
    transform:translateY(-4px);

    box-shadow:
        0 26px 58px
        rgba(37,211,102,.25);

    filter:brightness(.96);
}

.td-engrave-cta__whatsapp-icon{
    display:grid;
    place-items:center;

    width:34px;
    height:34px;

    border-radius:50%;

    background:
        rgba(255,255,255,.16);
}

.td-engrave-cta__whatsapp-icon svg{
    width:20px;
    height:20px;

    fill:#fff;
}

.td-engrave-cta__whatsapp > span:last-child{
    display:grid;
    place-items:center;

    width:28px;
    height:28px;

    border-radius:50%;

    background:
        rgba(255,255,255,.14);
}


/* =========================================================
   META
========================================================= */

.td-engrave-cta__meta{
    display:flex;
    align-items:center;
    justify-content:center;

    flex-wrap:wrap;

    gap:11px;

    margin-top:30px;

    font-size:10px;
    font-weight:700;

    letter-spacing:.1em;
    text-transform:uppercase;

    color:
        rgba(255,255,255,.35);
}

.td-engrave-cta__meta span{
    width:4px;
    height:4px;

    border-radius:50%;

    background:var(--td-green);
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width:650px){

    .td-engrave-cta{
        padding:
            70px
            20px;
    }

    .td-engrave-cta__steps{
        flex-direction:column;
    }

    .td-engrave-cta__steps > i{
        width:1px;
        height:10px;
    }

    .td-engrave-cta__whatsapp{
        width:100%;
        max-width:355px;

        padding:
            0
            18px;
    }

}