/*--------------------------------------------------------------------------------

	# Minsoon Template 1.0 - Mar 16, 2018
	# ------------------------------------------------------------------------
	# Designed & coded by MegaDrupal
	# Websites:  http://www.megadrupal.com -  Email: info@megadrupal.com

----------------------------------------------------------------------------------

	1. base
	2. form-item
	3. general_header
	4. general_service
	5. general_hero
	6. fss
	7. particles.js
	8. core_quietflow
	9. Ribbon background
	10. core_smoky
	11. core_vegas
	12. youtube
	13. socialicon
	14. Reset Row Boostrap
	15. Margin Padding
	16. CountDown

--------------------------------------------------------------------------------*/

/* 1. base
--------------------------------------------------------------------------------*/

a[disabled], input[disabled], button[disabled], textarea[disabled] {
    cursor: not-allowed !important;
    opacity: .5 !important;
}

a:focus, input:focus, button:focus, textarea:focus {
    outline: none;
}

p {
    margin-top: 0;
    margin-bottom: 10px;
}

img {
    max-width: 100%;
    height: auto;
    border: 0;
}

.page-wrap {
    overflow: hidden;
}

.md-section {
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    z-index: 9;
    padding-top: 50px;
    padding-bottom: 50px;
}

@media (min-width: 320px) {
    .md-section {
        padding-top: calc(6.81818vw + 28.18182px);
        padding-bottom: calc(6.81818vw + 28.18182px);
    }
}

@media (min-width: 1200px) {
    .md-section {
        padding-top: 110px;
        padding-bottom: 110px;
    }
}

.md-text-left, .text-left {
    text-align: left !important;
}

.md-text-center, .text-center {
    text-align: center !important;
}

.md-text-right, .text-right {
    text-align: right !important;
}

.md-text-underline {
    text-decoration: underline !important;
}

.md-round {
    border-radius: 5px !important;
}

.md-pill {
    border-radius: 50% !important;
}

.md-tb {
    display: table;
    width: 100%;
    height: 100%;
}

.md-tb__cell {
    display: table-cell;
    vertical-align: middle;
}

.md-overlay, [data-gradient-bg] > canvas {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
}

.md-overlay {
    background-color: rgba(0, 0, 0, .4);
}

.bg-fixed {
    background-attachment: fixed;
}

.md-bg-cover {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}

.full {
    width: 100%;
    height: 100vh;
}

.embed-responsive {
    position: relative;
    display: block;
    height: 0;
    padding: 0;
    overflow: hidden;
}

.embed-responsive.embed-responsive-4by3 {
    padding-bottom: 75%;
}

.embed-responsive.embed-responsive-16by9 {
    padding-bottom: 56.25%;
}

.embed-responsive .embed-responsive-item, .embed-responsive iframe,
.embed-responsive embed, .embed-responsive object {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* table Responsive */

.table-responsive-01 {
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
}

.table-responsive-01 table > thead > tr > th,
.table-responsive-01 table > thead > tr > td,
.table-responsive-01 table > tbody > tr > th,
.table-responsive-01 table > tbody > tr > td,
.table-responsive-01 table > tfoot > tr > th,
.table-responsive-01 table > tfoot > tr > td {
    white-space: nowrap;
}

@media (max-width: 991px) {
    .table-responsive-02 table, .table-responsive-02 thead,
    .table-responsive-02 tbody, .table-responsive-02 th, .table-responsive-02 td,
    .table-responsive-02 tr {
        display: block;
    }

    .table-responsive-02 thead {
        border-top: 1px solid #e8e8e8 !important;
        border-bottom: none !important;
    }

    .table-responsive-02 thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px;
    }

    .table-responsive-02 tr {
        padding: 15px 0;
        border-left: 1px solid #e8e8e8;
        border-right: 1px solid #e8e8e8;
    }

    .table-responsive-02 td {
        position: relative;
        padding: 15px 10px 15px 30% !important;
    }

    .table-responsive-02 td:before {
        content: attr(data-th);
        position: absolute;
        top: 15px;
        left: 20px;
        width: 25%;
        padding-right: 10px;
    }
}

a {
    color: inherit;
}

a:hover {
    text-decoration: none;
    color: #426efc;
}

a:focus {
    text-decoration: none;
}

::-moz-selection {
    color: #fff;
    background-color: #121113;
}

::selection {
    color: #fff;
    background-color: #121113;
}

.md-section {
    padding-top: 65px;
    padding-bottom: 65px;
}

@media (min-width: 320px) {
    .md-section {
        padding-top: calc(13.63636vw + 21.36364px);
        padding-bottom: calc(13.63636vw + 21.36364px);
    }
}

@media (min-width: 1200px) {
    .md-section {
        padding-top: 185px;
        padding-bottom: 185px;
    }
}

