*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Segoe UI",Arial,sans-serif;color:#14233b;line-height:1.65}.wrap{width:min(1200px,92%);margin:auto}.site-header{height:78px;position:sticky;top:0;z-index:20;background:#fffffff2;backdrop-filter:blur(15px);border-bottom:1px solid #e5ebf3}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:#0a1d38}.brand>span:last-child{display:flex;flex-direction:column;line-height:1}.brand b{font-size:15px;letter-spacing:.4px}.brand small{font-size:8px;letter-spacing:3.5px;
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              margin-top:6px;color:#718096}.brand-icon{width:43px;height:43px;position:relative;display:block;background:linear-gradient(135deg,#075dd7,#03a8c8);border-radius:13px;overflow:hidden}.brand-icon i{position:absolute;width:22px;height:5px;background:white;border-radius:5px;transform:rotate(35deg);left:10px;top:13px}.brand-icon i+ i{transform:rotate(-35deg);top:25px}#nav{display:flex;gap:27px;align-items:center}#nav a{text-decoration:none;font-size:13px;font-weight:650;color:#263750;position:relative}#nav a:not(.nav-cta):after{content:"";height:2px;width:0;background:#1261d8;position:absolute;left:0;bottom:-8px;transition:.2s}#nav a:hover:after{width:100%}.nav-cta{background:#0a1d38;color:white!important;padding:10px 17px;border-radius:8px}#menu{display:none;border:0;background:none;font-size:22px}
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           .hero{min-height:700px;display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 40%,#e2f5ff 0,#f1f7ff 28%,#f8fbff 62%,#fff 100%)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:75px;align-items:center;position:relative;z-index:2}.pill,.kicker{display:inline-block;font-size:10px;font-weight:800;letter-spacing:2.1px;color:#1261d8}.pill{background:#e9f3ff;border:1px solid #d5e8ff;padding:7px 11px;border-radius:20px}.hero h1{font-size:clamp(48px,5.4vw,72px);line-height:1.02;letter-spacing:-3px;margin:20px 0;color:#091c36}.hero h1 span{background:linear-gradient(90deg,#1261d8,#00a6c8);background-clip:text;-webkit-background-clip:text;color:transparent}.hero-copy>p{font-size:18px;color:#617089;max-width:670px}.actions{display:flex;gap:12px;margin:31px 0}.btn{display:inline-flex;padding:13px 20px;border-radius:9px;text-decoration:none;font-size:14px;font-weight:750;align-items:center;gap:20px}.primary{background:#1261d8;color:white;box-shadow:0 12px 30px #1261d833}.secondary{background:white;color:#14233b;border:1px solid #cfdae8}.trust{display:flex;gap:12px;align-items:center;color:#718096;font-size:11px;font-weight:650}.trust i{width:3px;height:3px;border-radius:50%;background:#aab7c8}.hero-art{height:500px;position:relative}.gem{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:190px;border-radius:45px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(145deg,#0b2a50,#075dd7);color:white;box-shadow:0 35px 80px #0b4e9f45;z-index:3}.gem span{font-size:65px;line-height:1}.gem small{font-size:9px;letter-spacing:2px;text-align:center;margin-top:12px}.orbit{position:absolute;border:1px solid #7cb9ed55;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}.o1{width:340px;height:340px}.o2{width:480px;height:480px}.float-card{position:absolute;background:#ffffffee;border:1px solid white;box-shadow:0 20px 50px #19417820;border-radius:14px;padding:16px 18px;z-index:4;min-width:170px}.float-card small{display:block;font-size:8px;letter-spacing:1.5px;color:#8290a4}.float-card b{display:block;font-size:13px;margin:3px 0}.float-card em{font-style:normal;color:#0589b5;font-size:10px}.fc1{top:55px;left:5px}.fc2{right:-5px;top:175px}.fc3{bottom:45px;left:25px}.glow{position:absolute;border-radius:50%;filter:blur(2px)}.g1{width:420px;height:420px;background:#1261d80a;right:-100px;top:-80px}.g2{width:250px;height:250px;background:#00a6c80d;left:42%;bottom:-80px}.section{padding:100px 0}.intro-grid,.heading{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end}.intro h2,.heading h2,.jewelry h2,.contact h2{font-size:clamp(34px,4vw,50px);line-height:1.12;letter-spacing:-1.8px;color:#091c36;margin:13px 0}.intro p,.heading p{color:#68778d;font-size:17px}.arrow-link{color:#1261d8;text-decoration:none;font-weight:700}.jewelry{background:#081b33;color:white}.jewelry-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center}.jewelry h2{color:white}.jewelry-copy>p{color:#b8c7da}.cyan{color:#62dff3}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0;color:#dbe8f5;font-size:13px}.light{background:white;color:#075dd7}.jewelry-panel{background:linear-gradient(145deg,#102c50,#0b2442);border:1px solid #ffffff18;border-radius:20px;padding:25px;box-shadow:0 25px 60px #0003}.panel-head{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#9bb1ca}.panel-head b{color:#59e5c2}.panel-main{display:grid;grid-template-columns:150px 1fr;gap:25px;align-items:center;padding:35px 0}.ring-visual{height:150px;border-radius:50%;border:1px solid #48cce855;display:grid;place-items:center;background:radial-gradient(circle,#1261d833,transparent 65%)}.ring-visual span{font-size:70px;color:#58d5ee}.panel-main small{font-size:8px;letter-spacing:1.5px;color:#63dff4}.panel-main h3{font-size:27px;margin:5px 0}.panel-main p{color:#9eb1c8;font-size:12px}.mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mini-grid div{padding:15px;background:#ffffff09;border:1px solid #ffffff10;border-radius:10px}.mini-grid b,.mini-grid small{display:block}.mini-grid small{font-size:9px;color:#92a7c0}.services{background:#f5f8fc}.heading{margin-bottom:45px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.cards article{position:relative;background:white;border:1px solid #e3eaf3;border-radius:16px;padding:30px;transition:.25s}.cards article:hover{transform:translateY(-6px);box-shadow:0 20px 45px #19417815;border-color:#bcd5f3}.num{position:absolute;right:22px;top:20px;color:#b8c6d8;font-size:10px}.svc-icon{width:44px;height:44px;border-radius:11px;background:#edf5ff;display:grid;place-items:center;color:#1261d8;font-size:22px}.cards h3{color:#091c36}.cards p{color:#68778d;font-size:14px}.cards a{text-decoration:none;color:#1261d8;font-size:12px;font-weight:750}.expertise{background:white}.tech{display:flex;flex-wrap:wrap;gap:11px}.tech span{padding:14px 19px;border:1px solid #dfe7f1;border-radius:9px;font-weight:700}.integration-strip{margin-top:40px;padding:25px 28px;border-radius:14px;background:#f5f8fc;display:flex;align-items:center;gap:22px;flex-wrap:wrap}.integration-strip small{color:#1261d8;font-weight:800;letter-spacing:1.5px}.integration-strip i{font-style:normal;color:#a1afc0}.contact{padding-top:30px}.contact-box{padding:55px 60px;border-radius:24px;background:linear-gradient(135deg,#075dd7,#063f91);display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center;color:white}.contact h2{color:white}.contact p{color:#d6e6f9}.contact-side{display:flex;flex-direction:column;gap:14px;align-items:center}.contact-side>a:last-child{color:white;text-decoration:none;font-weight:700}footer{background:#061426;color:#aebed1;padding:45px 0 20px}
.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.2fr;
    gap: 45px;
    align-items: start;
}.footer-logo{color:white}.footer-grid h4{color:white;margin-top:0}
                          .footer-grid a{color:inherit;text-decoration:none}
