.elementor-57 .elementor-element.elementor-element-1ce13a4{--display:flex;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-91a75fb */<style>

/* =========================================
   GLOBAL
========================================= */

.blesson-portfolio {

    --dark: #03131e;
    --dark2: #061b2a;
    --blue: #0099ff;
    --blue2: #007cff;
    --white: #ffffff;
    --text: #18212a;
    --light: #f5f9fd;

    width: 100%;

    overflow: hidden;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    color: var(--text);

    line-height: 1.5;
}

.blesson-portfolio *,
.blesson-portfolio *::before,
.blesson-portfolio *::after {
    box-sizing: border-box;
}

.blesson-portfolio img {

    display: block;

    max-width: 100%;

    width: 100%;
}

.blesson-portfolio a {
    text-decoration: none;
}

.bp-container {

    width: 90%;

    max-width: 1280px;

    margin-left: auto;
    margin-right: auto;
}


/* =========================================
   HERO
========================================= */

.bp-hero {

    position: relative;

    min-height: 560px;

    display: flex;

    align-items: center;

    overflow: hidden;

    color: white;

    background: #03131e;
}


/* HERO IMAGE */

.bp-hero-bg {

    position: absolute;

    inset: 0;

    z-index: 0;

    overflow: hidden;
}

.bp-hero-bg img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    object-position: center center;
}


/* HERO DARK GRADIENT */

.bp-hero-overlay {

    position: absolute;

    inset: 0;

    z-index: 1;

    background:

        linear-gradient(
            90deg,
            #03131e 0%,
            rgba(3,19,30,.96) 25%,
            rgba(3,19,30,.72) 48%,
            rgba(3,19,30,.18) 100%
        );
}


/* HERO CONTENT */

.bp-hero-container {

    position: relative;

    z-index: 2;
}

.bp-hero-content {

    width: 52%;

    padding-top: 50px;
}

.bp-small-title,
.bp-section-label {

    color: #0099ff;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 4px;

    margin-bottom: 10px;
}

.bp-hero h1 {

    margin: 0;

    color: #ffffff;

    font-size: clamp(42px, 5vw, 70px);

    line-height: 1.05;

    font-weight: 800;
}

.bp-hero h1 span {

    color: #008cff;
}

.bp-hero h2 {

    margin: 12px 0 18px;

    color: white;

    font-size: clamp(19px, 2vw, 28px);

    font-weight: 400;
}

.bp-blue-line {

    width: 55px;

    height: 3px;

    margin: 18px 0;

    background: #009cff;
}

.bp-hero p {

    max-width: 480px;

    margin: 0 0 25px;

    color: rgba(255,255,255,.85);

    font-size: 14px;

    line-height: 1.7;
}


/* =========================================
   BUTTONS
========================================= */

.bp-buttons {

    display: flex;

    flex-wrap: wrap;

    gap: 14px;
}

.bp-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    min-height: 43px;

    padding: 0 24px;

    border-radius: 25px;

    font-size: 13px;

    transition: .3s ease;
}

.bp-btn-primary {

    color: white !important;

    background:
        linear-gradient(
            135deg,
            #009fff,
            #0079ed
        );

    box-shadow:
        0 8px 25px rgba(0,145,255,.22);
}

.bp-btn-primary:hover {

    color: white !important;

    transform: translateY(-3px);
}

.bp-btn-outline {

    color: white !important;

    border: 1px solid rgba(255,255,255,.7);

    background: transparent;
}

.bp-btn-outline:hover {

    color: white !important;

    border-color: #009cff;

    background: rgba(0,156,255,.1);
}


/* =========================================
   ABOUT
========================================= */

.bp-about {

    padding: 70px 0;

    color: white;

    background: #03131e;
}

.bp-about-grid {

    display: grid;

    grid-template-columns:
        280px
        1fr
        150px;

    gap: 55px;

    align-items: center;
}


/* ABOUT IMAGE */

.bp-about-image {

    position: relative;
}

.bp-about-image::before {

    content: "";

    position: absolute;

    width: 100%;

    height: 100%;

    left: -12px;

    top: 12px;

    border: 2px solid #009cff;

    border-radius: 8px;

    z-index: 0;
}

.bp-about-image img {

    position: relative;

    z-index: 2;

    width: 100%;

    aspect-ratio: 1 / 1;

    object-fit: cover;

    border-radius: 7px;
}


