/* =========================================================
   ATO DIGITAL SOLUTIONS
   MAIN STYLESHEET
========================================================= */


/* =========================================================
   ROOT
========================================================= */

:root {

    --black-navy: #000611;
    --dark-navy: #001020;
    --card-navy: #011D34;

    --blue: #044E7B;

    --mint: #0EDEB0;
    --mint-light: #6FF1CA;

    --light: #EBF3F7;
    --white: #FFFFFF;

    --page-bg: #FFFFFF;
    --soft-bg: #F4F8FA;

    --text-dark: #001020;
    --text: #607082;
    --muted: #8090A0;

    --border: #DCE5EA;
    --dark-border: rgba(235, 243, 247, 0.10);

    --container: 1200px;

    --navbar-height: 88px;

    --heading-font: "Manrope", sans-serif;
    --body-font: "DM Sans", sans-serif;

    --transition: 0.28s ease;

}


/* =========================================================
   RESET
========================================================= */

* {

    margin: 0;
    padding: 0;

    box-sizing: border-box;

}


html {

    scroll-behavior: smooth;

}


body {

    font-family: var(--body-font);

    color: var(--text-dark);

    background: var(--page-bg);

    line-height: 1.7;

    overflow-x: hidden;

}


body.menu-open {

    overflow: hidden;

}


img {

    width: 100%;

    display: block;

}


a {

    color: inherit;

    text-decoration: none;

}


button,
input,
textarea,
select {

    font: inherit;

}


button {

    border: none;

    outline: none;

}


.container {

    width: min(92%, var(--container));

    margin: auto;

}


/* =========================================================
   GLOBAL
========================================================= */

.section {

    padding: 100px 0;

}


.soft-section {

    background: var(--soft-bg);

}


.dark-section {

    background: var(--dark-navy);

    color: var(--light);

}


.section-label {

    display: inline-block;

    margin-bottom: 17px;

    color: #07896F;

    font-size: 0.74rem;

    font-weight: 700;

    letter-spacing: 0.13em;

    text-transform: uppercase;

}


.dark-section .section-label,
.main-cta .section-label {

    color: var(--mint);

}


.section-title {

    max-width: 760px;

    font-family: var(--heading-font);

    font-size:
        clamp(2.25rem, 4.4vw, 4.3rem);

    line-height: 1.07;

    letter-spacing: -0.05em;

}


.section-title span {

    color: #07896F;

}


.light-title {

    color: var(--light);

}


.light-title span {

    color: var(--mint);

}


.section-header {

    display: flex;

    align-items: flex-end;

    justify-content: space-between;

    gap: 55px;

    margin-bottom: 55px;

}


.section-intro {

    max-width: 470px;

    color: var(--text);

}


.dark-intro {

    color: #9BADBE;

}


/* =========================================================
   BUTTONS
========================================================= */

.btn {

    min-height: 52px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    padding: 0 24px;

    border-radius: 999px;

    font-size: 0.88rem;

    font-weight: 700;

    cursor: pointer;

    transition: var(--transition);

}


.btn:hover {

    transform: translateY(-2px);

}


.btn-primary {

    background: var(--mint);

    color: var(--dark-navy);

}


.btn-primary:hover {

    background: var(--mint-light);

}


.btn-outline {

    border: 1px solid #CAD5DC;

    color: var(--dark-navy);

}


.btn-outline:hover {

    border-color: var(--mint);

}


.btn-light {

    background: var(--light);

    color: var(--dark-navy);

}


.text-link {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #05785F;

    font-weight: 700;

    font-size: 0.87rem;

}


/* =========================================================
   HEADER
========================================================= */

.site-header {

    position: fixed;

    top: 0;
    left: 0;

    z-index: 1000;

    width: 100%;
    height: var(--navbar-height);

    background: rgba(255, 255, 255, 0.98);

    border-bottom: 1px solid var(--border);

    box-shadow:
        0 5px 22px rgba(0, 16, 32, 0.05);

    backdrop-filter: blur(16px);

    -webkit-backdrop-filter: blur(16px);

}


.navbar-container {

    position: relative;

    height: var(--navbar-height);

    display: flex;

    align-items: center;

    justify-content: space-between;

}


/* =========================================================
   BRAND
========================================================= */

.brand {

    width: 215px;
    height: 72px;

    display: flex;

    align-items: center;

    overflow: hidden;

    flex-shrink: 0;

}


.brand img {

    width: 100%;
    height: 100%;

    object-fit: contain;

}


/* =========================================================
   DESKTOP NAV
========================================================= */

.desktop-nav {

    display: flex;

    align-items: center;

    gap: 31px;

}


.nav-link {

    position: relative;

    color: #566779;

    font-size: 0.87rem;

    font-weight: 500;

    transition: var(--transition);

}


.nav-link::after {

    content: "";

    position: absolute;

    left: 0;
    bottom: -8px;

    width: 0;
    height: 2px;

    border-radius: 999px;

    background: var(--mint);

    transition: var(--transition);

}


.nav-link:hover,
.nav-link.active {

    color: var(--dark-navy);

}


.nav-link:hover::after,
.nav-link.active::after {

    width: 100%;

}


.nav-actions {

    display: flex;

    align-items: center;

    gap: 12px;

}


.nav-cta {

    min-height: 43px;

    display: inline-flex;

    align-items: center;

    gap: 8px;

    padding: 0 18px;

    border-radius: 999px;

    background: var(--dark-navy);

    color: var(--light);

    font-size: 0.8rem;

    font-weight: 700;

    transition: var(--transition);

}


.nav-cta:hover {

    background: var(--mint);

    color: var(--dark-navy);

}


/* =========================================================
   MOBILE NAV
========================================================= */

.mobile-menu-btn {

    width: 44px;
    height: 44px;

    display: none;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    gap: 5px;

    border-radius: 11px;

    background: var(--soft-bg);

    cursor: pointer;

}


.mobile-menu-btn span {

    width: 20px;
    height: 2px;

    background: var(--dark-navy);

    transition: var(--transition);

}


.mobile-menu-btn.active span:nth-child(1) {

    transform:
        translateY(7px)
        rotate(45deg);

}


.mobile-menu-btn.active span:nth-child(2) {

    opacity: 0;

}


.mobile-menu-btn.active span:nth-child(3) {

    transform:
        translateY(-7px)
        rotate(-45deg);

}


.mobile-nav {

    position: absolute;

    top: var(--navbar-height);
    left: 0;

    width: 100%;

    display: none;

    padding:
        18px 5%
        26px;

    background: var(--white);

    border-bottom: 1px solid var(--border);

    box-shadow:
        0 14px 30px rgba(0, 16, 32, 0.08);

}


.mobile-nav.active {

    display: block;

}


.mobile-nav > a {

    display: block;

    padding: 14px 0;

    border-bottom: 1px solid var(--border);

    color: #536476;

}