/* 2. form-item
--------------------------------------------------------------------------------*/

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]),
textarea, select {
    box-shadow: none;
    outline: none;
    margin: 0;
    border-radius: 10px;
    padding: 0 15px;
    line-height: 46px;
    border: 1px solid #ccc;
    color: #000;
    font-size: 14px;
    vertical-align: middle;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"])::-webkit-input-placeholder,
textarea::-webkit-input-placeholder, select::-webkit-input-placeholder {
    color: #000;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"])::-moz-placeholder,
textarea::-moz-placeholder, select::-moz-placeholder {
    color: #000;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]):-moz-placeholder,
textarea:-moz-placeholder, select:-moz-placeholder {
    color: #000;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]):-ms-input-placeholder,
textarea:-ms-input-placeholder, select:-ms-input-placeholder {
    color: #000;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]):focus,
textarea:focus, select:focus {
    border: 1px solid red;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]):focus::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder,
select:focus::-webkit-input-placeholder {
    color: blue;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]):focus::-moz-placeholder,
textarea:focus::-moz-placeholder, select:focus::-moz-placeholder {
    color: blue;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]):focus:-moz-placeholder,
textarea:focus:-moz-placeholder, select:focus:-moz-placeholder {
    color: blue;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]):focus:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder, select:focus:-ms-input-placeholder {
    color: blue;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"])[disabled],
textarea[disabled], select[disabled] {
    opacity: .65;
    cursor: not-allowed;
}

input:not([type="button"]):not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="color"]),
textarea {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

input[type="checkbox"], input[type="radio"] {
    width: auto !important;
}

/* Typography */

body {
    margin: 0;
    padding: 0;
    line-height: 1.6;
    font-size: 16px;
    font-weight: 400;
    font-family: "Roboto", sans-serif;
    color: #0c0c0e;
}

body.md-skin-dark {
    background-color: #303036;
}

.md-skin-dark {
    color: rgba(255, 255, 255, .9);
}

.md-skin-dark h1, .md-skin-dark h2, .md-skin-dark h3, .md-skin-dark h4,
.md-skin-dark h5, .md-skin-dark h6 {
    color: #fff;
}

a {
    transition: all .3s ease;
}

a, input, textarea, select {
    outline: none;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
    line-height: 1.4em;
    color: #0c0c0e;
    font-family: "Work Sans", sans-serif;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
    color: inherit;
    text-decoration: none;
}

h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover {
    color: inherit;
    text-decoration: none;
}

h1 {
    font-size: 65px;
}

h2 {
    font-size: 50px;
}

h3 {
    font-size: 40px;
}

h4 {
    font-size: 35px;
}

h5 {
    font-size: 25px;
}

h6 {
    font-size: 20px;
}

h3, h1, h2, h3 {
    margin-top: 30px;
    margin-bottom: 15px;
}

h4, h5, h6 {
    margin-top: 15px;
    margin-bottom: 10px;
}

img {
    max-width: 100%;
}

blockquote {
    border: 0;
    font-size: 25px;
    padding: 0 0 0 40px;
    margin: 15px 20px 20px;
    position: relative;
    line-height: 1.4;
    color: #03358f;
    font-family: "Roboto", sans-serif;
}

@media (min-width: 992px) {
    blockquote {
        padding: 0 0 0 70px;
    }
}

blockquote:before {
    content: "\F10D";
    font-family: FontAwesome;
    font-size: 30px;
    line-height: 1.2;
    top: 0;
    left: 0;
    position: absolute;
    color: #c9c9cf;
}

@media (min-width: 992px) {
    blockquote:before {
        font-size: 50px;
    }
}

blockquote p:last-child {
    margin-bottom: 0;
}

blockquote i {
    font-size: 40px !important;
    margin-bottom: 20px;
}

blockquote cite {
    display: block;
    font-size: 16px;
    font-style: normal;
    font-family: "Roboto", sans-serif;
    margin-top: 15px;
}

@media (min-width: 768px) {
    blockquote {
        font-size: 25px;
        margin: 15px 40px 20px;
    }
}

abbr {
    color: #67dee8;
    border-width: 2px;
}

mark, .mark {
    background-color: #03358f;
    color: #f1f1f3;
}

/* 3. general_header
--------------------------------------------------------------------------------*/

.header {
    padding: 15px 15px;
}

.header__left {
    display: none;
}

.header__left > span {
    font-weight: 300;
}

.header__left > span + span:before {
    content: '|';
    display: inline-block;
    margin: 0 40px;
}

.header__social {
    text-align: center;
}

.header__social a {
    width: 30px;
    height: 30px;
    line-height: 28px;
    font-size: 12px;
    border-color: rgba(255, 255, 255, .5);
}

.header__social a:hover {
    background-color: #fff;
    color: #778;
    border-color: #fff;
}

@media (min-width: 993px) {
    .header {
        padding: 20px 40px;
        margin-bottom: 0;
    }
}

@media (min-width: 1201px) {
    .header__left {
        display: block;
    }

    .header__social {
        text-align: right;
    }
}

@media (min-width: 1401px) {
    .header {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-align: center;
        align-items: center;
        padding: 20px 70px;
    }
}

/* 4. general_service
--------------------------------------------------------------------------------*/

.service {
    text-align: center;
}

.service__title {
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 10px;
}

.service__text {
    font-size: 14px;
}

.service-wrapper {
    overflow: hidden;
}

.service-wrapper .service {
    padding: 30px 20px;
}

.service-wrapper .service:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, .5);
}

@media (min-width: 1201px) {
    .service-wrapper .service {
        width: 33.333333%;
        float: left;
        padding: 0 55px;
    }

    .service-wrapper .service:not(:last-child) {
        border-bottom: 0;
        border-right: 1px solid rgba(255, 255, 255, .5);
    }
}

/* 5. general_hero
--------------------------------------------------------------------------------*/

.hero {
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    z-index: 9;
}

.hero:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: .5;
    z-index: -1;
}

.hero.no-overlay:after {
    display: none;
}

.hero.bg-video {
    background-color: transparent;
}

.hero .header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
}

.hero__title_inner {
    text-align: center;
}

.hero__icon {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 36px;
    border: 2px solid #fff;
    border-radius: 50%;
    font-family: "Work Sans", sans-serif;
    font-size: 20px;
    font-weight: 300;
    color: #fff;
}

.hero__title {
    font-size: 30px;
    font-weight: 300;
    color: #fff;
}

@media (min-width: 320px) {
    .hero__title {
        font-size: calc(2.04545vw + 23.45455px);
    }
}

@media (min-width: 1200px) {
    .hero__title {
        font-size: 48px;
    }
}

.hero__wrapper {
    position: relative;
    padding: 120px 0 50px;
    z-index: 99;
    min-height: 100vh;
}

.hero__wrapper .countdown__module {
    max-width: 800px;
    margin: 40px auto;
}

@media (min-width: 769px) {
    .hero__wrapper .countdown__module {
        max-width: 800px;
        margin: 80px auto;
    }
}

@media (min-width: 1401px) {
    .hero__wrapper {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
            flex-direction: column;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .hero__icon {
        font-size: 36px;
        width: 60px;
        height: 60px;
        line-height: 56px;
    }
}

/* 6. fss
--------------------------------------------------------------------------------*/

#fss-bg {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
}

/* 7. particles.js
--------------------------------------------------------------------------------*/

#particles-js {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 33;
}

/* 8. core_quietflow
--------------------------------------------------------------------------------*/

.quietflow {
    position: fixed;
}

/* 9. Ribbon background
--------------------------------------------------------------------------------*/

.ribbons-bg {
    background-color: #403060;
    background-image: radial-gradient(circle, transparent 0%, rgba(0, 0, 0, .8) 100%);
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
}

/* 10. core_smoky
--------------------------------------------------------------------------------*/

.smoky {
    position: fixed;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
}

@media (max-width: 767px) {
    .smoky {
        bottom: -100px;
    }
}

/* 11. core_vegas
--------------------------------------------------------------------------------*/

.vegas-container {
    position: fixed !important;
    top: 0;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background-color: transparent !important;
    z-index: -1;
}

.vegas__wrapper {
    padding: 150px 0;
}

@media (min-width: 1201px) {
    .vegas-container {
        height: 100vh !important;
    }
}

/* 12. youtube
--------------------------------------------------------------------------------*/

