.nfc-landing { overflow: hidden; background: #090909; color: #fff; }
.nfc-landing__hero { position: relative; min-height: 760px; padding: 185px 0 110px; background: radial-gradient(circle at 74% 44%, rgba(219, 54, 52, .22), transparent 24rem), radial-gradient(circle at 22% 12%, rgba(255, 255, 255, .08), transparent 22rem), #090909; }
.nfc-landing__hero::after { position: absolute; right: -20%; bottom: -34%; width: 56vw; height: 56vw; border: 1px solid rgba(255, 255, 255, .08); border-radius: 50%; content: ''; pointer-events: none; }
.nfc-landing .container { position: relative; z-index: 1; }
.nfc-landing__eyebrow { display: inline-flex; align-items: center; gap: 9px; color: #ff6966; font-size: 12px; font-weight: 800; letter-spacing: .15em; }
.nfc-landing h1 { max-width: 620px; margin: 20px 0; color: #fff; font-size: clamp(48px, 6.2vw, 84px); font-weight: 800; letter-spacing: -.06em; line-height: .98; }
.nfc-landing__lead { max-width: 560px; margin: 0; color: rgba(255,255,255,.68); font-size: 19px; line-height: 1.65; }
.nfc-landing__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 24px; margin-top: 34px; }
.nfc-landing__cta { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; gap: 12px; padding: 14px 22px; border-radius: 10px; background: linear-gradient(100deg, #f14342, #c61f2c); box-shadow: 0 14px 34px rgba(203, 34, 41, .24); color: #fff !important; font-size: 14px; font-weight: 700; text-decoration: none !important; transition: transform .2s ease, box-shadow .2s ease; }
.nfc-landing__cta:hover, .nfc-landing__cta:focus-visible { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(203, 34, 41, .38); }
.nfc-landing__text-cta { color: #fff !important; font-size: 14px; font-weight: 700; text-decoration: underline !important; text-underline-offset: 5px; }
.nfc-landing__signals { display: flex; flex-wrap: wrap; gap: 10px 20px; margin: 40px 0 0; padding: 0; list-style: none; color: rgba(255,255,255,.5); font-size: 12px; font-weight: 700; letter-spacing: .06em; }
.nfc-landing__signals i { margin-right: 6px; color: #fa4947; }
.nfc-landing__showcase { position: relative; width: min(100%, 550px); height: 490px; margin: 0 auto; }
.nfc-landing__pulse { position: absolute; top: 50%; left: 51%; width: 310px; height: 310px; border: 1px solid rgba(238, 70, 67, .28); border-radius: 50%; transform: translate(-50%, -50%); }
.nfc-landing__pulse--two { width: 420px; height: 420px; border-color: rgba(255,255,255,.08); }
.nfc-landing__card { position: absolute; top: 58px; left: 2%; z-index: 2; width: 330px; height: 208px; padding: 24px; overflow: hidden; border: 1px solid rgba(255,255,255,.28); border-radius: 21px; background: linear-gradient(135deg, #323232, #151515 58%, #4b1718); box-shadow: 0 25px 60px rgba(0,0,0,.42); transform: rotate(-8deg); }
.nfc-landing__card::before { position: absolute; top: -80px; right: -34px; width: 190px; height: 190px; border-radius: 50%; background: rgba(243,67,66,.34); content: ''; }
.nfc-landing__card-chip { display: block; width: 42px; height: 31px; border: 1px solid rgba(255, 212, 116, .6); border-radius: 6px; background: linear-gradient(135deg, #d5a84f, #fff0a5, #c18931); }
.nfc-landing__card-mark { position: absolute; top: 26px; right: 27px; display: grid; width: 42px; height: 42px; place-items: center; border-radius: 50%; background: #ef403f; color: #fff; font-size: 23px; font-weight: 800; }
.nfc-landing__card strong { display: block; margin-top: 57px; font-size: 17px; letter-spacing: .18em; }
.nfc-landing__card small { color: rgba(255,255,255,.58); font-size: 9px; font-weight: 700; letter-spacing: .16em; }
.nfc-landing__card-wave { position: absolute; right: 26px; bottom: 22px; color: #fff; font-size: 19px; transform: rotate(90deg); }
.nfc-landing__phone { position: absolute; right: 1%; bottom: 10px; z-index: 3; width: 224px; height: 432px; padding: 15px 10px; border: 7px solid #202020; border-radius: 34px; background: #090909; box-shadow: 0 30px 55px rgba(0,0,0,.55); }
.nfc-landing__phone-camera { display: block; width: 72px; height: 15px; margin: -4px auto 22px; border-radius: 0 0 12px 12px; background: #202020; }
.nfc-landing__profile { display: flex; flex-direction: column; align-items: center; height: 354px; padding: 33px 18px; border-radius: 21px; background: linear-gradient(160deg, #e64644, #731d25 58%, #161616); text-align: center; }
.nfc-landing__profile-avatar { display: grid; width: 58px; height: 58px; place-items: center; border: 2px solid rgba(255,255,255,.8); border-radius: 50%; background: #1c1c1c; color: #fff; font-size: 23px; font-weight: 800; }
.nfc-landing__profile strong { margin-top: 17px; color: #fff; font-size: 16px; }.nfc-landing__profile small { color: rgba(255,255,255,.74); font-size: 10px; }.nfc-landing__profile-line { width: 100%; height: 1px; margin: 26px 0 18px; background: rgba(255,255,255,.35); }.nfc-landing__profile-action { padding: 9px 11px; border-radius: 7px; background: #fff; color: #171717; font-size: 10px; font-weight: 800; }
.nfc-landing__features { padding: 115px 0; border-top: 1px solid rgba(255,255,255,.09); background: #101010; }.nfc-landing__section-heading { max-width: 710px; margin-bottom: 42px; }.nfc-landing__section-heading > span { color: #f4504e; font-size: 11px; font-weight: 800; letter-spacing: .13em; }.nfc-landing h2 { margin: 12px 0 0; color: #fff; font-size: clamp(33px, 4vw, 56px); font-weight: 750; letter-spacing: -.045em; line-height: 1.08; }.nfc-landing__features .row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }.nfc-landing__features .col-md-4 { width: auto; max-width: none; }
.nfc-landing__feature { height: 100%; min-height: 250px; padding: 32px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: linear-gradient(145deg, rgba(255,255,255,.05), rgba(255,255,255,.01)); }.nfc-landing__feature > i { color: #fb5754; font-size: 26px; }.nfc-landing__feature h3 { margin: 30px 0 12px; color: #fff; font-size: 23px; font-weight: 700; }.nfc-landing__feature p { margin: 0; color: rgba(255,255,255,.58); font-size: 15px; line-height: 1.7; }
.nfc-landing__steps { padding: 120px 0; background: radial-gradient(circle at 5% 50%, rgba(220,54,52,.2), transparent 24rem), #090909; }.nfc-landing__step-list { display: grid; gap: 1px; margin: 0; padding: 0; list-style: none; background: rgba(255,255,255,.1); }.nfc-landing__step-list li { display: flex; gap: 24px; padding: 25px 0 24px; background: #090909; }.nfc-landing__step-list span { width: 47px; flex: 0 0 47px; color: #ef4a48; font-size: 13px; font-weight: 800; }.nfc-landing__step-list h3 { margin: 0 0 7px; color: #fff; font-size: 21px; font-weight: 700; }.nfc-landing__step-list p { margin: 0; color: rgba(255,255,255,.55); line-height: 1.6; }
.nfc-landing__final-cta { padding: 100px 0; background: linear-gradient(115deg, #ee4544, #901f28); text-align: center; }.nfc-landing__final-cta > .container { max-width: 760px; }.nfc-landing__final-cta span { font-size: 11px; font-weight: 800; letter-spacing: .16em; }.nfc-landing__final-cta h2 { margin: 14px 0 28px; }.nfc-landing__final-cta .nfc-landing__cta { background: #151515; box-shadow: none; }
@media (max-width: 991px) { .nfc-landing__hero { min-height: 0; padding-top: 140px; }.nfc-landing__showcase { margin-top: 25px; }.nfc-landing__steps { padding: 85px 0; } }
@media (max-width: 767px) { .nfc-landing__features .row { grid-template-columns: 1fr; } }
@media (max-width: 575px) { .nfc-landing__hero { padding: 128px 0 68px; }.nfc-landing h1 { font-size: 47px; }.nfc-landing__lead { font-size: 17px; }.nfc-landing__actions { align-items: stretch; gap: 16px; }.nfc-landing__cta { width: 100%; }.nfc-landing__text-cta { text-align: center; }.nfc-landing__showcase { height: 390px; transform: scale(.82); transform-origin: center top; margin-bottom: -65px; }.nfc-landing__features { padding: 76px 0; }.nfc-landing__feature { min-height: 0; }.nfc-landing__steps { padding: 74px 0; }.nfc-landing__step-list li { gap: 14px; }.nfc-landing__final-cta { padding: 75px 0; } }