.mobile-nav > a.active {

    color: #07896F;

}


.mobile-nav-cta {

    margin-top: 15px;

    padding: 13px 20px !important;

    border: none !important;

    border-radius: 999px;

    background: var(--dark-navy);

    color: var(--light) !important;

    text-align: center;

}


/* =========================================================
   PAGE POSITION
========================================================= */

main {

    padding-top: var(--navbar-height);

}


.page-main {

    min-height: 70vh;

}


/* =========================================================
   HOMEPAGE IMAGE SLIDER
========================================================= */

.home-slider {

    position: relative;

    width: 100%;
    height: 380px;

    overflow: hidden;

    background: var(--dark-navy);

}


.slider-track {

    position: relative;

    width: 100%;
    height: 100%;

}


.slide {

    position: absolute;

    inset: 0;

    opacity: 0;

    visibility: hidden;

    transition:
        opacity 0.8s ease,
        visibility 0.8s ease;

}


.slide.active {

    opacity: 1;

    visibility: visible;

}


.slide img {

    width: 100%;
    height: 100%;

    object-fit: cover;

    object-position: center;

}


.slider-arrow {

    position: absolute;

    top: 50%;

    z-index: 4;

    width: 42px;
    height: 42px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background: rgba(0, 16, 32, 0.58);

    color: var(--white);

    cursor: pointer;

    transform: translateY(-50%);

    backdrop-filter: blur(8px);

}


.slider-prev {

    left: 22px;

}


.slider-next {

    right: 22px;

}


.slider-dots {

    position: absolute;

    z-index: 4;

    left: 50%;
    bottom: 15px;

    display: flex;

    gap: 8px;

    transform: translateX(-50%);

}


.slider-dot {

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.55);

    cursor: pointer;

}


.slider-dot.active {

    width: 24px;

    border-radius: 999px;

    background: var(--mint);

}


/* =========================================================
   HOME INTRO
========================================================= */

.home-intro {

    padding-top: 78px;

}


.home-intro-grid {

    display: grid;

    grid-template-columns:
        1.05fr 0.95fr;

    align-items: end;

    gap: 80px;

}


.home-intro-title {

    max-width: 720px;

    font-family: var(--heading-font);

    font-size:
        clamp(2.8rem, 5vw, 5rem);

    line-height: 0.98;

    letter-spacing: -0.06em;

}


.home-intro-title span {

    color: #07896F;

}


.home-intro-copy p {

    max-width: 560px;

    color: var(--text);

    font-size: 1.02rem;

}


.intro-actions {

    display: flex;

    flex-wrap: wrap;

    gap: 11px;

    margin-top: 28px;

}


/* =========================================================
   INNER PAGE OPENING
========================================================= */

.page-opening {

    padding:
        80px 0
        65px;

    border-bottom: 1px solid var(--border);

}


.page-opening-grid {

    display: grid;

    grid-template-columns:
        1.2fr 0.8fr;

    align-items: end;

    gap: 75px;

}


.page-opening h1 {

    max-width: 850px;

    font-family: var(--heading-font);

    font-size:
        clamp(2.6rem, 5vw, 4.8rem);

    line-height: 1.03;

    letter-spacing: -0.055em;

}


.page-opening h1 span {

    color: #07896F;

}


.page-opening p {

    max-width: 450px;

    color: var(--text);

}


/* =========================================================
   SERVICES
========================================================= */

.services-list {

    border-top: 1px solid var(--border);

}


.service-item {

    display: grid;

    grid-template-columns:
        70px 1fr 70px;

    gap: 28px;

    align-items: center;

    padding: 31px 0;

    border-bottom: 1px solid var(--border);

    transition: var(--transition);

}


.service-item:hover {

    padding-left: 14px;

    padding-right: 14px;

    background: var(--soft-bg);

}


.service-number {

    color: #8795A4;

    font-size: 0.74rem;

    font-weight: 700;

}


.service-main h3 {

    font-family: var(--heading-font);

    font-size: 1.25rem;

}


.service-main p {

    max-width: 700px;

    margin-top: 6px;

    color: var(--text);

}


.service-main a {

    display: inline-flex;

    gap: 8px;

    margin-top: 14px;

    color: #05785F;

    font-size: 0.83rem;

    font-weight: 700;

}


.service-icon {

    width: 54px;
    height: 54px;

    display: grid;

    place-items: center;

    border-radius: 14px;

    background:
        rgba(14, 222, 176, 0.10);

    color: #07896F;

    font-size: 1.35rem;

}


.section-action {

    margin-top: 34px;

}


/* =========================================================
   EVENTS
========================================================= */

.event-grid {

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 15px;

}


.event-card {

    padding: 27px;

    border: 1px solid var(--dark-border);

    border-radius: 18px;

    background: var(--card-navy);

    transition: var(--transition);

}


.event-card:hover {

    transform: translateY(-4px);

    border-color:
        rgba(14, 222, 176, 0.28);

}


.event-card-top {

    display: flex;

    justify-content: space-between;

    margin-bottom: 35px;

}


.event-card-top span {

    color: #6F8396;

    font-size: 0.72rem;

}


.event-card-top i {

    color: var(--mint);

    font-size: 1.3rem;

}


.event-card h3 {

    color: var(--light);

}


.event-card p {

    margin-top: 10px;

    color: #9EADBC;

    font-size: 0.88rem;

}


.event-card a {

    display: inline-flex;

    gap: 8px;

    margin-top: 22px;

    color: var(--mint);

    font-size: 0.81rem;

    font-weight: 700;

}


/* =========================================================
   INDUSTRIES
========================================================= */

.industry-grid {

    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 12px;

}


.industry-card {

    min-height: 72px;

    display: flex;

    align-items: center;

    gap: 14px;

    padding: 17px 19px;

    border: 1px solid var(--border);

    border-radius: 13px;

    color: #405164;

    font-weight: 600;

}


.industry-card i {

    width: 38px;
    height: 38px;

    display: grid;

    place-items: center;

    border-radius: 10px;

    background:
        rgba(14, 222, 176, 0.10);

    color: #07896F;

}


/* =========================================================
   PROJECTS
========================================================= */

.featured-projects {

    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 18px;

}


.project-card {

    overflow: hidden;

    border: 1px solid var(--border);

    border-radius: 17px;

    background: var(--white);

}


.project-image {

    aspect-ratio: 16 / 10;

    overflow: hidden;

}


.project-image img {

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.5s ease;

}


.project-card:hover img {

    transform: scale(1.04);

}


.project-content {

    padding: 24px;

}


.project-category {

    color: #07896F;

    font-size: 0.68rem;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.09em;

}


.project-content h3 {

    margin-top: 7px;

    font-size: 1.15rem;

}


.project-content p {

    margin-top: 8px;

    color: var(--text);

    font-size: 0.88rem;

}