.youtube {
    z-index: -2;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.youtube img {
    display: none;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}

/* 13. socialicon
--------------------------------------------------------------------------------*/

.social-icon {
    display: inline-block;
    text-align: center;
    font-size: 16px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    border-radius: 3px;
    border: 1px solid #778;
    margin: 3px;
}

.social-icon__text {
    margin-left: 6px;
}

.social-icon__rounded {
    border-radius: 50%;
}

.social-icon__no-border {
    border: 0;
}

.social-icon.si-facebook {
    color: #3b5998;
}

.social-icon.si-facebook-bg {
    color: #fff;
    background-color: #3b5998;
}

.social-icon.si-facebook-bg:hover {
    background-color: #2d4373;
}

.social-icon.si-facebook-hover:hover {
    background-color: #3b5998;
    border-color: #3b5998;
    color: #fff;
}

.social-icon.si-twitter {
    color: #00acee;
}

.social-icon.si-twitter-bg {
    color: #fff;
    background-color: #00acee;
}

.social-icon.si-twitter-bg:hover {
    background-color: #0087bb;
}

.social-icon.si-twitter-hover:hover {
    background-color: #00acee;
    border-color: #00acee;
    color: #fff;
}

.social-icon.si-google-plus {
    color: #dd4b39;
}

.social-icon.si-google-plus-bg {
    color: #fff;
    background-color: #dd4b39;
}

.social-icon.si-google-plus-bg:hover {
    background-color: #c23321;
}

.social-icon.si-google-plus-hover:hover {
    background-color: #dd4b39;
    border-color: #dd4b39;
    color: #fff;
}

.social-icon.si-pinterest {
    color: #c8232c;
}

.social-icon.si-pinterest-bg {
    color: #fff;
    background-color: #c8232c;
}

.social-icon.si-pinterest-bg:hover {
    background-color: #9d1b22;
}

.social-icon.si-pinterest-hover:hover {
    background-color: #c8232c;
    border-color: #c8232c;
    color: #fff;
}

.social-icon.si-vimeo {
    color: #86c9ef;
}

.social-icon.si-vimeo-bg {
    color: #fff;
    background-color: #86c9ef;
}

.social-icon.si-vimeo-bg:hover {
    background-color: #59b5e9;
}

.social-icon.si-vimeo-hover:hover {
    background-color: #86c9ef;
    border-color: #86c9ef;
    color: #fff;
}

.social-icon.si-youtube {
    color: #c4302b;
}

.social-icon.si-youtube-bg {
    color: #fff;
    background-color: #c4302b;
}

.social-icon.si-youtube-bg:hover {
    background-color: #9a2622;
}

.social-icon.si-youtube-hover:hover {
    background-color: #c4302b;
    border-color: #c4302b;
    color: #fff;
}

.social-icon.si-yahoo {
    color: #720e9e;
}

.social-icon.si-yahoo-bg {
    color: #fff;
    background-color: #720e9e;
}

.social-icon.si-yahoo-bg:hover {
    background-color: #500a6f;
}

.social-icon.si-yahoo-hover:hover {
    background-color: #720e9e;
    border-color: #720e9e;
    color: #fff;
}

.social-icon.si-google {
    color: #dd4b39;
}

.social-icon.si-google-bg {
    color: #fff;
    background-color: #dd4b39;
}

.social-icon.si-google-bg:hover {
    background-color: #c23321;
}

.social-icon.si-google-hover:hover {
    background-color: #dd4b39;
    border-color: #dd4b39;
    color: #fff;
}

.social-icon.si-linkedin {
    color: #0e76a8;
}

.social-icon.si-linkedin-bg {
    color: #fff;
    background-color: #0e76a8;
}

.social-icon.si-linkedin-bg:hover {
    background-color: #0a5579;
}

.social-icon.si-linkedin-hover:hover {
    background-color: #0e76a8;
    border-color: #0e76a8;
    color: #fff;
}

.social-icon.si-dribbble {
    color: #ea4c89;
}

.social-icon.si-dribbble-bg {
    color: #fff;
    background-color: #ea4c89;
}

.social-icon.si-dribbble-bg:hover {
    background-color: #e51e6b;
}

.social-icon.si-dribbble-hover:hover {
    background-color: #ea4c89;
    border-color: #ea4c89;
    color: #fff;
}

.social-icon.si-delicious {
    color: #205cc0;
}

.social-icon.si-delicious-bg {
    color: #fff;
    background-color: #205cc0;
}

.social-icon.si-delicious-bg:hover {
    background-color: #194794;
}

.social-icon.si-delicious-hover:hover {
    background-color: #205cc0;
    border-color: #205cc0;
    color: #fff;
}

.social-icon.si-paypal {
    color: #00588b;
}

.social-icon.si-paypal-bg {
    color: #fff;
    background-color: #00588b;
}

.social-icon.si-paypal-bg:hover {
    background-color: #003858;
}

.social-icon.si-paypal-hover:hover {
    background-color: #00588b;
    border-color: #00588b;
    color: #fff;
}

.social-icon.si-android {
    color: #a4c639;
}

.social-icon.si-android-bg {
    color: #fff;
    background-color: #a4c639;
}

.social-icon.si-android-bg:hover {
    background-color: #839e2e;
}

.social-icon.si-android-hover:hover {
    background-color: #a4c639;
    border-color: #a4c639;
    color: #fff;
}

.social-icon.si-foursquare {
    color: #25a0ca;
}

.social-icon.si-foursquare-bg {
    color: #fff;
    background-color: #25a0ca;
}

.social-icon.si-foursquare-bg:hover {
    background-color: #1d7e9f;
}

.social-icon.si-foursquare-hover:hover {
    background-color: #25a0ca;
    border-color: #25a0ca;
    color: #fff;
}

.social-icon.si-stumbleupon {
    color: #f74425;
}

.social-icon.si-stumbleupon-bg {
    color: #fff;
    background-color: #f74425;
}

.social-icon.si-stumbleupon-bg:hover {
    background-color: #e12808;
}

.social-icon.si-stumbleupon-hover:hover {
    background-color: #f74425;
    border-color: #f74425;
    color: #fff;
}

.social-icon.si-digg {
    color: #191919;
}

.social-icon.si-digg-bg {
    color: #fff;
    background-color: #191919;
}

.social-icon.si-digg-bg:hover {
    background-color: black;
}

.social-icon.si-digg-hover:hover {
    background-color: #191919;
    border-color: #191919;
    color: #fff;
}

.social-icon.si-reddit {
    color: #c6c6c6;
}

.social-icon.si-reddit-bg {
    color: #fff;
    background-color: #c6c6c6;
}

.social-icon.si-reddit-bg:hover {
    background-color: #adadad;
}

.social-icon.si-reddit-hover:hover {
    background-color: #c6c6c6;
    border-color: #c6c6c6;
    color: #fff;
}

.social-icon.si-spotify {
    color: #81b71a;
}

.social-icon.si-spotify-bg {
    color: #fff;
    background-color: #81b71a;
}

.social-icon.si-spotify-bg:hover {
    background-color: #628a14;
}

.social-icon.si-spotify-hover:hover {
    background-color: #81b71a;
    border-color: #81b71a;
    color: #fff;
}

.social-icon.si-blogger {
    color: #fc4f08;
}

.social-icon.si-blogger-bg {
    color: #fff;
    background-color: #fc4f08;
}

.social-icon.si-blogger-bg:hover {
    background-color: #ce3e03;
}

.social-icon.si-blogger-hover:hover {
    background-color: #fc4f08;
    border-color: #fc4f08;
    color: #fff;
}

.social-icon.si-cc {
    color: #688527;
}

.social-icon.si-cc-bg {
    color: #fff;
    background-color: #688527;
}

.social-icon.si-cc-bg:hover {
    background-color: #495e1b;
}

.social-icon.si-cc-hover:hover {
    background-color: #688527;
    border-color: #688527;
    color: #fff;
}

.social-icon.si-evernote {
    color: #5ba525;
}

.social-icon.si-evernote-bg {
    color: #fff;
    background-color: #5ba525;
}

.social-icon.si-evernote-bg:hover {
    background-color: #447b1c;
}

.social-icon.si-evernote-hover:hover {
    background-color: #5ba525;
    border-color: #5ba525;
    color: #fff;
}

.social-icon.si-flickr {
    color: #ff0084;
}

.social-icon.si-flickr-bg {
    color: #fff;
    background-color: #ff0084;
}

.social-icon.si-flickr-bg:hover {
    background-color: #cc006a;
}

.social-icon.si-flickr-hover:hover {
    background-color: #ff0084;
    border-color: #ff0084;
    color: #fff;
}

.social-icon.si-vk {
    color: #2b587a;
}

.social-icon.si-vk-bg {
    color: #fff;
    background-color: #2b587a;
}

.social-icon.si-vk-bg:hover {
    background-color: #1e3d54;
}

.social-icon.si-vk-hover:hover {
    background-color: #2b587a;
    border-color: #2b587a;
    color: #fff;
}

.social-icon.si-skype {
    color: #00aff0;
}

.social-icon.si-skype-bg {
    color: #fff;
    background-color: #00aff0;
}

.social-icon.si-skype-bg:hover {
    background-color: #008abd;
}

.social-icon.si-skype-hover:hover {
    background-color: #00aff0;
    border-color: #00aff0;
    color: #fff;
}

.social-icon.si-podcast {
    color: #e4b21b;
}

.social-icon.si-podcast-bg {
    color: #fff;
    background-color: #e4b21b;
}

.social-icon.si-podcast-bg:hover {
    background-color: #b68e16;
}

.social-icon.si-podcast-hover:hover {
    background-color: #e4b21b;
    border-color: #e4b21b;
    color: #fff;
}

.social-icon.si-dropbox {
    color: #3d9ae8;
}

.social-icon.si-dropbox-bg {
    color: #fff;
    background-color: #3d9ae8;
}

.social-icon.si-dropbox-bg:hover {
    background-color: #1a81d8;
}

.social-icon.si-dropbox-hover:hover {
    background-color: #3d9ae8;
    border-color: #3d9ae8;
    color: #fff;
}

.social-icon.si-github {
    color: #171515;
}

.social-icon.si-github-bg {
    color: #fff;
    background-color: #171515;
}

.social-icon.si-github-bg:hover {
    background-color: black;
}

.social-icon.si-github-hover:hover {
    background-color: #171515;
    border-color: #171515;
    color: #fff;
}

.social-icon.si-bitbucket {
    color: #0e4984;
}

.social-icon.si-bitbucket-bg {
    color: #fff;
    background-color: #0e4984;
}

.social-icon.si-bitbucket-bg:hover {
    background-color: #093056;
}

.social-icon.si-bitbucket-hover:hover {
    background-color: #0e4984;
    border-color: #0e4984;
    color: #fff;
}

.social-icon.si-soundcloud {
    color: #f70;
}

.social-icon.si-soundcloud-bg {
    color: #fff;
    background-color: #f70;
}

.social-icon.si-soundcloud-bg:hover {
    background-color: #cc5f00;
}

.social-icon.si-soundcloud-hover:hover {
    background-color: #f70;
    border-color: #f70;
    color: #fff;
}

.social-icon.si-tumblr {
    color: #34526f;
}

.social-icon.si-tumblr-bg {
    color: #fff;
    background-color: #34526f;
}

.social-icon.si-tumblr-bg:hover {
    background-color: #24384c;
}

.social-icon.si-tumblr-hover:hover {
    background-color: #34526f;
    border-color: #34526f;
    color: #fff;
}

.social-icon.si-wordpress {
    color: #1e8cbe;
}

.social-icon.si-wordpress-bg {
    color: #fff;
    background-color: #1e8cbe;
}

.social-icon.si-wordpress-bg:hover {
    background-color: #176c92;
}

.social-icon.si-wordpress-hover:hover {
    background-color: #1e8cbe;
    border-color: #1e8cbe;
    color: #fff;
}

.social-icon.si-drupal {
    color: #27537a;
}

.social-icon.si-drupal-bg {
    color: #fff;
    background-color: #27537a;
}

.social-icon.si-drupal-bg:hover {
    background-color: #1b3953;
}

.social-icon.si-drupal-hover:hover {
    background-color: #27537a;
    border-color: #27537a;
    color: #fff;
}

.social-icon.si-yelp {
    color: #c41200;
}

.social-icon.si-yelp-bg {
    color: #fff;
    background-color: #c41200;
}

.social-icon.si-yelp-bg:hover {
    background-color: #910d00;
}

.social-icon.si-yelp-hover:hover {
    background-color: #c41200;
    border-color: #c41200;
    color: #fff;
}

.social-icon.si-scribd {
    color: #666;
}

.social-icon.si-scribd-bg {
    color: #fff;
    background-color: #666;
}

.social-icon.si-scribd-bg:hover {
    background-color: #4d4d4d;
}

.social-icon.si-scribd-hover:hover {
    background-color: #666;
    border-color: #666;
    color: #fff;
}

.social-icon.si-stripe {
    color: #008cdd;
}

.social-icon.si-stripe-bg {
    color: #fff;
    background-color: #008cdd;
}

.social-icon.si-stripe-bg:hover {
    background-color: #006caa;
}

.social-icon.si-stripe-hover:hover {
    background-color: #008cdd;
    border-color: #008cdd;
    color: #fff;
}

.social-icon.si-print {
    color: #111;
}

.social-icon.si-print-bg {
    color: #fff;
    background-color: #111;
}

.social-icon.si-print-bg:hover {
    background-color: black;
}

.social-icon.si-print-hover:hover {
    background-color: #111;
    border-color: #111;
    color: #fff;
}

.social-icon.si-acrobat {
    color: #d3222a;
}

.social-icon.si-acrobat-bg {
    color: #fff;
    background-color: #d3222a;
}

.social-icon.si-acrobat-bg:hover {
    background-color: #a71b21;
}

.social-icon.si-acrobat-hover:hover {
    background-color: #d3222a;
    border-color: #d3222a;
    color: #fff;
}

.social-icon.si-stackoverflow {
    color: #ef8236;
}

.social-icon.si-stackoverflow-bg {
    color: #fff;
    background-color: #ef8236;
}

.social-icon.si-stackoverflow-bg:hover {
    background-color: #e06712;
}

.social-icon.si-stackoverflow-hover:hover {
    background-color: #ef8236;
    border-color: #ef8236;
    color: #fff;
}

.social-icon.si-instagram {
    color: #3f729b;
}

.social-icon.si-instagram-bg {
    color: #fff;
    background-color: #3f729b;
}

.social-icon.si-instagram-bg:hover {
    background-color: #305777;
}

.social-icon.si-instagram-hover:hover {
    background-color: #3f729b;
    border-color: #3f729b;
    color: #fff;
}

.social-icon.si-quora {
    color: #a82400;
}

.social-icon.si-quora-bg {
    color: #fff;
    background-color: #a82400;
}

.social-icon.si-quora-bg:hover {
    background-color: #751900;
}

.social-icon.si-quora-hover:hover {
    background-color: #a82400;
    border-color: #a82400;
    color: #fff;
}

.social-icon.si-openid {
    color: #e16309;
}

.social-icon.si-openid-bg {
    color: #fff;
    background-color: #e16309;
}

.social-icon.si-openid-bg:hover {
    background-color: #b04d07;
}

.social-icon.si-openid-hover:hover {
    background-color: #e16309;
    border-color: #e16309;
    color: #fff;
}

.social-icon.si-amazon {
    color: #e47911;
}

.social-icon.si-amazon-bg {
    color: #fff;
    background-color: #e47911;
}

.social-icon.si-amazon-bg:hover {
    background-color: #b5600d;
}

.social-icon.si-amazon-hover:hover {
    background-color: #e47911;
    border-color: #e47911;
    color: #fff;
}

.social-icon.si-steam {
    color: #111;
}

.social-icon.si-steam-bg {
    color: #fff;
    background-color: #111;
}

.social-icon.si-steam-bg:hover {
    background-color: black;
}

.social-icon.si-steam-hover:hover {
    background-color: #111;
    border-color: #111;
    color: #fff;
}

.social-icon.si-rss {
    color: #ee802f;
}

.social-icon.si-rss-bg {
    color: #fff;
    background-color: #ee802f;
}

.social-icon.si-rss-bg:hover {
    background-color: #d86612;
}

.social-icon.si-rss-hover:hover {
    background-color: #ee802f;
    border-color: #ee802f;
    color: #fff;
}

.social-icon.si-behance {
    color: #0057ff;
}

.social-icon.si-behance-bg {
    color: #fff;
    background-color: #0057ff;
}

.social-icon.si-behance-bg:hover {
    background-color: #0046cc;
}

.social-icon.si-behance-hover:hover {
    background-color: #0057ff;
    border-color: #0057ff;
    color: #fff;
}

.btn {
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 2px;
    padding: 0 15px;
    height: 50px;
    line-height: 48px;
    min-width: 170px;
}

.btn > i {
    margin: 0 5px;
}

.btn-sm {
    height: 40px;
    line-height: 38px;
    min-width: 130px;
}

.btn-w140 {
    min-width: 140px;
}

.grid-css .grid-item .grid-item__inner .grid-item__content-wrapper {
    background-color: transparent;
}

.no-gutters {
    margin: 0;
}

.no-gutters > .col, .no-gutters > [class*="col-"] {
    padding-right: 0;
    padding-left: 0;
}

.show-md {
    display: none;
}

@media (min-width: 992px) {
    .hidden-md {
        display: none;
    }

    .show-md {
        display: block;
    }
}

.swiper-custom-wrap {
    position: relative;
}

.swiper-custom-wrap .swiper-container {
    position: static;
}

.swiper-button-custom > div {
    position: absolute;
    top: 50%;
    width: 40px;
    height: 40px;
    line-height: 38px;
    font-size: 20px;
    color: #c2c2c2;
    text-align: center;
    border: 1px solid #c2c2c2;
    border-radius: 50%;
    cursor: pointer;
    transform: transalteY(-50%);
    transition: all .3s ease;
}

.swiper-button-custom > div:hover {
    border-color: #ff9294;
    color: #ff9294;
}

.swiper-button-custom .swiper-button-prev-custom {
    left: 0;
}

.swiper-button-custom .swiper-button-next-custom {
    right: 0;
}

.swiper-pagination-custom {
    text-align: center;
    margin-top: 20px;
}

.swiper-pagination-custom > span {
    width: 13px;
    height: 13px;
    background-color: #c9c9cf;
    opacity: 1;
    margin: 0 8px !important;
}

.swiper-pagination-custom .swiper-pagination-bullet-active {
    background-color: #ff9294;
}

.swiper-container--02 .swiper-button-prev-custom {
    left: -80px;
}

.swiper-container--02 .swiper-button-next-custom {
    right: -80px;
}

@media (max-width: 1199px) {
    .swiper-container--02 .swiper-button-custom {
        display: none;
    }
}

@media (min-width: 1201px) {
    .swiper-container--02 .swiper-pagination-custom {
        display: none;
    }
}

@media (min-width: 1401px) {
    .swiper-container--02 .swiper-button-prev-custom {
        left: -150px;
    }

    .swiper-container--02 .swiper-button-next-custom {
        right: -150px;
    }
}

/* 14. Reset Row Boostrap
--------------------------------------------------------------------------------*/

.row-grap {
    margin: 0;
}

.row-grap > [class*="col-"] {
    padding: 0;
}

.pull-left {
    float: left;
}

.pull-right {
    float: right;
}

/* 15. Margin Padding
--------------------------------------------------------------------------------*/

.pd-0 {
    padding: 0 !important;
}

.mb-0 {
    margin-bottom: 0 !important;
}

.mt-0 {
    margin-top: 0 !important;
}

.mb-20 {
    margin-bottom: 20px;
}

.mt-20 {
    margin-top: 20px;
}

.mb-25 {
    margin-bottom: 25px;
}

.mt-25 {
    margin-top: 25px;
}

.mb-30 {
    margin-bottom: 30px;
}

.mt-30 {
    margin-top: 30px;
}

.mb-35 {
    margin-bottom: 35px;
}

.mt-35 {
    margin-top: 35px;
}

.mb-40 {
    margin-bottom: 40px;
}

.mt-40 {
    margin-top: 40px;
}

.mb-45 {
    margin-bottom: 45px;
}

.mt-45 {
    margin-top: 45px;
}

.mb-50 {
    margin-bottom: 50px;
}

.mt-50 {
    margin-top: 50px;
}

.mb-55 {
    margin-bottom: 55px;
}

.mt-55 {
    margin-top: 55px;
}

.mb-60 {
    margin-bottom: 60px;
}

.mt-60 {
    margin-top: 60px;
}

.mb-65 {
    margin-bottom: 65px;
}

.mt-65 {
    margin-top: 65px;
}

.mb-70 {
    margin-bottom: 70px;
}

.mt-70 {
    margin-top: 70px;
}

.mb-75 {
    margin-bottom: 75px;
}

.mt-75 {
    margin-top: 75px;
}

/* 16. CountDown
--------------------------------------------------------------------------------*/

.countdown__module {
    display: table;
    width: 100%;
    margin: 20px 0;
    color: #c2c2c2;
}

.countdown__module p {
    display: table-cell;
    vertical-align: middle;
    font-size: 10px;
    font-weight: 900;
    text-transform: uppercase;
    text-align: center;
    letter-spacing: 3px;
    width: 25%;
}

@media (min-width: 320px) {
    .countdown__module p {
        font-size: calc(.68182vw + 7.81818px);
    }
}

@media (min-width: 1200px) {
    .countdown__module p {
        font-size: 16px;
    }
}

.countdown__module span {
    display: block;
    font-family: "Work Sans", sans-serif;
    font-size: 30px;
    font-weight: 300;
    line-height: 1;
    color: #fff;
    margin-bottom: 10px;
}

@media (min-width: 320px) {
    .countdown__module span {
        font-size: calc(6.81818vw + 8.18182px);
    }
}

@media (min-width: 1200px) {
    .countdown__module span {
        font-size: 90px;
    }
}

/* ==========================================================================
   Trigyan Innovations Complete All-Device Responsive Design System
   Covers: 280px (Galaxy Fold), 320px-430px (Smartphones), Tablets, 
           Laptops, Desktops, 4K Ultrawide, Landscape orientation & A11y
   ========================================================================== */

/* 1. Global Box Model, Safe Area Variables & Viewport Stability */
:root {
    --sat: env(safe-area-inset-top, 0px);
    --sar: env(safe-area-inset-right, 0px);
    --sab: env(safe-area-inset-bottom, 0px);
    --sal: env(safe-area-inset-left, 0px);
}

*, *::before, *::after {
    box-sizing: border-box;
}

html, body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    position: relative;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    color-scheme: dark;
}