.copyright {
    border-top: 1px solid #ffffff14;
    margin-top: 40px;
    padding-top: 22px;
    font-size: 11px;
   }
                          .reveal{opacity:0;transform:translateY(18px);transition:opacity .65s,transform .65s}
                          .reveal.visible{opacity:1;transform:none}@media(max-width:900px)
                                                                   {#menu{display:block}#nav{display:none;position:absolute;top:78px;left:0;right:0;background:white;padding:25px 4%;flex-direction:column;align-items:flex-start;border-bottom:1px solid #e5ebf3}#nav.open{display:flex}.hero{padding:65px 0}.hero-grid,.intro-grid,.jewelry-grid,.heading,.contact-box,.footer-grid{grid-template-columns:1fr}.hero-art{height:450px}.cards{grid-template-columns:1fr 1fr}.contact-box{padding:40px}.contact-side{align-items:flex-start}}@media(max-width:560px){.brand-icon{width:37px;height:37px}.hero h1{letter-spacing:-2px}.hero-art{height:390px}.o2{width:360px;height:360px}.o1{width:280px;height:280px}.gem{width:150px;height:150px}.float-card{min-width:140px;padding:12px}.fc2{right:0}.actions{flex-direction:column}.trust{display:none}.feature-list,.cards{grid-template-columns:1fr}.panel-main{grid-template-columns:1fr}.section{padding:70px 0}.integration-strip{align-items:flex-start;flex-direction:column}.integration-strip i{display:none}}
.page-hero {
    padding: 110px 0;
    background: radial-gradient(circle at 80% 30%,#e1f4ff,#f3f8ff 40%,#fff 75%);
    overflow: hidden
}

    .page-hero.compact {
        padding: 95px 0
    }

.page-hero-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 80px;
    align-items: center
}

.page-hero h1 {
    font-size: clamp(46px,5vw,70px);
    line-height: 1.04;
    letter-spacing: -3px;
    color: #091c36;
    margin: 16px 0;
    max-width: 850px
}

    .page-hero h1 span {
        color: #1261d8
    }

.page-hero p {
    font-size: 18px;
    color: #68778d;
    max-width: 720px
}

.page-symbol {
    width: 280px;
    height: 280px;
    margin: auto;
    border-radius: 70px;
    background: linear-gradient(145deg,#0b2a50,#075dd7);
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 70px;
    font-weight: 800;
    box-shadow: 0 30px 70px #0b4e9f35
}

    .page-symbol small {
        font-size: 9px;
        letter-spacing: 2px;
        text-align: center;
        margin-top: 12px
    }

.two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start
}

.prose p {
    font-size: 17px;
    color: #68778d
}

.value-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px
}

    .value-grid article {
        background: white;
        border: 1px solid #e3eaf3;
        border-radius: 16px;
        padding: 30px
    }

        .value-grid article > b {
            color: #1261d8;
            font-size: 11px
        }

    .value-grid p {
        color: #68778d
    }