.project-content a {

    display: inline-flex;

    gap: 8px;

    margin-top: 18px;

    color: var(--dark-navy);

    font-size: 0.82rem;

    font-weight: 700;

}


/* =========================================================
   PROJECT LIBRARY
========================================================= */

.project-filter {

    display: flex;

    flex-wrap: wrap;

    gap: 8px;

    margin-bottom: 40px;

}


.filter-btn {

    min-height: 41px;

    padding: 0 16px;

    border: 1px solid var(--border);

    border-radius: 999px;

    background: var(--white);

    color: #58697B;

    cursor: pointer;

}


.filter-btn.active {

    background: var(--dark-navy);

    border-color: var(--dark-navy);

    color: var(--light);

}


.projects-library {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 20px;

}


.library-project-card {

    overflow: hidden;

    border: 1px solid var(--border);

    border-radius: 17px;

    background: var(--white);

}


.library-project-card.hidden {

    display: none;

}


.library-project-image {

    position: relative;

    aspect-ratio: 16 / 9;

    overflow: hidden;

}


.library-project-image img {

    width: 100%;
    height: 100%;

    object-fit: cover;

}


.library-project-number {

    position: absolute;

    top: 15px;
    right: 15px;

    min-width: 36px;
    height: 36px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background: rgba(0, 16, 32, 0.72);

    color: var(--light);

    font-size: 0.68rem;

}


.project-placeholder {

    display: grid;

    place-items: center;

    background: var(--dark-navy);

    color: var(--mint);

    font-size: 3rem;

}


.library-project-content {

    padding: 26px;

}


.project-meta {

    display: flex;

    justify-content: space-between;

    color: #7B8B9B;

    font-size: 0.7rem;

}


.library-project-content h2 {

    margin-top: 8px;

    font-size: 1.35rem;

}


.library-project-content p {

    margin-top: 9px;

    color: var(--text);

}


.project-tags {

    display: flex;

    flex-wrap: wrap;

    gap: 7px;

    margin-top: 18px;

}


.project-tags span {

    padding: 5px 9px;

    border-radius: 999px;

    background: var(--soft-bg);

    color: #657586;

    font-size: 0.67rem;

}


.library-project-content a {

    display: inline-flex;

    gap: 8px;

    margin-top: 20px;

    font-size: 0.84rem;

    font-weight: 700;

}


/* =========================================================
   ABOUT
========================================================= */

.about-preview {

    display: grid;

    grid-template-columns:
        1fr 0.9fr;

    gap: 80px;

}


.about-preview-copy p {

    margin-bottom: 17px;

    color: var(--text);

}


.process-strip {

    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    margin-top: 55px;

    overflow: hidden;

    border: 1px solid var(--border);

    border-radius: 15px;

}


.process-strip > div {

    padding: 23px;

    border-right: 1px solid var(--border);

}


.process-strip > div:last-child {

    border-right: none;

}


.process-strip span {

    display: block;

    margin-bottom: 6px;

    color: #07896F;

    font-size: 0.68rem;

}


.narrow-content {

    max-width: 900px;

}


.content-heading {

    font-size:
        clamp(2rem, 4vw, 3.5rem);

}


.long-copy {

    margin-top: 30px;

}


.long-copy p {

    margin-bottom: 19px;

    color: #506174;

}


.mission-grid {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;

}


.mission-card {

    padding: 35px;

    border: 1px solid var(--dark-border);

    border-radius: 18px;

    background: var(--card-navy);

}


.mission-card > i {

    color: var(--mint);

    font-size: 1.7rem;

}


.mission-card > span {

    display: block;

    margin-top: 30px;

    color: var(--mint);

    font-size: 0.7rem;

    text-transform: uppercase;

}


.mission-card h2 {

    margin-top: 8px;

    color: var(--light);

}


.mission-card p {

    margin-top: 14px;

    color: #A2B1BF;

}


.values-grid {

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 13px;

}


.value-card {

    padding: 25px;

    border: 1px solid var(--border);

    border-radius: 13px;

}


.value-card i {

    color: #07896F;

    font-size: 1.3rem;

}


.value-card h3 {

    margin-top: 25px;

    font-size: 0.95rem;

}


.team-grid {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;

}


.team-card {

    display: grid;

    grid-template-columns:
        auto 1fr;

    gap: 21px;

    padding: 29px;

    border: 1px solid var(--border);

    border-radius: 16px;

    background: var(--white);

}


.team-avatar {

    width: 58px;
    height: 58px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background: var(--dark-navy);

    color: var(--mint);

    font-weight: 800;

}


.team-role {

    color: #07896F;

    font-size: 0.68rem;

    text-transform: uppercase;

    letter-spacing: 0.09em;

}


.team-card p {

    margin-top: 9px;

    color: var(--text);

}


/* =========================================================
   TESTIMONIALS
========================================================= */

.testimonial-grid {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 18px;

    max-width: 950px;

}


.testimonial-card {

    padding: 30px;

    border: 1px solid var(--border);

    border-radius: 16px;

    background: var(--white);

}


.testimonial-icon {

    color: var(--mint);

    font-size: 2rem;

}


.testimonial-card p {

    margin:
        12px 0
        20px;

    color: #425467;

}


.testimonial-card span {

    display: block;

    color: var(--muted);

    font-size: 0.75rem;

}


/* =========================================================
   WORK PROCESS
========================================================= */

.work-process {

    display: grid;

    grid-template-columns:
        repeat(5, minmax(0, 1fr));

    gap: 12px;

}


.work-process article {

    padding: 24px;

    border: 1px solid var(--dark-border);

    border-radius: 14px;

    background: var(--card-navy);

}


.work-process article > span {

    color: #6D8093;

    font-size: 0.7rem;

}


.work-process i {

    display: block;

    margin-top: 25px;

    color: var(--mint);

    font-size: 1.35rem;

}


.work-process h3 {

    margin-top: 14px;

    color: var(--light);

}


.work-process p {

    margin-top: 8px;

    color: #91A3B5;

    font-size: 0.84rem;

}


/* =========================================================
   EVENTS PAGE
========================================================= */

.event-category-header {

    display: grid;

    grid-template-columns:
        1fr 0.7fr;

    gap: 70px;

    align-items: end;

    margin-bottom: 38px;

}


.event-category-header h2 {

    font-size:
        clamp(2rem, 4vw, 3.4rem);

}


.event-category-header p {

    color: var(--text);

}


.package-grid {

    display: grid;

    gap: 16px;

}


.three-packages {

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

}


.two-packages {

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    max-width: 900px;

}


.package-card {

    position: relative;

    min-height: 320px;

    display: flex;

    flex-direction: column;

    padding: 29px;

    border: 1px solid var(--border);

    border-radius: 17px;

    background: var(--white);

}


.package-card > i {

    color: #07896F;

    font-size: 1.4rem;

}