.page-wrap {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    position: relative;
    min-height: 100vh;
    min-height: 100dvh;
}

/* 2. Hero Background & Dynamic Viewport Height */
.hero.md-skin-dark {
    position: relative;
    width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    background-color: #070b14;
    background-image: 
        radial-gradient(circle at 50% 15%, rgba(14, 116, 144, 0.38) 0%, rgba(15, 23, 42, 0.90) 65%, #030712 100%),
        url(https://images.pexels.com/photos/764880/pexels-photo-764880.jpeg?w=1260&h=750&auto=compress&cs=tinysrgb) !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
}

/* Fix iOS Safari & touch jitter with fixed background */
@media (hover: none), (max-width: 991px) {
    .hero.md-skin-dark {
        background-attachment: scroll !important;
    }
}

.hero:after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(3, 7, 18, 0.75) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

/* 3. Header & Navigation (Resilient across 280px to 4K) */
.hero .header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 100 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: max(16px, env(safe-area-inset-top, 16px)) max(24px, env(safe-area-inset-right, 24px)) 16px max(24px, env(safe-area-inset-left, 24px)) !important;
    gap: 12px;
    background: transparent !important;
}

.header__left {
    display: flex !important;
    align-items: center !important;
    flex-shrink: 1;
    min-width: 0;
}

.header__brand {
    display: inline-flex !important;
    align-items: center !important;
    text-decoration: none !important;
    min-height: 44px; /* Accessible touch target */
}

.header__brand-logo {
    height: auto !important;
    max-height: clamp(26px, 4vw, 42px) !important;
    width: auto !important;
    max-width: clamp(120px, 34vw, 210px) !important;
    object-fit: contain !important;
    display: block !important;
    filter: drop-shadow(0 2px 10px rgba(0, 0, 0, 0.65));
    transition: transform 0.3s ease;
}

.header__social {
    display: flex !important;
    align-items: center !important;
    gap: clamp(6px, 1.4vw, 12px) !important;
    flex-shrink: 0;
}

.social-icon.social-icon__rounded {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: clamp(34px, 4vw, 42px) !important;
    height: clamp(34px, 4vw, 42px) !important;
    min-width: clamp(34px, 4vw, 42px) !important;
    line-height: 1 !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.20) !important;
    color: #e2e8f0 !important;
    font-size: clamp(13px, 1.8vw, 16px) !important;
    text-align: center;
    backdrop-filter: blur(8px);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    touch-action: manipulation;
}