/* ABOUT TEXT */

.bp-about-content h2 {

    margin: 0 0 15px;

    color: white;

    font-size: clamp(25px,3vw,37px);

    line-height: 1.15;
}

.bp-about-content h2 span {

    color: #008fff;
}

.bp-about-content p {

    max-width: 650px;

    margin: 0 0 12px;

    color: rgba(255,255,255,.78);

    font-size: 13px;

    line-height: 1.8;
}

.bp-about-info {

    display: flex;

    flex-wrap: wrap;

    gap: 14px 25px;

    margin-top: 25px;

    color: rgba(255,255,255,.8);

    font-size: 11px;
}

.bp-info-icon {

    color: #009cff;
}

.bp-status {

    display: inline-block;

    width: 7px;

    height: 7px;

    margin-right: 5px;

    background: #18c873;

    border-radius: 50%;
}


/* ABOUT SLOGAN */

.bp-about-slogan {

    color: #008cff;

    font-family:
        "Brush Script MT",
        "Segoe Script",
        cursive;

    font-size: 31px;

    line-height: 1.05;

    transform: rotate(-5deg);
}


/* =========================================
   SKILLS
========================================= */

.bp-skills {

    padding: 65px 0;

    background: #f5f9fd;
}

.bp-skills-grid {

    display: grid;

    grid-template-columns:
        280px
        1fr;

    gap: 80px;

    align-items: center;
}

.bp-skills-intro h2,
.bp-services h2 {

    margin: 0 0 12px;

    color: #101820;

    font-size: clamp(28px,3vw,40px);

    line-height: 1.15;
}

.bp-skills-intro p {

    margin-bottom: 20px;

    color: #59636d;

    font-size: 13px;

    line-height: 1.7;
}

.bp-outline-button {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 10px 20px;

    color: #007cdf !important;

    border: 1px solid #132333;

    border-radius: 22px;

    font-size: 12px;
}

.bp-skills-list {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 25px 30px;
}

.bp-skill {

    display: flex;

    align-items: center;

    gap: 12px;

    color: #29323a;

    font-size: 12px;
}

.bp-skill-icon {

    width: 43px;

    height: 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    flex-shrink: 0;

    border-radius: 12px;

    background: #e4f2ff;

    color: #008dff;

    font-size: 11px;

    font-weight: 700;
}


/* =========================================
   PORTFOLIO
========================================= */

.bp-portfolio {

    padding: 65px 0;

    color: white;

    background: #03131e;
}

.bp-portfolio-heading {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    margin-bottom: 30px;
}

.bp-portfolio h2 {

    margin: 0;

    color: white;

    font-size: 40px;
}

.bp-portfolio-heading > a {

    color: #009cff !important;

    font-size: 11px;
}

.bp-project-grid {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 18px;
}

.bp-project {

    overflow: hidden;

    border: 1px solid rgba(255,255,255,.15);

    border-radius: 7px;

    background: #071c2b;

    transition: .3s ease;
}

.bp-project:hover {

    transform: translateY(-5px);

    border-color: #008fff;
}

.bp-project-image {

    position: relative;

    height: 170px;

    overflow: hidden;
}

.bp-project-image img {

    width: 100%;

    height: 100%;

    object-fit: cover;

    transition: .5s ease;
}

.bp-project:hover img {

    transform: scale(1.05);
}

.bp-project-image span {

    position: absolute;

    left: 10px;

    bottom: 10px;

    padding: 5px 9px;

    color: white;

    background: #087fe4;

    border-radius: 12px;

    font-size: 9px;
}

.bp-project-content {

    position: relative;

    padding: 14px;
}

.bp-project-content h3 {

    margin: 0 0 5px;

    color: white;

    font-size: 14px;
}

.bp-project-content p {

    margin: 0;

    padding-right: 25px;

    color: rgba(255,255,255,.65);

    font-size: 10px;

    line-height: 1.5;
}

.bp-project-content > a {

    position: absolute;

    right: 14px;

    bottom: 14px;

    color: #009cff !important;

    font-size: 22px;
}


/* =========================================
   SERVICES
========================================= */

.bp-services {

    padding: 65px 0;

    background: #f5f9fd;
}