.package-label {

    display: block;

    margin-top: 27px;

    color: #07896F;

    font-size: 0.68rem;

    font-weight: 700;

    text-transform: uppercase;

    letter-spacing: 0.09em;

}


.package-card h3 {

    margin-top: 7px;

}


.package-card > p {

    margin-top: 10px;

    color: var(--text);

}


.featured-package {

    border-color:
        rgba(14, 222, 176, 0.65);

}


.package-badge {

    position: absolute;

    top: 18px;
    right: 18px;

    padding: 5px 10px;

    border-radius: 999px;

    background: var(--mint);

    color: var(--dark-navy);

    font-size: 0.63rem;

    font-weight: 700;

}


.package-actions {

    margin-top: auto;

    padding-top: 25px;

    display: flex;

    align-items: center;

    gap: 15px;

}


.package-actions button {

    padding: 10px 14px;

    border: 1px solid var(--border);

    border-radius: 999px;

    background: var(--white);

    color: var(--dark-navy);

    cursor: pointer;

}


.package-actions a {

    color: #07896F;

    font-size: 0.82rem;

    font-weight: 700;

}


.anniversary-block {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 45px;

}


.anniversary-block h2 {

    color: var(--light);

    font-size:
        clamp(2rem, 4vw, 3.4rem);

}


.anniversary-block p {

    max-width: 650px;

    margin-top: 12px;

    color: #9BADBE;

}


/* =========================================================
   PACKAGE MODAL
========================================================= */

.package-modal {

    position: fixed;

    inset: 0;

    z-index: 5000;

    display: none;

    align-items: center;

    justify-content: center;

    padding: 20px;

}


.package-modal.active {

    display: flex;

}


.package-modal-backdrop {

    position: absolute;

    inset: 0;

    background:
        rgba(0, 6, 17, 0.82);

}


.package-modal-dialog {

    position: relative;

    z-index: 2;

    width: min(620px, 100%);

    max-height: 88vh;

    overflow-y: auto;

    padding: 34px;

    border-radius: 18px;

    background: var(--white);

}


.modal-close {

    position: absolute;

    top: 16px;
    right: 16px;

    width: 38px;
    height: 38px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background: var(--soft-bg);

    cursor: pointer;

}


.package-modal-content h2 {

    padding-right: 45px;

    font-size: 2rem;

}


.package-modal-content > p {

    margin-top: 10px;

    color: var(--text);

}


.package-features {

    display: grid;

    gap: 9px;

    margin-top: 24px;

    list-style: none;

}


.package-features li {

    display: flex;

    align-items: flex-start;

    gap: 9px;

    color: #516275;

}


.package-features i {

    color: #07896F;

}


.modal-actions {

    margin-top: 27px;

    display: flex;

    flex-wrap: wrap;

    gap: 10px;

}


/* =========================================================
   CONTACT
========================================================= */

.contact-grid {

    display: grid;

    grid-template-columns:
        0.85fr 1.15fr;

    gap: 70px;

    align-items: start;

}


.contact-content h2 {

    font-size:
        clamp(2rem, 4vw, 3.2rem);

}


.contact-content > p {

    margin-top: 13px;

    color: var(--text);

}


.contact-details {

    display: grid;

    gap: 10px;

    margin-top: 31px;

}


.contact-detail {

    display: flex;

    align-items: center;

    gap: 15px;

    padding: 15px;

    border: 1px solid var(--border);

    border-radius: 12px;

}


.contact-icon {

    width: 43px;
    height: 43px;

    display: grid;

    place-items: center;

    border-radius: 10px;

    background:
        rgba(14, 222, 176, 0.10);

    color: #07896F;

}


.contact-detail span {

    display: block;

    color: var(--muted);

    font-size: 0.7rem;

}


.contact-detail strong {

    font-size: 0.86rem;

}


.contact-form {

    display: grid;

    gap: 17px;

    padding: 35px;

    border: 1px solid var(--border);

    border-radius: 17px;

    background: var(--white);

    box-shadow:
        0 16px 40px rgba(0, 16, 32, 0.05);

}


.form-honey {

    position: absolute;

    left: -9999px;

}


.form-group {

    display: grid;

    gap: 7px;

}


.form-group label {

    font-size: 0.78rem;

    font-weight: 700;

}


.form-group input,
.form-group select,
.form-group textarea {

    width: 100%;

    border: 1px solid #D1DBE1;

    border-radius: 10px;

    outline: none;

    background: var(--white);

    transition: var(--transition);

}


.form-group input,
.form-group select {

    height: 50px;

    padding: 0 14px;

}


.form-group textarea {

    padding: 14px;

    resize: vertical;

}


.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {

    border-color: var(--mint);

}


/* =========================================================
   CTA
========================================================= */

.main-cta {

    padding: 68px 0;

    background: var(--dark-navy);

}


.main-cta-inner {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 50px;

}


.main-cta h2 {

    max-width: 760px;

    color: var(--light);

    font-size:
        clamp(2rem, 4vw, 3.5rem);

    line-height: 1.07;

}


.main-cta h2 span {

    color: var(--mint);

}


/* =========================================================
   FOOTER
========================================================= */

.footer {

    padding:
        65px 0
        25px;

    background: var(--black-navy);

    color: var(--light);

}


.footer-grid {

    display: grid;

    grid-template-columns:
        1.5fr 1fr 1fr 1fr;

    gap: 45px;

}


.footer-brand img {

    width: 210px;
    height: 75px;

    object-fit: contain;

}


.footer-brand p {

    margin-top: 15px;

    color: #7F91A3;

}


.footer-column {

    display: flex;

    flex-direction: column;

    align-items: flex-start;

    gap: 9px;

}


.footer-column h4 {

    margin-bottom: 7px;

    color: var(--light);

}


.footer-column a,
.footer-column > span {

    color: #8395A7;

    font-size: 0.8rem;

}


.footer-column a:hover {

    color: var(--mint);

}


.footer-start-link {

    margin-top: 8px;

    color: var(--mint) !important;

}


.footer-socials {

    display: flex;

    gap: 8px;

    margin-top: 17px;

}


.footer-socials a {

    width: 36px;
    height: 36px;

    display: grid;

    place-items: center;

    border: 1px solid var(--dark-border);

    border-radius: 50%;

    color: var(--light);

}


.footer-bottom {

    margin-top: 50px;

    padding-top: 20px;

    border-top: 1px solid var(--dark-border);

}


.footer-bottom p {

    color: #607387;

    font-size: 0.74rem;

}


/* =========================================================
   WHATSAPP FLOAT
========================================================= */

.whatsapp-float {

    position: fixed;

    right: 20px;
    bottom: 20px;

    z-index: 900;

    width: 54px;
    height: 54px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background: var(--mint);

    color: var(--dark-navy);

    font-size: 1.55rem;

    box-shadow:
        0 10px 28px rgba(0, 16, 32, 0.18);

    transition: var(--transition);

}