.dark-section {
    background: #081b33;
    color: #b8c7da
}

    .dark-section h2 {
        color: white
    }

.steps p {
    border-bottom: 1px solid #ffffff18;
    padding: 16px 0;
    margin: 0;
    color: white
}

.steps b {
    color: #62dff3;
    margin-right: 20px
}

.mini-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 45px 50px;
    background: #f5f8fc;
    border-radius: 20px
}

    .mini-cta h2 {
        margin-bottom: 0
    }

.service-detail-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px
}

.detail-card {
    padding: 35px;
    border: 1px solid #e3eaf3;
    border-radius: 18px
}

    .detail-card > span {
        font-size: 10px;
        color: #1261d8;
        font-weight: 800
    }

    .detail-card h2 {
        font-size: 27px;
        letter-spacing: -1px
    }

    .detail-card p {
        color: #68778d
    }

    .detail-card a {
        color: #1261d8;
        text-decoration: none;
        font-weight: 700;
        font-size: 13px
    }

.light-prose p {
    color: #b8c7da
}

.jewelry-hero {
    background: radial-gradient(circle at 75% 50%,#dff5ff,#f0f7ff 40%,#fff 75%)
}

.jewel-map {
    height: 420px;
    position: relative
}

.jewel-core {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 170px;
    height: 170px;
    border-radius: 45px;
    background: linear-gradient(145deg,#0b2a50,#075dd7);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 55px;
    box-shadow: 0 30px 60px #0b4e9f30
}

    .jewel-core small {
        font-size: 8px;
        letter-spacing: 2px;
        text-align: center
    }

.jewel-map > span {
    position: absolute;
    padding: 12px 18px;
    background: white;
    border-radius: 10px;
    box-shadow: 0 15px 35px #19417818;
    font-size: 12px;
    font-weight: 700
}

.jm1 {
    top: 25px;
    left: 15%
}

.jm2 {
    top: 90px;
    right: 3%
}

.jm3 {
    bottom: 75px;
    left: 3%
}

.jm4 {
    bottom: 20px;
    right: 15%
}

.section-head {
    max-width: 760px;
    margin-bottom: 45px
}

.solution-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px
}

    .solution-grid article {
        padding: 28px;
        background: #fff;
        border: 1px solid #e3eaf3;
        border-radius: 16px
    }

        .solution-grid article > b {
            font-size: 25px;
            color: #1261d8
        }

    .solution-grid p {
        color: #68778d;
        font-size: 14px
    }

.industry-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 10px
}

    .industry-chips span {
        padding: 13px 17px;
        background: white;
        border: 1px solid #dfe7f1;
        border-radius: 9px;
        font-weight: 700
    }