@media (hover: hover) and (pointer: fine) {
    .header__brand-logo:hover {
        transform: scale(1.03);
    }
    .social-icon.social-icon__rounded:hover {
        background: #0ea5e9 !important;
        border-color: #38bdf8 !important;
        color: #ffffff !important;
        transform: translateY(-2px) !important;
        box-shadow: 0 6px 20px rgba(14, 165, 233, 0.45) !important;
    }
}

.social-icon.social-icon__rounded:active {
    transform: scale(0.94) !important;
    background: #0ea5e9 !important;
    border-color: #38bdf8 !important;
    color: #ffffff !important;
}

/* 4. Hero Content Wrapper & Container Alignment */
.hero__wrapper {
    position: relative !important;
    z-index: 10 !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    padding-top: clamp(85px, 12vh, 125px) !important;
    padding-bottom: max(35px, env(safe-area-inset-bottom, 35px)) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    width: 100% !important;
}

.hero .container {
    width: 100% !important;
    max-width: 1240px !important;
    padding-left: clamp(14px, 3vw, 24px) !important;
    padding-right: clamp(14px, 3vw, 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative !important;
    z-index: 10 !important;
}

/* 5. Center Logo & Hero Headings */
.hero__title_inner {
    text-align: center !important;
    margin-bottom: clamp(16px, 3vw, 28px) !important;
    width: 100% !important;
}

.hero__logo-wrapper {
    display: inline-block !important;
    margin-bottom: clamp(14px, 2.5vw, 24px) !important;
    text-align: center !important;
}

.hero__logo-img {
    height: auto !important;
    max-height: 175px !important;
    width: auto !important;
    max-width: clamp(95px, 22vw, 160px) !important;
    display: inline-block !important;
    filter: drop-shadow(0 4px 18px rgba(0, 0, 0, 0.65)) !important;
    transition: transform 0.3s ease, filter 0.3s ease !important;
}

@media (hover: hover) and (pointer: fine) {
    .hero__logo-img:hover {
        transform: scale(1.04);
        filter: drop-shadow(0 6px 22px rgba(14, 165, 233, 0.5));
    }
}

.hero__title {
    font-family: 'Work Sans', 'Plus Jakarta Sans', sans-serif !important;
    margin: 10px auto 16px !important;
    line-height: 1.22 !important;
    text-wrap: balance;
    overflow-wrap: break-word;
    word-break: normal;
}

.hero__title-top {
    display: block !important;
    font-size: clamp(21px, 4.4vw, 42px) !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    color: #ffffff !important;
    margin-bottom: 6px !important;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.6) !important;
}