.whatsapp-float:hover {

    transform: translateY(-3px);

    background: var(--mint-light);

}


/* =========================================================
   REVEAL
========================================================= */

.reveal {

    opacity: 0;

    transform: translateY(22px);

    transition:
        opacity 0.65s ease,
        transform 0.65s ease;

}


.reveal.visible {

    opacity: 1;

    transform: translateY(0);

}


/* =========================================================
   TOAST
========================================================= */

.site-toast {

    position: fixed;

    right: 20px;
    bottom: 90px;

    z-index: 5500;

    width: min(390px, calc(100% - 30px));

    display: flex;

    justify-content: space-between;

    gap: 14px;

    padding: 17px;

    border: 1px solid var(--border);

    border-radius: 13px;

    background: var(--white);

    box-shadow:
        0 18px 50px rgba(0, 16, 32, 0.15);

    opacity: 0;

    visibility: hidden;

    transform: translateY(18px);

    transition: var(--transition);

}


.site-toast.show {

    opacity: 1;

    visibility: visible;

    transform: translateY(0);

}


.site-toast p {

    margin-top: 3px;

    color: var(--text);

    font-size: 0.79rem;

}


.site-toast button {

    background: transparent;

    cursor: pointer;

}
/* =========================================================
   HERO SLIDER - SWIPE ONLY
   Removes arrows and enables touch swiping
========================================================= */

.home-slider {
    touch-action: pan-y;
    cursor: grab;
}

.home-slider:active {
    cursor: grabbing;
}

/* Hide arrows completely in case any remain */
.slider-arrow,
.slider-prev,
.slider-next {
    display: none !important;
}
/* =========================================================
   HERO SLIDER - AUTO SLIDESHOW + MANUAL SWIPE
========================================================= */

.home-slider {
    touch-action: pan-y;
    cursor: grab;
}

.home-slider:active {
    cursor: grabbing;
}

/* Hide arrows completely */
.slider-arrow,
.slider-prev,
.slider-next {
    display: none !important;
}
/* =========================================================
   HERO HEIGHT - DESKTOP/LAPTOP OVERRIDE
========================================================= */

@media (min-width: 881px) {

    .home-slider {
        height: 450px;
    }

}
/* =========================================================
   FLOATING ACTION BUTTONS
========================================================= */

.back-to-top {

    position: fixed;

    right: 20px;

    bottom: 84px;

    z-index: 900;

    width: 46px;
    height: 46px;

    display: grid;

    place-items: center;

    border-radius: 50%;

    background: var(--dark-navy);

    color: var(--light);

    font-size: 1.05rem;

    cursor: pointer;

    box-shadow:
        0 10px 28px rgba(0, 16, 32, 0.16);

    opacity: 0;

    visibility: hidden;

    transform: translateY(10px);

    transition: var(--transition);

}


.back-to-top.show {

    opacity: 1;

    visibility: visible;

    transform: translateY(0);

}


.back-to-top:hover {

    background: var(--mint);

    color: var(--dark-navy);

    transform: translateY(-3px);

}


/* WHATSAPP STAYS BELOW */

.whatsapp-float {

    right: 20px;

    bottom: 20px;

}
/* =========================================================
   ATO DIGITAL SOLUTIONS
   PREMIUM GLASS UI OVERRIDE
   Paste at the VERY BOTTOM of style.css
========================================================= */


/* =========================================================
   GLASS DESIGN VARIABLES
========================================================= */

:root {

    --glass-bg:
        rgba(255, 255, 255, 0.62);

    --glass-bg-strong:
        rgba(255, 255, 255, 0.78);

    --glass-bg-soft:
        rgba(255, 255, 255, 0.42);

    --glass-dark:
        rgba(1, 29, 52, 0.58);

    --glass-dark-strong:
        rgba(0, 16, 32, 0.76);

    --glass-border:
        rgba(255, 255, 255, 0.52);

    --glass-border-soft:
        rgba(0, 16, 32, 0.08);

    --glass-dark-border:
        rgba(255, 255, 255, 0.10);

    --glass-shadow:
        0 18px 50px rgba(0, 16, 32, 0.10);

    --glass-shadow-hover:
        0 24px 65px rgba(0, 16, 32, 0.15);

    --glass-dark-shadow:
        0 20px 55px rgba(0, 6, 17, 0.28);

    --glass-blur: 20px;

}


/* =========================================================
   PAGE BACKGROUND
========================================================= */

html {

    background: #F4F8FA;

}


body {

    position: relative;

    background:
        radial-gradient(
            circle at 8% 12%,
            rgba(14, 222, 176, 0.10),
            transparent 27%
        ),
        radial-gradient(
            circle at 92% 28%,
            rgba(4, 78, 123, 0.10),
            transparent 30%
        ),
        radial-gradient(
            circle at 25% 78%,
            rgba(111, 241, 202, 0.08),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #F8FBFC 0%,
            #EEF5F7 45%,
            #F7FBFA 100%
        );

    background-attachment: fixed;

}


/* =========================================================
   SOFT SECTIONS
========================================================= */

.soft-section {

    position: relative;

    background:
        linear-gradient(
            135deg,
            rgba(238, 247, 247, 0.78),
            rgba(244, 248, 250, 0.62)
        );

}


/* =========================================================
   NAVBAR GLASS
========================================================= */

.site-header {

    background:
        rgba(248, 252, 252, 0.74);

    border-bottom:
        1px solid rgba(255, 255, 255, 0.72);

    box-shadow:
        0 8px 35px rgba(0, 16, 32, 0.08);

    backdrop-filter:
        blur(24px) saturate(150%);

    -webkit-backdrop-filter:
        blur(24px) saturate(150%);

}


/* NAV LINKS */

.nav-link {

    color: #526477;

}


.nav-link:hover,
.nav-link.active {

    color: var(--dark-navy);

}


/* NAV CTA */

.nav-cta {

    background:
        rgba(0, 16, 32, 0.90);

    border:
        1px solid rgba(255, 255, 255, 0.08);

    box-shadow:
        0 8px 22px rgba(0, 16, 32, 0.14);

    backdrop-filter: blur(12px);

    -webkit-backdrop-filter: blur(12px);

}


/* =========================================================
   MOBILE MENU BUTTON
========================================================= */

.mobile-menu-btn {

    background:
        rgba(255, 255, 255, 0.52);

    border:
        1px solid rgba(255, 255, 255, 0.72);

    box-shadow:
        0 8px 24px rgba(0, 16, 32, 0.08);

    backdrop-filter:
        blur(16px);

    -webkit-backdrop-filter:
        blur(16px);

}


/* =========================================================
   MOBILE NAVIGATION GLASS
========================================================= */

.mobile-nav {

    background:
        rgba(248, 252, 252, 0.88);

    border-bottom:
        1px solid rgba(255, 255, 255, 0.72);

    box-shadow:
        0 22px 50px rgba(0, 16, 32, 0.13);

    backdrop-filter:
        blur(26px) saturate(150%);

    -webkit-backdrop-filter:
        blur(26px) saturate(150%);

}