.contact-grid {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 80px
}

.contact-info h2 {
    font-size: 42px
}

.contact-item {
    padding: 20px 0;
    border-bottom: 1px solid #e3eaf3
}

    .contact-item small {
        display: block;
        color: #8492a6;
        font-size: 9px;
        letter-spacing: 1.5px;
        margin-bottom: 5px
    }

    .contact-item a {
        color: #1261d8;
        text-decoration: none;
        font-size: 18px;
        font-weight: 700
    }

.contact-form {
    background: #f5f8fc;
    border: 1px solid #e3eaf3;
    padding: 35px;
    border-radius: 18px
}

    .contact-form h3 {
        margin-top: 0
    }

    .contact-form label {
        display: block;
        font-size: 12px;
        font-weight: 700;
        margin: 15px 0
    }

    .contact-form input, .contact-form select, .contact-form textarea {
        width: 100%;
        margin-top: 6px;
        padding: 12px;
        border: 1px solid #cfdae8;
        border-radius: 8px;
        background: white;
        font: inherit
    }

    .contact-form textarea {
        resize: vertical
    }

    .contact-form button {
        border: 0;
        cursor: pointer
    }

.form-note {
    display: block;
    color: #718096;
    margin-top: 15px
}

@media(max-width:850px) {
    .page-hero-grid, .two-col, .contact-grid {
        grid-template-columns: 1fr
    }

    .value-grid, .solution-grid {
        grid-template-columns: 1fr 1fr
    }

    .service-detail-grid {
        grid-template-columns: 1fr
    }

    .mini-cta {
        align-items: flex-start;
        flex-direction: column
    }

    .page-symbol {
        width: 220px;
        height: 220px
    }

    .contact-grid {
        gap: 40px
    }
}

@media(max-width:560px) {
    .value-grid, .solution-grid {
        grid-template-columns: 1fr
    }

    .page-hero h1 {
        letter-spacing: -2px
    }

    .jewel-map {
        height: 360px
    }

    .mini-cta {
        padding: 30px
    }

    .contact-form {
        padding: 25px
    }
}
.success-msg {
    padding: 12px 14px;
    background: #e8faf4;
    border: 1px solid #b9eadb;
    color: #176b56;
    border-radius: 8px;
    margin: 12px 0
}

.validation, .field-validation-error {
    color: #b42318;
    font-size: 12px
}

.contact-form input.input-validation-error, .contact-form textarea.input-validation-error, .contact-form select.input-validation-error {
    border-color: #b42318
}
.hp-field {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important
}