.bp-services-grid {

    display: grid;

    grid-template-columns:
        1.5fr
        .8fr;

    gap: 60px;

    align-items: center;
}

.bp-services-content > p {

    max-width: 500px;

    margin-bottom: 30px;

    color: #59636d;

    font-size: 13px;

    line-height: 1.7;
}

.bp-service-list {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 25px;
}

.bp-service {

    display: flex;

    gap: 13px;

    align-items: flex-start;
}

.bp-service-icon {

    flex: 0 0 40px;

    width: 40px;

    height: 40px;

    display: flex;

    align-items: center;

    justify-content: center;

    color: #008cff;

    background: #e2f1ff;

    border-radius: 10px;

    font-size: 10px;

    font-weight: 700;
}

.bp-service h3 {

    margin: 0 0 3px;

    color: #1b252e;

    font-size: 12px;
}

.bp-service p {

    margin: 0;

    color: #6d7882;

    font-size: 10px;
}


/* =========================================
   CONTACT
========================================= */

.bp-contact-card {

    padding: 32px;

    overflow: hidden;

    color: white;

    border-radius: 9px;

    background:
        linear-gradient(
            135deg,
            #06263c,
            #03131e
        );
}

.bp-contact-card h2 {

    margin: 0 0 10px;

    color: white;

    font-size: 25px;
}

.bp-contact-card p {

    margin-bottom: 20px;

    color: rgba(255,255,255,.75);

    font-size: 11px;

    line-height: 1.7;
}

.bp-contact-social {

    display: flex;

    gap: 17px;

    margin-top: 22px;
}

.bp-contact-social a {

    color: white !important;

    font-size: 11px;

    transition: .3s;
}

.bp-contact-social a:hover {

    color: #009cff !important;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 1000px) {

    .bp-container {
        width: 88%;
    }

    .bp-about-grid {

        grid-template-columns:
            240px
            1fr;

        gap: 35px;
    }

    .bp-about-slogan {
        display: none;
    }

    .bp-skills-grid {

        grid-template-columns: 1fr;

        gap: 35px;
    }

    .bp-skills-list {

        grid-template-columns:
            repeat(4, 1fr);
    }

    .bp-project-grid {

        grid-template-columns:
            repeat(2, 1fr);
    }

    .bp-services-grid {

        grid-template-columns: 1fr;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 700px) {

    .bp-container {
        width: 90%;
    }


    /* HERO */

    .bp-hero {

        min-height: 650px;
    }

    .bp-hero-bg img {

        object-position: 68% center;
    }

    .bp-hero-overlay {

        background:
            linear-gradient(
                90deg,
                rgba(3,19,30,.98) 0%,
                rgba(3,19,30,.85) 50%,
                rgba(3,19,30,.35) 100%
            );
    }

    .bp-hero-content {

        width: 100%;

        padding-top: 50px;
    }

    .bp-hero h1 {

        font-size: 42px;
    }

    .bp-hero h2 {

        font-size: 19px;
    }

    .bp-hero p {

        max-width: 340px;
    }


    /* ABOUT */

    .bp-about {

        padding: 50px 0;
    }

    .bp-about-grid {

        display: flex;

        flex-direction: column;

        gap: 30px;
    }

    .bp-about-image {

        width: 80%;

        margin: auto;
    }

    .bp-about-content h2 {

        font-size: 28px;
    }

    .bp-about-slogan {

        display: none;
    }


    /* SKILLS */

    .bp-skills {

        padding: 50px 0;
    }

    .bp-skills-list {

        grid-template-columns:
            repeat(2, 1fr);

        gap: 20px 10px;
    }


    /* PORTFOLIO */

    .bp-portfolio {

        padding: 50px 0;
    }

    .bp-portfolio-heading {

        align-items: flex-start;

        flex-direction: column;

        gap: 10px;
    }

    .bp-portfolio h2 {

        font-size: 32px;
    }

    .bp-project-grid {

        grid-template-columns: 1fr;

        gap: 20px;
    }

    .bp-project-image {

        height: 210px;
    }


    /* SERVICES */

    .bp-services {

        padding: 50px 0;
    }

    .bp-service-list {

        grid-template-columns: 1fr;

        gap: 22px;
    }

    .bp-contact-card {

        padding: 25px;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 400px) {

    .bp-hero h1 {

        font-size: 35px;
    }

    .bp-buttons {

        flex-direction: column;

        align-items: flex-start;
    }

    .bp-skills-list {

        grid-template-columns: 1fr;
    }
}

<\/style>/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-1ce13a4 */<style>

/* ==========================================
   GLOBAL
========================================== */

.blesson-portfolio {
    --dark: #03131e;
    --dark2: #061b2a;
    --blue: #0099ff;
    --blue2: #007cff;
    --white: #ffffff;
    --text: #18212a;
    --light: #f4f8fc;

    width: 100%;
    overflow: hidden;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    color: var(--text);

    line-height: 1.5;
}

.blesson-portfolio *,
.blesson-portfolio *::before,
.blesson-portfolio *::after {
    box-sizing: border-box;
}

.blesson-portfolio img {
    display: block;
    width: 100%;
    max-width: 100%;
}

.bp-container {
    width: 90%;
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
}


/* ==========================================
   HERO
========================================== */

.bp-hero {

    position: relative;

    min-height: 560px;

    display: flex;
    align-items: center;

    background-image:
        url("YOUR-HERO-IMAGE-URL");

    background-size: cover;
    background-position: center right;

    color: white;
}

.bp-hero-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            #03131e 0%,
            rgba(3,19,30,.94) 28%,
            rgba(3,19,30,.55) 52%,
            rgba(3,19,30,.05) 100%
        );
}