.mobile-nav > a {

    border-bottom:
        1px solid rgba(0, 16, 32, 0.07);

}


/* =========================================================
   HERO SLIDER
========================================================= */

.home-slider {

    background:
        rgba(0, 16, 32, 0.92);

    box-shadow:
        0 22px 60px rgba(0, 16, 32, 0.12);

}


/* DOTS */

.slider-dots {

    padding: 8px 12px;

    border:
        1px solid rgba(255, 255, 255, 0.12);

    border-radius: 999px;

    background:
        rgba(0, 16, 32, 0.32);

    backdrop-filter:
        blur(14px);

    -webkit-backdrop-filter:
        blur(14px);

}


/* =========================================================
   PAGE OPENING
========================================================= */

.page-opening {

    position: relative;

    border-bottom:
        1px solid rgba(0, 16, 32, 0.07);

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.36),
            rgba(255, 255, 255, 0.10)
        );

}


/* =========================================================
   BUTTONS
========================================================= */

.btn {

    border:
        1px solid rgba(255, 255, 255, 0.18);

    box-shadow:
        0 8px 24px rgba(0, 16, 32, 0.08);

}


.btn-primary {

    background:
        rgba(14, 222, 176, 0.88);

    box-shadow:
        0 10px 28px rgba(14, 222, 176, 0.18);

    backdrop-filter: blur(10px);

    -webkit-backdrop-filter: blur(10px);

}


.btn-primary:hover {

    background:
        rgba(111, 241, 202, 0.96);

    box-shadow:
        0 14px 34px rgba(14, 222, 176, 0.24);

}


.btn-outline {

    background:
        rgba(255, 255, 255, 0.36);

    border:
        1px solid rgba(0, 16, 32, 0.12);

    backdrop-filter:
        blur(14px);

    -webkit-backdrop-filter:
        blur(14px);

}


.btn-outline:hover {

    background:
        rgba(255, 255, 255, 0.66);

    border-color:
        rgba(14, 222, 176, 0.50);

}


/* =========================================================
   SERVICES
========================================================= */

.services-list {

    border-top:
        1px solid rgba(0, 16, 32, 0.08);

}


.service-item {

    padding-left: 18px;
    padding-right: 18px;

    border-bottom:
        1px solid rgba(0, 16, 32, 0.07);

    border-radius: 14px;

    transition:
        transform 0.28s ease,
        background 0.28s ease,
        box-shadow 0.28s ease,
        border-color 0.28s ease;

}


.service-item:hover {

    padding-left: 18px;
    padding-right: 18px;

    background:
        rgba(255, 255, 255, 0.56);

    border-color:
        rgba(255, 255, 255, 0.72);

    box-shadow:
        var(--glass-shadow);

    backdrop-filter:
        blur(var(--glass-blur));

    -webkit-backdrop-filter:
        blur(var(--glass-blur));

    transform:
        translateY(-2px);

}


.service-icon {

    border:
        1px solid rgba(14, 222, 176, 0.16);

    background:
        rgba(14, 222, 176, 0.09);

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.45);

    backdrop-filter: blur(12px);

    -webkit-backdrop-filter: blur(12px);

}


/* =========================================================
   DARK SECTIONS
========================================================= */

.dark-section {

    position: relative;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 10% 10%,
            rgba(14, 222, 176, 0.08),
            transparent 30%
        ),
        radial-gradient(
            circle at 90% 90%,
            rgba(4, 78, 123, 0.20),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            #000B17,
            #00162A 50%,
            #001020
        );

}


.dark-section::before {

    content: "";

    position: absolute;

    width: 320px;
    height: 320px;

    top: -180px;
    right: -100px;

    border-radius: 50%;

    background:
        rgba(14, 222, 176, 0.08);

    filter: blur(70px);

    pointer-events: none;

}


.dark-section > .container {

    position: relative;

    z-index: 1;

}


/* =========================================================
   EVENT CARDS - DARK GLASS
========================================================= */

.event-card {

    border:
        1px solid rgba(255, 255, 255, 0.10);

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.075),
            rgba(1, 29, 52, 0.42)
        );

    box-shadow:
        0 16px 42px rgba(0, 6, 17, 0.18);

    backdrop-filter:
        blur(20px) saturate(130%);

    -webkit-backdrop-filter:
        blur(20px) saturate(130%);

}


.event-card:hover {

    transform:
        translateY(-6px);

    border-color:
        rgba(14, 222, 176, 0.32);

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.10),
            rgba(1, 29, 52, 0.52)
        );

    box-shadow:
        0 22px 55px rgba(0, 6, 17, 0.30);

}


/* =========================================================
   INDUSTRY CARDS
========================================================= */

.industry-card {

    border:
        1px solid rgba(255, 255, 255, 0.72);

    background:
        rgba(255, 255, 255, 0.48);

    box-shadow:
        0 10px 30px rgba(0, 16, 32, 0.055);

    backdrop-filter:
        blur(17px) saturate(130%);

    -webkit-backdrop-filter:
        blur(17px) saturate(130%);

    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease,
        border-color 0.28s ease;

}


.industry-card:hover {

    transform:
        translateY(-3px);

    border-color:
        rgba(14, 222, 176, 0.34);

    box-shadow:
        0 18px 42px rgba(0, 16, 32, 0.10);

}


.industry-card i {

    border:
        1px solid rgba(14, 222, 176, 0.16);

    background:
        rgba(14, 222, 176, 0.09);

    backdrop-filter: blur(10px);

    -webkit-backdrop-filter: blur(10px);

}


/* =========================================================
   PROJECT CARDS
========================================================= */

.project-card,
.library-project-card {

    border:
        1px solid rgba(255, 255, 255, 0.70);

    background:
        rgba(255, 255, 255, 0.52);

    box-shadow:
        0 14px 38px rgba(0, 16, 32, 0.07);

    backdrop-filter:
        blur(20px) saturate(135%);

    -webkit-backdrop-filter:
        blur(20px) saturate(135%);

    transition:
        transform 0.3s ease,
        box-shadow 0.3s ease,
        border-color 0.3s ease;

}


.project-card:hover,
.library-project-card:hover {

    transform:
        translateY(-5px);

    border-color:
        rgba(14, 222, 176, 0.32);

    box-shadow:
        0 24px 60px rgba(0, 16, 32, 0.13);

}


.project-image,
.library-project-image {

    background:
        rgba(0, 16, 32, 0.08);

}


.library-project-number {

    border:
        1px solid rgba(255, 255, 255, 0.16);

    background:
        rgba(0, 16, 32, 0.58);

    box-shadow:
        0 8px 20px rgba(0, 6, 17, 0.20);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);

}