.hero__title-sub {
    display: block !important;
    font-size: clamp(16px, 3.2vw, 30px) !important;
    font-weight: 500 !important;
    color: #38bdf8 !important;
    letter-spacing: -0.01em !important;
    text-shadow: 0 2px 14px rgba(14, 165, 233, 0.35) !important;
}

.hero__text {
    font-family: 'Roboto', 'Plus Jakarta Sans', sans-serif !important;
    font-size: clamp(14px, 1.8vw, 18px) !important;
    font-weight: 300 !important;
    line-height: 1.62 !important;
    color: #cbd5e1 !important;
    max-width: min(100%, 780px) !important;
    margin: 0 auto !important;
    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.5) !important;
    text-wrap: pretty;
    padding: 0 6px !important;
}

/* 6. Countdown Timer & Date Badge */
.countdown__container {
    text-align: center !important;
    margin: clamp(20px, 3.5vw, 34px) auto !important;
    width: 100% !important;
    max-width: 800px !important;
}

.countdown__date-range {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 7px clamp(14px, 3vw, 24px) !important;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.20), rgba(99, 102, 241, 0.20)) !important;
    border: 1px solid rgba(56, 189, 248, 0.45) !important;
    border-radius: 9999px !important;
    color: #7dd3fc !important;
    font-size: clamp(12px, 2.4vw, 14.5px) !important;
    font-weight: 600 !important;
    letter-spacing: clamp(0.5px, 0.2vw, 1.4px) !important;
    text-transform: uppercase !important;
    margin-bottom: clamp(18px, 3vw, 26px) !important;
    box-shadow: 0 4px 20px rgba(14, 165, 233, 0.22) !important;
    backdrop-filter: blur(8px) !important;
    max-width: 96% !important;
}