.bp-hero-container {
    position: relative;
    z-index: 2;
}

.bp-hero-content {
    width: 52%;
    padding-top: 60px;
}

.bp-small-title,
.bp-section-label {

    color: #0099ff;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 4px;

    margin-bottom: 10px;
}

.bp-hero h1 {

    margin: 0;

    font-size: clamp(42px, 5vw, 72px);

    line-height: 1.05;

    font-weight: 800;

    color: #ffffff;
}

.bp-hero h1 span {
    color: #008cff;
}

.bp-hero h2 {

    margin: 10px 0 20px;

    font-size: clamp(19px, 2vw, 29px);

    font-weight: 400;

    color: #ffffff;
}

.bp-blue-line {

    width: 55px;
    height: 3px;

    background: #009cff;

    margin: 18px 0;
}

.bp-hero p {

    max-width: 480px;

    margin: 0 0 25px;

    color: rgba(255,255,255,.85);

    font-size: 14px;

    line-height: 1.7;
}


/* ==========================================
   BUTTONS
========================================== */

.bp-buttons {

    display: flex;

    flex-wrap: wrap;

    gap: 14px;
}

.bp-btn {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 12px;

    min-height: 43px;

    padding: 0 24px;

    border-radius: 25px;

    text-decoration: none !important;

    font-size: 13px;

    transition: .3s ease;
}

.bp-btn-primary {

    color: white !important;

    background:
        linear-gradient(
            135deg,
            #009fff,
            #0079ed
        );

    box-shadow:
        0 8px 25px rgba(0,145,255,.22);
}

.bp-btn-primary:hover {

    transform: translateY(-3px);

    color: white !important;
}

.bp-btn-outline {

    color: white !important;

    border: 1px solid rgba(255,255,255,.7);

    background: transparent;
}

.bp-btn-outline:hover {

    color: white !important;

    border-color: #009cff;

    background: rgba(0,156,255,.1);
}


/* ==========================================
   ABOUT
========================================== */

.bp-about {

    background: #03131e;

    color: white;

    padding: 70px 0;
}

.bp-about-grid {

    display: grid;

    grid-template-columns:
        280px
        1fr
        150px;

    gap: 55px;

    align-items: center;
}

.bp-about-image {

    position: relative;
}

.bp-about-image::before {

    content: "";

    position: absolute;

    width: 100%;
    height: 100%;

    left: -12px;
    top: 12px;

    border: 2px solid #009cff;

    border-radius: 8px;

    z-index: 0;
}

.bp-about-image img {

    position: relative;

    z-index: 2;

    aspect-ratio: 1 / 1;

    object-fit: cover;

    border-radius: 7px;
}

.bp-about-content h2 {

    margin: 0 0 15px;

    color: white;

    font-size: clamp(25px,3vw,37px);

    line-height: 1.15;
}

.bp-about-content h2 span {
    color: #008fff;
}