/* =========================================================
   PROJECT FILTERS
========================================================= */

.filter-btn {

    border:
        1px solid rgba(255, 255, 255, 0.70);

    background:
        rgba(255, 255, 255, 0.48);

    box-shadow:
        0 6px 18px rgba(0, 16, 32, 0.05);

    backdrop-filter:
        blur(14px);

    -webkit-backdrop-filter:
        blur(14px);

    transition:
        var(--transition);

}


.filter-btn:hover {

    border-color:
        rgba(14, 222, 176, 0.40);

    background:
        rgba(255, 255, 255, 0.70);

}


.filter-btn.active {

    background:
        rgba(0, 16, 32, 0.92);

    border-color:
        rgba(0, 16, 32, 0.92);

    box-shadow:
        0 9px 24px rgba(0, 16, 32, 0.16);

}


/* =========================================================
   PROJECT TAGS
========================================================= */

.project-tags span {

    border:
        1px solid rgba(255, 255, 255, 0.65);

    background:
        rgba(255, 255, 255, 0.42);

    backdrop-filter:
        blur(10px);

    -webkit-backdrop-filter:
        blur(10px);

}


/* =========================================================
   ABOUT PROCESS STRIP
========================================================= */

.process-strip {

    border:
        1px solid rgba(255, 255, 255, 0.70);

    background:
        rgba(255, 255, 255, 0.44);

    box-shadow:
        0 14px 40px rgba(0, 16, 32, 0.07);

    backdrop-filter:
        blur(18px) saturate(130%);

    -webkit-backdrop-filter:
        blur(18px) saturate(130%);

}


.process-strip > div {

    border-right:
        1px solid rgba(0, 16, 32, 0.07);

}


/* =========================================================
   MISSION CARDS
========================================================= */

.mission-card {

    border:
        1px solid rgba(255, 255, 255, 0.10);

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.075),
            rgba(1, 29, 52, 0.45)
        );

    box-shadow:
        0 18px 45px rgba(0, 6, 17, 0.20);

    backdrop-filter:
        blur(20px);

    -webkit-backdrop-filter:
        blur(20px);

    transition:
        transform 0.28s ease,
        border-color 0.28s ease;

}


.mission-card:hover {

    transform:
        translateY(-4px);

    border-color:
        rgba(14, 222, 176, 0.28);

}


/* =========================================================
   VALUE CARDS
========================================================= */

.value-card {

    border:
        1px solid rgba(255, 255, 255, 0.68);

    background:
        rgba(255, 255, 255, 0.46);

    box-shadow:
        0 12px 34px rgba(0, 16, 32, 0.06);

    backdrop-filter:
        blur(18px);

    -webkit-backdrop-filter:
        blur(18px);

    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease,
        border-color 0.28s ease;

}


.value-card:hover {

    transform:
        translateY(-4px);

    border-color:
        rgba(14, 222, 176, 0.30);

    box-shadow:
        0 20px 48px rgba(0, 16, 32, 0.11);

}


/* =========================================================
   TEAM CARDS
========================================================= */

.team-card {

    border:
        1px solid rgba(255, 255, 255, 0.72);

    background:
        rgba(255, 255, 255, 0.52);

    box-shadow:
        0 15px 40px rgba(0, 16, 32, 0.07);

    backdrop-filter:
        blur(20px) saturate(130%);

    -webkit-backdrop-filter:
        blur(20px) saturate(130%);

    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease;

}


.team-card:hover {

    transform:
        translateY(-4px);

    box-shadow:
        0 23px 55px rgba(0, 16, 32, 0.12);

}


.team-avatar {

    border:
        1px solid rgba(255, 255, 255, 0.12);

    background:
        rgba(0, 16, 32, 0.90);

    box-shadow:
        0 10px 25px rgba(0, 16, 32, 0.15);

}


/* =========================================================
   TESTIMONIAL CARDS
========================================================= */

.testimonial-card {

    border:
        1px solid rgba(255, 255, 255, 0.72);

    background:
        rgba(255, 255, 255, 0.50);

    box-shadow:
        0 15px 42px rgba(0, 16, 32, 0.07);

    backdrop-filter:
        blur(20px) saturate(130%);

    -webkit-backdrop-filter:
        blur(20px) saturate(130%);

}


/* =========================================================
   WORK PROCESS
========================================================= */

.work-process article {

    border:
        1px solid rgba(255, 255, 255, 0.10);

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.075),
            rgba(1, 29, 52, 0.45)
        );

    box-shadow:
        0 15px 40px rgba(0, 6, 17, 0.20);

    backdrop-filter:
        blur(20px);

    -webkit-backdrop-filter:
        blur(20px);

    transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;

}


.work-process article:hover {

    transform:
        translateY(-5px);

    border-color:
        rgba(14, 222, 176, 0.28);

    box-shadow:
        0 22px 52px rgba(0, 6, 17, 0.28);

}


/* =========================================================
   EVENT PACKAGE CARDS
========================================================= */

.package-card {

    border:
        1px solid rgba(255, 255, 255, 0.72);

    background:
        rgba(255, 255, 255, 0.52);

    box-shadow:
        0 15px 42px rgba(0, 16, 32, 0.07);

    backdrop-filter:
        blur(20px) saturate(135%);

    -webkit-backdrop-filter:
        blur(20px) saturate(135%);

    transition:
        transform 0.28s ease,
        box-shadow 0.28s ease,
        border-color 0.28s ease;

}


.package-card:hover {

    transform:
        translateY(-5px);

    border-color:
        rgba(14, 222, 176, 0.34);

    box-shadow:
        0 24px 60px rgba(0, 16, 32, 0.13);

}


.featured-package {

    border-color:
        rgba(14, 222, 176, 0.50);

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.68),
            rgba(226, 255, 247, 0.42)
        );

    box-shadow:
        0 20px 55px rgba(14, 222, 176, 0.10);

}


.package-badge {

    border:
        1px solid rgba(255, 255, 255, 0.30);

    background:
        rgba(14, 222, 176, 0.88);

    box-shadow:
        0 8px 20px rgba(14, 222, 176, 0.18);

    backdrop-filter:
        blur(10px);

    -webkit-backdrop-filter:
        blur(10px);

}


.package-actions button {

    border:
        1px solid rgba(0, 16, 32, 0.09);

    background:
        rgba(255, 255, 255, 0.48);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);

    transition:
        var(--transition);

}


.package-actions button:hover {

    border-color:
        rgba(14, 222, 176, 0.45);

    background:
        rgba(255, 255, 255, 0.76);

}


/* =========================================================
   CONTACT DETAILS
========================================================= */

.contact-detail {

    border:
        1px solid rgba(255, 255, 255, 0.72);

    background:
        rgba(255, 255, 255, 0.46);

    box-shadow:
        0 10px 30px rgba(0, 16, 32, 0.055);

    backdrop-filter:
        blur(17px);

    -webkit-backdrop-filter:
        blur(17px);

    transition:
        transform 0.28s ease,
        border-color 0.28s ease,
        box-shadow 0.28s ease;

}


