:root{
    --docs-blue:#083f78;
    --docs-dark:#062f5c;
    --docs-orange:#ff7a3d;
    --docs-sea:#8fd3df;
    --docs-text:#5f7188;
    --docs-border:#e6edf5;
    --docs-soft:#f6f9fd;
    --docs-white:#ffffff;
}

html,
body{
    margin:0;
    padding:0;
    overflow-x:hidden;
    background:#edf4fb;
}

body{
    color:var(--docs-text);
}

.miiti-docs-page{
    overflow:hidden;
    background:
        radial-gradient(circle at top right, rgba(255,122,61,.09), transparent 28%),
        linear-gradient(135deg,#ffffff 0%,#f6fbff 48%,#eef6fb 100%);
}

.docs-container{
    width:min(1180px, calc(100% - 40px));
    margin:0 auto;
}

/* HERO */

.docs-hero{
    position:relative;
    padding:110px 0 66px;
}

.docs-hero::before{
    content:"";
    position:absolute;
    top:-170px;
    right:-150px;
    width:540px;
    height:540px;
    border-radius:50%;
    background:radial-gradient(circle, rgba(143,211,223,.34), transparent 68%);
    pointer-events:none;
}

.docs-hero-content{
    position:relative;
    z-index:2;
    max-width:850px;
    margin:0 auto;
    text-align:center;
}

.docs-tag{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:34px;
    padding:0 18px;
    border-radius:999px;
    color:var(--docs-orange);
    background:rgba(255,122,61,.10);
    border:1px solid rgba(255,122,61,.18);
    font-size:var(--fs-xs);
    font-weight:var(--fw-semibold);
    letter-spacing:2.4px;
    text-transform:uppercase;
}

.docs-hero-content h1{
    margin:20px 0 0;
    color:var(--docs-blue);
    font-size:clamp(var(--fs-3xl),4vw,var(--fs-4xl));
    font-weight:var(--fw-bold);
    line-height:var(--lh-tight);
    letter-spacing:-.04em;
}

.docs-hero-content p{
    max-width:720px;
    margin:20px auto 0;
    color:var(--docs-text);
    font-size:var(--fs-base);
    font-weight:var(--fw-regular);
    line-height:var(--lh-relaxed);
}

/* DOCS */

.docs-section{
    padding:20px 0 80px;
}

.docs-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:22px;
}

.doc-card{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:20px;
    padding:28px;
    border-radius:28px;
    background:#fff;
    border:1px solid rgba(8,63,120,.08);
    box-shadow:0 16px 38px rgba(8,63,120,.07);
    transition:.3s ease;
}

.doc-card::before{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(135deg,rgba(255,122,61,.08),transparent 58%);
    opacity:0;
    transition:.3s ease;
}

.doc-card:hover{
    transform:translateY(-6px);
    box-shadow:0 26px 60px rgba(8,63,120,.12);
}

.doc-card:hover::before{
    opacity:1;
}

.doc-icon,
.doc-content,
.doc-card a{
    position:relative;
    z-index:2;
}

.doc-icon{
    width:58px;
    height:58px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:20px;
    color:#fff;
    background:linear-gradient(135deg,var(--docs-orange),#ff9b66);
    font-size:var(--fs-xl);
    box-shadow:0 16px 30px rgba(255,122,61,.25);
}

.doc-content span{
    display:inline-block;
    margin-bottom:6px;
    color:var(--docs-orange);
    font-size:var(--fs-xs);
    font-weight:var(--fw-semibold);
    letter-spacing:1.8px;
    text-transform:uppercase;
}

.doc-content h3{
    margin:0;
    color:var(--docs-blue);
    font-size:var(--fs-xl);
    font-weight:var(--fw-bold);
    line-height:1.2;
}

.doc-content p{
    margin:10px 0 0;
    color:var(--docs-text);
    font-size:var(--fs-sm);
    line-height:var(--lh-relaxed);
}

.doc-card a{
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 18px;
    border-radius:999px;
    color:#fff;
    background:var(--docs-blue);
    text-decoration:none;
    font-size:var(--fs-sm);
    font-weight:var(--fw-semibold);
    transition:.28s ease;
    white-space:nowrap;
}

.doc-card a:hover{
    transform:translateY(-3px);
    background:var(--docs-orange);
}

/* CTA */

.docs-cta{
    padding:0 0 80px;
}

.docs-cta-box{
    position:relative;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    padding:44px;
    border-radius:30px;
    color:#fff;
    background:
        radial-gradient(circle at top right, rgba(255,122,61,.24), transparent 30%),
        linear-gradient(135deg,#083f78,#0a5598);
    box-shadow:0 26px 68px rgba(8,63,120,.20);
}

.docs-cta-box span{
    display:inline-block;
    margin-bottom:10px;
    color:#ffb089;
    font-size:var(--fs-xs);
    font-weight:var(--fw-semibold);
    letter-spacing:2px;
    text-transform:uppercase;
}

.docs-cta-box h2{
    margin:0;
    color:#fff;
    font-size:var(--fs-3xl);
    font-weight:var(--fw-bold);
    line-height:1.18;
    letter-spacing:-.035em;
}

.docs-cta-box p{
    max-width:650px;
    margin:12px 0 0;
    color:rgba(255,255,255,.78);
    font-size:var(--fs-base);
    line-height:var(--lh-relaxed);
}

.docs-cta-box a{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    padding:14px 22px;
    border-radius:999px;
    color:var(--docs-blue);
    background:#fff;
    text-decoration:none;
    font-size:var(--fs-sm);
    font-weight:var(--fw-semibold);
    transition:.28s ease;
}

.docs-cta-box a:hover{
    transform:translateY(-4px);
    color:#fff;
    background:var(--docs-orange);
}

/* RESPONSIVE */

@media(max-width:1100px){
    .docs-grid{
        grid-template-columns:1fr;
    }

    .docs-cta-box{
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:700px){
    .docs-container{
        width:min(100% - 28px,1180px);
    }

    .docs-hero{
        padding:95px 0 50px;
    }

    .docs-section{
        padding-bottom:60px;
    }

    .doc-card{
        grid-template-columns:1fr;
        align-items:flex-start;
        padding:24px;
        border-radius:24px;
    }

    .doc-card a{
        width:100%;
    }

    .docs-cta{
        padding-bottom:60px;
    }

    .docs-cta-box{
        padding:28px;
        border-radius:24px;
    }

    .docs-cta-box h2{
        font-size:var(--fs-2xl);
    }
}