.countdown__date-range i {
    color: #38bdf8 !important;
    font-size: 1.05em !important;
    flex-shrink: 0;
}

.countdown__module {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: clamp(10px, 2vw, 18px) !important;
    margin: 0 auto !important;
    max-width: 720px !important;
    width: 100% !important;
}

.countdown__module p {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: clamp(14px, 2.5vw, 22px) clamp(6px, 1.5vw, 14px) !important;
    background: rgba(15, 23, 42, 0.72) !important;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: clamp(12px, 2vw, 16px) !important;
    backdrop-filter: blur(12px) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35) !important;
    font-size: clamp(10px, 1.8vw, 12px) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: clamp(1px, 0.3vw, 2.5px) !important;
    color: #94a3b8 !important;
    transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease !important;
}

@media (hover: hover) and (pointer: fine) {
    .countdown__module p:hover {
        transform: translateY(-3px) !important;
        border-color: rgba(56, 189, 248, 0.5) !important;
        box-shadow: 0 12px 28px rgba(14, 165, 233, 0.25) !important;
    }
}

.countdown__module span {
    display: block !important;
    font-family: 'Work Sans', sans-serif !important;
    font-size: clamp(26px, 5vw, 54px) !important;
    font-weight: 700 !important;
    line-height: 1.05 !important;
    color: #ffffff !important;
    margin-bottom: clamp(6px, 1.2vw, 10px) !important;
    letter-spacing: -0.02em !important;
}

/* 2x2 Grid for Mobile Screens <= 580px */
@media (max-width: 580px) {
    .countdown__module {
        grid-template-columns: repeat(2, 1fr) !important;
        max-width: 320px !important;
        gap: 10px !important;
    }
}

/* 7. Service Cards (Grid System, Equal Height & Reset) */
.service-wrapper {
    margin-top: clamp(28px, 4vw, 45px) !important;
    margin-bottom: clamp(20px, 3.5vw, 32px) !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: clamp(14px, 2.2vw, 24px) !important;
    width: 100% !important;
    max-width: 1180px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: stretch !important;
    overflow: visible !important;
}

.service-wrapper .service {
    display: flex !important;
    flex-direction: column !important;
    background: rgba(15, 23, 42, 0.68) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: clamp(14px, 2vw, 18px) !important;
    padding: clamp(22px, 3vw, 32px) clamp(18px, 2.5vw, 26px) !important;
    text-align: left !important;
    backdrop-filter: blur(14px) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.32) !important;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.3s ease, box-shadow 0.3s ease !important;
    width: 100% !important;
    max-width: none !important;
    float: none !important;
}

/* Complete reset of legacy border collision */
.service-wrapper .service:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
}

@media (hover: hover) and (pointer: fine) {
    .service-wrapper .service:hover {
        transform: translateY(-5px) !important;
        border-color: rgba(56, 189, 248, 0.55) !important;
        box-shadow: 0 18px 40px rgba(14, 165, 233, 0.22) !important;
    }
}

.service__num {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: clamp(32px, 3.5vw, 38px) !important;
    height: clamp(32px, 3.5vw, 38px) !important;
    border-radius: 9px !important;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.24), rgba(99, 102, 241, 0.24)) !important;
    border: 1px solid rgba(56, 189, 248, 0.4) !important;
    color: #38bdf8 !important;
    font-weight: 700 !important;
    font-size: clamp(13px, 1.8vw, 15px) !important;
    margin-bottom: clamp(12px, 2vw, 16px) !important;
    font-family: 'Work Sans', sans-serif !important;
    flex-shrink: 0;
}

.service__title {
    font-size: clamp(17px, 2.2vw, 21px) !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    margin-top: 0 !important;
    margin-bottom: clamp(8px, 1.5vw, 12px) !important;
    letter-spacing: -0.01em !important;
    line-height: 1.28 !important;
    text-wrap: balance;
}

.service__text {
    font-size: clamp(13.5px, 1.6vw, 15px) !important;
    line-height: 1.62 !important;
    color: #94a3b8 !important;
    margin-bottom: 0 !important;
    flex-grow: 1;
}

/* Service Breakpoints: Tablet & Mobile */
@media (max-width: 940px) and (min-width: 601px) {
    .service-wrapper {
        grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)) !important;
        gap: 16px !important;
    }
}

@media (max-width: 600px) {
    .service-wrapper {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
        max-width: 440px !important;
    }
}

/* 8. Footer Section / Tagline & Touch-Optimized Contact Strip */
.hero__footer-section {
    margin-top: clamp(25px, 4vw, 38px) !important;
    padding-top: clamp(20px, 3.5vw, 30px) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
    text-align: center !important;
    width: 100% !important;
}

.hero__bottom-tagline {
    font-family: 'Work Sans', sans-serif !important;
    font-size: clamp(14px, 2.2vw, 22px) !important;
    font-weight: 700 !important;
    letter-spacing: clamp(1.5px, 0.35vw, 3.5px) !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    margin-bottom: clamp(16px, 2.5vw, 22px) !important;
    text-wrap: balance;
}

.tagline-dot {
    color: #38bdf8 !important;
    padding: 0 4px !important;
    font-weight: 900 !important;
}