.bp-about-content p {

    max-width: 650px;

    margin: 0 0 12px;

    color: rgba(255,255,255,.78);

    font-size: 13px;

    line-height: 1.8;
}

.bp-about-info {

    display: flex;

    flex-wrap: wrap;

    gap: 14px 25px;

    margin-top: 25px;

    color: rgba(255,255,255,.8);

    font-size: 11px;
}

.bp-info-icon {
    color: #009cff;
}

.bp-status {

    display: inline-block;

    width: 7px;
    height: 7px;

    margin-right: 5px;

    background: #18c873;

    border-radius: 50%;
}

.bp-about-slogan {

    color: #008cff;

    font-family:
        "Brush Script MT",
        "Segoe Script",
        cursive;

    font-size: 31px;

    line-height: 1.05;

    transform: rotate(-5deg);
}


/* ==========================================
   SKILLS
========================================== */

.bp-skills {

    background: #f5f9fd;

    padding: 65px 0;
}

.bp-skills-grid {

    display: grid;

    grid-template-columns:
        280px
        1fr;

    gap: 80px;

    align-items: center;
}

.bp-skills-intro h2,
.bp-portfolio h2,
.bp-services h2 {

    margin: 0 0 12px;

    font-size: clamp(28px,3vw,40px);

    line-height: 1.15;

    color: #101820;
}

.bp-skills-intro p {

    color: #59636d;

    font-size: 13px;

    line-height: 1.7;

    margin-bottom: 20px;
}

.bp-outline-button {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    padding: 10px 20px;

    border: 1px solid #132333;

    border-radius: 22px;

    color: #007cdf !important;

    text-decoration: none !important;

    font-size: 12px;
}

.bp-skills-list {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 25px 30px;
}

.bp-skill {

    display: flex;

    align-items: center;

    gap: 12px;

    color: #29323a;

    font-size: 12px;
}

.bp-skill-icon {

    width: 43px;
    height: 43px;

    display: flex;

    align-items: center;

    justify-content: center;

    border-radius: 12px;

    font-weight: 700;

    background: #e4f2ff;

    color: #008dff;
}


/* ==========================================
   PORTFOLIO
========================================== */

.bp-portfolio {

    background: #03131e;

    color: white;

    padding: 65px 0;
}

.bp-portfolio-heading {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    margin-bottom: 30px;
}

.bp-portfolio h2 {
    color: white;
}

.bp-portfolio-heading > a {

    color: #009cff !important;

    text-decoration: none !important;

    font-size: 11px;
}

.bp-project-grid {

    display: grid;

    grid-template-columns:
        repeat(4, 1fr);

    gap: 18px;
}

.bp-project {

    overflow: hidden;

    border: 1px solid rgba(255,255,255,.15);

    border-radius: 7px;

    background: #071c2b;

    transition: .3s ease;
}

.bp-project:hover {

    transform: translateY(-5px);

    border-color: #008fff;
}

.bp-project-image {

    position: relative;

    height: 170px;

    overflow: hidden;
}

.bp-project-image img {

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: .5s ease;
}

.bp-project:hover img {
    transform: scale(1.05);
}

.bp-project-image span {

    position: absolute;

    bottom: 10px;
    left: 10px;

    padding: 5px 9px;

    border-radius: 12px;

    background: #087fe4;

    color: white;

    font-size: 9px;
}

.bp-project-content {

    position: relative;

    padding: 14px;
}

.bp-project-content h3 {

    margin: 0 0 5px;

    color: white;

    font-size: 14px;
}

.bp-project-content p {

    margin: 0;

    color: rgba(255,255,255,.65);

    font-size: 10px;

    line-height: 1.5;

    padding-right: 25px;
}

.bp-project-content > a {

    position: absolute;

    right: 14px;
    bottom: 14px;

    color: #009cff !important;

    font-size: 22px;

    text-decoration: none !important;
}


/* ==========================================
   SERVICES
========================================== */

.bp-services {

    background: #f5f9fd;

    padding: 65px 0;
}

.bp-services-grid {

    display: grid;

    grid-template-columns:
        1.5fr
        .8fr;

    gap: 60px;

    align-items: center;
}

.bp-services-content > p {

    max-width: 500px;

    color: #59636d;

    font-size: 13px;

    line-height: 1.7;

    margin-bottom: 30px;
}