.footer-grid a:hover {
    color: #fff
}

.detail-card a {
    display: inline-block;
    margin-top: 8px
}

/* ==========================================================
   Legal Pages
========================================================== */

.legal-header {
    background: linear-gradient(135deg, #0f172a, #1e3a8a);
    color: #fff;
    text-align: center;
    padding: 70px 20px;
}

    .legal-header h1 {
        color: #fff;
        font-size: 42px;
        margin-bottom: 15px;
    }

    .legal-header p {
        color: rgba(255,255,255,.9);
        max-width: 700px;
        margin: auto;
        font-size: 18px;
    }

.legal-section {
    padding: 60px 20px;
}

    .legal-section .wrap {
        max-width: 900px;
        margin: auto;
    }

.legal-card {
    background: #fff;
    border-radius: 16px;
    padding: 45px;
    box-shadow: 0 15px 40px rgba(0,0,0,.08);
}

.legal-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 35px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e5e7eb;
    color: #555;
    font-size: .95rem;
}

.legal-version {
    background: #eef4ff;
    color: #1e3a8a;
    padding: 4px 12px;
    border-radius: 20px;
    font-weight: 600;
}

.legal-section h2 {
    margin-top: 40px;
    margin-bottom: 15px;
    color: #1e3a8a;
    border-bottom: 2px solid #eef2f7;
    padding-bottom: 8px;
}

.legal-section p {
    line-height: 1.8;
    margin-bottom: 18px;
    color: #444;
}

.legal-section ul {
    margin: 20px 0;
    padding-left: 22px;
}

.legal-section li {
    margin-bottom: 10px;
    line-height: 1.7;
}

.legal-section a {
    color: #2563eb;
    text-decoration: none;
}

    .legal-section a:hover {
        text-decoration: underline;
    }

@media (max-width:768px) {

    .legal-header {
        padding: 50px 20px;
    }

        .legal-header h1 {
            font-size: 2rem;
        }

    .legal-card {
        padding: 25px;
    }

    .legal-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
}
.contact-legal {
    margin-top: 16px;
    font-size: 13px;
    color: #718096;
    line-height: 1.6;
}

    .contact-legal a {
        color: #1261d8;
        text-decoration: none;
        font-weight: 600;
    }

        .contact-legal a:hover {
            text-decoration: underline;
        }

.form-note {
    display: block;
    margin-top: 10px;
    color: #94a3b8;
    font-size: 12px;
}
.footer-tagline {
    margin-top: 22px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.12);
    color: #7fb8ff;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.8;
}

.footer-grid p {
    color: #aebed1;
    line-height: 1.8;
}

.footer-grid a {
    display: inline-block;
    margin-bottom: 6px;
    transition: .2s;
}

    .footer-grid a:hover {
        color: #fff;
        transform: translateX(3px);
    }

.copyright {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footer-right {
    color: #7b8da5;
    font-size: 12px;
}

@media (max-width:768px) {

    .copyright {
        flex-direction: column;
        gap: 10px;
        text-align: center;
    }

    .footer-right {
        font-size: 11px;
    }
}

.footer-tech {
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.08);
    text-align: center;
    color: #7b8da5;
    font-size: 12px;
    letter-spacing: .5px;
}

.back-to-top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    width: 52px;
    height: 52px;
    border: none;
    border-radius: 50%;
    background: #1261d8;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 30px rgba(18,97,216,.35);
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all .3s ease;
    z-index: 999;
}

    .back-to-top.show {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .back-to-top:hover {
        background: #0a4fb7;
        transform: translateY(-3px);
    }

    .back-to-top svg {
        width: 22px;
        height: 22px;
    }

@media (max-width:768px) {
    .back-to-top {
        width: 46px;
        height: 46px;
        right: 18px;
        bottom: 18px;
    }
}
.contact-side > a.btn.light { background: white; color: #075dd7 !important; }