.hero__contact-strip {
    display: inline-flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: clamp(10px, 2vw, 18px) !important;
    padding: 10px clamp(16px, 3vw, 28px) !important;
    background: rgba(15, 23, 42, 0.80) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 9999px !important;
    backdrop-filter: blur(12px) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.32) !important;
    max-width: 100% !important;
}

.contact-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #cbd5e1 !important;
    font-size: clamp(12.5px, 1.8vw, 14.5px) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: color 0.2s ease, transform 0.2s ease !important;
    min-height: 44px; /* Accessible touch target */
    padding: 2px 4px !important;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.contact-item i {
    color: #38bdf8 !important;
    font-size: 1.05em !important;
    flex-shrink: 0;
}

@media (hover: hover) and (pointer: fine) {
    .contact-item:hover {
        color: #ffffff !important;
        text-decoration: none !important;
        transform: translateY(-1px) !important;
    }
}

.contact-item:active {
    color: #38bdf8 !important;
}

.contact-sep {
    color: rgba(255, 255, 255, 0.22) !important;
    font-size: 13px !important;
    user-select: none !important;
}

/* Tablet & Mobile Contact Strip Layout */
@media (max-width: 820px) {
    .hero__contact-strip {
        display: flex !important;
        flex-direction: column !important;
        border-radius: 16px !important;
        gap: 8px !important;
        padding: 14px clamp(12px, 3vw, 20px) !important;
        max-width: 380px !important;
        margin: 0 auto !important;
        width: 100% !important;
    }
    .contact-sep {
        display: none !important;
    }
    .contact-item {
        justify-content: center !important;
        width: 100% !important;
        padding: 9px 12px !important;
        background: rgba(255, 255, 255, 0.04) !important;
        border: 1px solid rgba(255, 255, 255, 0.07) !important;
        border-radius: 10px !important;
    }
}

/* ==========================================================================
   Corner Case 1: Ultra-narrow Screens (<= 340px, e.g. Samsung Galaxy Z Fold)
   ========================================================================== */
@media (max-width: 340px) {
    .hero .header {
        padding: 12px 10px !important;
        gap: 6px !important;
    }
    .header__brand-logo {
        max-height: 25px !important;
        max-width: 110px !important;
    }
    .social-icon.social-icon__rounded {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        font-size: 12px !important;
    }
    .header__social {
        gap: 5px !important;
    }
    .hero__wrapper {
        padding-top: 75px !important;
    }
    .hero__logo-img {
        max-width: 85px !important;
    }
    .hero__title-top {
        font-size: 19px !important;
    }
    .hero__title-sub {
        font-size: 15px !important;
    }
    .hero__text {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }
    .countdown__date-range {
        font-size: 10.5px !important;
        letter-spacing: 0.4px !important;
        padding: 5px 10px !important;
    }
    .countdown__module {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 6px !important;
        max-width: 260px !important;
    }
    .countdown__module p {
        padding: 10px 4px !important;
        font-size: 9px !important;
        letter-spacing: 1px !important;
    }
    .countdown__module span {
        font-size: 24px !important;
        margin-bottom: 4px !important;
    }
    .service-wrapper .service {
        padding: 16px 12px !important;
    }
    .service__num {
        width: 28px !important;
        height: 28px !important;
        font-size: 12px !important;
    }
    .service__title {
        font-size: 16px !important;
    }
    .service__text {
        font-size: 13px !important;
    }
    .contact-item {
        font-size: 11.5px !important;
        padding: 8px 6px !important;
    }
}

/* ==========================================================================
   Corner Case 2: Landscape Mode on Mobile / Short Heights (height <= 560px)
   ========================================================================== */
@media (max-height: 560px) {
    .hero .header {
        position: relative !important;
        padding: 10px 20px !important;
    }
    .hero__wrapper {
        min-height: auto !important;
        padding-top: 15px !important;
        padding-bottom: 25px !important;
        justify-content: flex-start !important;
    }
    .hero__logo-wrapper {
        margin-bottom: 8px !important;
    }
    .hero__logo-img {
        max-height: 55px !important;
        max-width: 70px !important;
    }
    .hero__title_inner {
        margin-bottom: 10px !important;
    }
    .hero__title {
        margin: 4px auto 8px !important;
    }
    .hero__title-top {
        font-size: 20px !important;
        margin-bottom: 2px !important;
    }
    .hero__title-sub {
        font-size: 15px !important;
    }
    .hero__text {
        font-size: 13px !important;
    }
    .countdown__container {
        margin: 12px auto !important;
    }
    .countdown__date-range {
        margin-bottom: 10px !important;
        padding: 5px 12px !important;
        font-size: 11.5px !important;
    }
    .countdown__module {
        grid-template-columns: repeat(4, 1fr) !important;
        max-width: 480px !important;
        gap: 6px !important;
    }
    .countdown__module p {
        padding: 8px 4px !important;
    }
    .countdown__module span {
        font-size: 24px !important;
        margin-bottom: 3px !important;
    }
    .service-wrapper {
        margin-top: 18px !important;
        margin-bottom: 14px !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 10px !important;
    }
    .service-wrapper .service {
        padding: 14px 12px !important;
    }
    .hero__footer-section {
        margin-top: 16px !important;
        padding-top: 12px !important;
    }
    .hero__bottom-tagline {
        margin-bottom: 8px !important;
        font-size: 13px !important;
    }
}

/* ==========================================================================
   Corner Case 3: 4K & Ultrawide Displays (> 1920px up to 3840px)
   ========================================================================== */
@media (min-width: 1921px) {
    .hero .container {
        max-width: 1380px !important;
    }
    .hero__title-top {
        font-size: 48px !important;
    }
    .hero__title-sub {
        font-size: 32px !important;
    }
    .hero__text {
        font-size: 20px !important;
        max-width: 860px !important;
    }
    .service-wrapper {
        max-width: 1300px !important;
        gap: 28px !important;
    }
}

/* ==========================================================================
   Corner Case 4: Accessibility & Focus Outlines
   ========================================================================== */
.social-icon.social-icon__rounded:focus-visible,
.header__brand:focus-visible,
.contact-item:focus-visible {
    outline: 2px solid #38bdf8 !important;
    outline-offset: 3px !important;
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
    .hero.md-skin-dark {
        background-attachment: scroll !important;
    }
}

/* ==========================================================================
   Corner Case 5: Print Media Stylesheet
   ========================================================================== */
@media print {
    .header, .hero:after {
        display: none !important;
    }
    .hero.md-skin-dark {
        background: #ffffff !important;
        color: #000000 !important;
    }
    .hero__title-top, .hero__title-sub, .service__title {
        color: #000000 !important;
    }
    .hero__text, .service__text {
        color: #333333 !important;
    }
    .countdown__module p, .service-wrapper .service, .hero__contact-strip {
        background: #f8fafc !important;
        border-color: #cbd5e1 !important;
        color: #000000 !important;
    }
}