.bp-service-list {

    display: grid;

    grid-template-columns:
        repeat(2, 1fr);

    gap: 25px;
}

.bp-service {

    display: flex;

    gap: 13px;

    align-items: flex-start;
}

.bp-service-icon {

    flex: 0 0 40px;

    width: 40px;
    height: 40px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: #e2f1ff;

    color: #008cff;

    font-weight: 700;
}

.bp-service h3 {

    margin: 0 0 3px;

    color: #1b252e;

    font-size: 12px;
}

.bp-service p {

    margin: 0;

    color: #6d7882;

    font-size: 10px;
}


/* ==========================================
   CONTACT CARD
========================================== */

.bp-contact-card {

    position: relative;

    overflow: hidden;

    padding: 32px;

    border-radius: 9px;

    color: white;

    background:
        linear-gradient(
            rgba(3,19,30,.87),
            rgba(3,19,30,.94)
        ),
        url("YOUR-CONTACT-BACKGROUND-URL");

    background-size: cover;

    background-position: center;
}

.bp-contact-card h2 {

    margin: 0 0 10px;

    color: white;

    font-size: 25px;
}

.bp-contact-card p {

    color: rgba(255,255,255,.75);

    font-size: 11px;

    line-height: 1.7;

    margin-bottom: 20px;
}

.bp-contact-social {

    display: flex;

    gap: 17px;

    margin-top: 22px;
}

.bp-contact-social a {

    color: white !important;

    text-decoration: none !important;

    font-size: 13px;

    transition: .3s;
}

.bp-contact-social a:hover {
    color: #009cff !important;
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 1000px) {

    .bp-container {
        width: 88%;
    }

    .bp-about-grid {

        grid-template-columns:
            240px
            1fr;

        gap: 35px;
    }

    .bp-about-slogan {
        display: none;
    }

    .bp-skills-grid {
        grid-template-columns: 1fr;

        gap: 35px;
    }

    .bp-skills-list {
        grid-template-columns:
            repeat(4, 1fr);
    }

    .bp-project-grid {
        grid-template-columns:
            repeat(2, 1fr);
    }

    .bp-services-grid {
        grid-template-columns: 1fr;
    }

}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 700px) {

    .bp-container {
        width: 90%;
    }


    /* HERO */

    .bp-hero {

        min-height: 650px;

        background-position:
            68% center;
    }

    .bp-hero-overlay {

        background:
            linear-gradient(
                90deg,
                rgba(3,19,30,.98) 0%,
                rgba(3,19,30,.85) 50%,
                rgba(3,19,30,.35) 100%
            );
    }

    .bp-hero-content {

        width: 100%;

        padding-top: 60px;
    }

    .bp-hero h1 {
        font-size: 42px;
    }

    .bp-hero h2 {
        font-size: 19px;
    }

    .bp-hero p {
        max-width: 340px;
    }


    /* ABOUT */

    .bp-about {
        padding: 50px 0;
    }

    .bp-about-grid {

        display: flex;

        flex-direction: column;

        align-items: stretch;

        gap: 30px;
    }

    .bp-about-image {
        width: 80%;
        margin: auto;
    }

    .bp-about-content h2 {
        font-size: 28px;
    }


    /* SKILLS */

    .bp-skills {
        padding: 50px 0;
    }

    .bp-skills-list {

        grid-template-columns:
            repeat(2, 1fr);

        gap: 20px 10px;
    }


    /* PORTFOLIO */

    .bp-portfolio {
        padding: 50px 0;
    }

    .bp-portfolio-heading {

        align-items: flex-start;

        flex-direction: column;

        gap: 10px;
    }

    .bp-project-grid {

        grid-template-columns: 1fr;

        gap: 20px;
    }

    .bp-project-image {
        height: 210px;
    }


    /* SERVICES */

    .bp-services {
        padding: 50px 0;
    }

    .bp-service-list {

        grid-template-columns: 1fr;

        gap: 22px;
    }

    .bp-contact-card {
        padding: 25px;
    }

}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 400px) {

    .bp-hero h1 {
        font-size: 35px;
    }

    .bp-buttons {
        flex-direction: column;

        align-items: flex-start;
    }

    .bp-btn {
        width: auto;
    }

    .bp-skills-list {
        grid-template-columns: 1fr;
    }

}

<\/style>/* End custom CSS */