.contact-detail:hover {

    transform:
        translateX(4px);

    border-color:
        rgba(14, 222, 176, 0.30);

    box-shadow:
        0 15px 38px rgba(0, 16, 32, 0.09);

}


.contact-icon {

    border:
        1px solid rgba(14, 222, 176, 0.15);

    background:
        rgba(14, 222, 176, 0.09);

}


/* =========================================================
   CONTACT FORM GLASS
========================================================= */

.contact-form {

    border:
        1px solid rgba(255, 255, 255, 0.74);

    background:
        rgba(255, 255, 255, 0.54);

    box-shadow:
        0 22px 60px rgba(0, 16, 32, 0.10);

    backdrop-filter:
        blur(24px) saturate(135%);

    -webkit-backdrop-filter:
        blur(24px) saturate(135%);

}


/* FORM FIELDS */

.form-group input,
.form-group select,
.form-group textarea {

    border:
        1px solid rgba(0, 16, 32, 0.10);

    background:
        rgba(255, 255, 255, 0.58);

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.75);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);

}


.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {

    border-color:
        rgba(14, 222, 176, 0.72);

    background:
        rgba(255, 255, 255, 0.82);

    box-shadow:
        0 0 0 4px rgba(14, 222, 176, 0.08);

}


/* =========================================================
   PACKAGE MODAL BACKDROP
========================================================= */

.package-modal-backdrop {

    background:
        rgba(0, 6, 17, 0.70);

    backdrop-filter:
        blur(10px);

    -webkit-backdrop-filter:
        blur(10px);

}


/* =========================================================
   PACKAGE MODAL GLASS
========================================================= */

.package-modal-dialog {

    border:
        1px solid rgba(255, 255, 255, 0.70);

    background:
        rgba(248, 252, 252, 0.88);

    box-shadow:
        0 30px 90px rgba(0, 6, 17, 0.28);

    backdrop-filter:
        blur(28px) saturate(145%);

    -webkit-backdrop-filter:
        blur(28px) saturate(145%);

}


.modal-close {

    border:
        1px solid rgba(255, 255, 255, 0.70);

    background:
        rgba(255, 255, 255, 0.48);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);

}


/* =========================================================
   MAIN CTA
========================================================= */

.main-cta {

    position: relative;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 15% 50%,
            rgba(14, 222, 176, 0.10),
            transparent 30%
        ),
        radial-gradient(
            circle at 85% 50%,
            rgba(4, 78, 123, 0.30),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            #000B17,
            #00182D,
            #001020
        );

}


.main-cta::before {

    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    right: 5%;
    top: -140px;

    border-radius: 50%;

    background:
        rgba(14, 222, 176, 0.09);

    filter:
        blur(65px);

    pointer-events: none;

}


.main-cta-inner {

    position: relative;

    z-index: 2;

}


/* =========================================================
   FOOTER
========================================================= */

.footer {

    position: relative;

    background:
        linear-gradient(
            145deg,
            #00050D,
            #000B16 50%,
            #001020
        );

    border-top:
        1px solid rgba(255, 255, 255, 0.06);

}


/* =========================================================
   TOAST GLASS
========================================================= */

.site-toast {

    border:
        1px solid rgba(255, 255, 255, 0.72);

    background:
        rgba(248, 252, 252, 0.86);

    box-shadow:
        0 22px 60px rgba(0, 16, 32, 0.16);

    backdrop-filter:
        blur(24px) saturate(140%);

    -webkit-backdrop-filter:
        blur(24px) saturate(140%);

}


/* =========================================================
   FLOATING WHATSAPP
========================================================= */

.whatsapp-float {

    border:
        1px solid rgba(255, 255, 255, 0.28);

    background:
        rgba(14, 222, 176, 0.88);

    box-shadow:
        0 14px 38px rgba(0, 16, 32, 0.20);

    backdrop-filter:
        blur(14px);

    -webkit-backdrop-filter:
        blur(14px);

}


/* =========================================================
   BACK TO TOP
========================================================= */

.back-to-top {

    border:
        1px solid rgba(255, 255, 255, 0.12);

    background:
        rgba(0, 16, 32, 0.80);

    box-shadow:
        0 14px 38px rgba(0, 16, 32, 0.18);

    backdrop-filter:
        blur(16px);

    -webkit-backdrop-filter:
        blur(16px);

}


/* =========================================================
   SUBTLE GLASS HIGHLIGHT
========================================================= */

.project-card,
.library-project-card,
.package-card,
.team-card,
.testimonial-card,
.value-card,
.industry-card,
.contact-detail,
.contact-form,
.process-strip {

    position: relative;

}


/* =========================================================
   BETTER SELECTION
========================================================= */

::selection {

    background:
        rgba(14, 222, 176, 0.30);

    color:
        var(--dark-navy);

}


/* =========================================================
   GLASS FALLBACK
   Browsers without backdrop-filter remain readable
========================================================= */

@supports not (
    (backdrop-filter: blur(10px))
) {

    .site-header,
    .mobile-nav,
    .project-card,
    .library-project-card,
    .package-card,
    .team-card,
    .testimonial-card,
    .value-card,
    .industry-card,
    .contact-detail,
    .contact-form,
    .process-strip,
    .site-toast {

        background:
            rgba(255, 255, 255, 0.94);

    }


    .event-card,
    .mission-card,
    .work-process article {

        background:
            rgba(1, 29, 52, 0.96);

    }

}
/* =========================================================
   ATO DIGITAL SOLUTIONS
   MOBILE PERFORMANCE OPTIMIZATION
   Keeps glass appearance while reducing GPU workload
========================================================= */

@media (max-width: 880px) {

    /* Fixed navbar - lighter blur for smoother scrolling */
    .site-header {
        backdrop-filter: blur(8px) saturate(120%);
        -webkit-backdrop-filter: blur(8px) saturate(120%);
    }


    /* Mobile navigation */
    .mobile-nav {
        backdrop-filter: blur(8px) saturate(120%);
        -webkit-backdrop-filter: blur(8px) saturate(120%);
    }


    /* Project glass cards */
    .project-card,
    .library-project-card {
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
    }


    /* Contact form */
    .contact-form {
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
    }

}


@media (max-width: 620px) {

    /* Slider dots do not need an expensive blur on phones */
    .slider-dots {
        backdrop-filter: none;
        -webkit-backdrop-filter: none;

        background: rgba(0, 16, 32, 0.55);
    }


    /* Reduce rendering work while scrolling */
    .event-card,
    .industry-card,
    .project-card,
    .library-project-card {
        will-change: auto;
    }


    /* Keep images GPU-friendly */
    img {
        height: auto;
    }


    /* Hero images must still fill slider */
    .slide img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

}