/* CCS Homepage – Version 1.4.0 */

html, body {
    margin: 0 !important;
    padding: 0 !important;
    background: #080b0e !important;
}

body.ccs-homepage-active {
    overflow-x: hidden;
}

body.ccs-homepage-active .elementor,
body.ccs-homepage-active .elementor-element,
body.ccs-homepage-active .elementor-widget,
body.ccs-homepage-active .elementor-widget-container {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

.ccs-site,
.ccs-site * {
    box-sizing: border-box;
}

.ccs-site {
    --bg: #080b0e;
    --bg-soft: #0d1217;
    --orange: #e87922;
    --orange-soft: #f39a4b;
    --red: #e42d24;
    --text: #c2c8cd;
    --muted: #8c959d;
    width: 100%;
    margin-left: 0;
    background: var(--bg);
    color: #fff;
    overflow: hidden;
    font-family: "Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.ccs-shell {
    width: min(1450px, 92%);
    margin: 0 auto;
}

.ccs-overline {
    color: var(--orange);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3.2px;
    text-transform: uppercase;
}

.ccs-overline-red {
    color: #ff5148;
}

/* Header */
.ccs-header {
    position: absolute;
    inset: 0 0 auto 0;
    z-index: 20;
    border-bottom: 1px solid rgba(255,255,255,.12);
    background: linear-gradient(to bottom, rgba(2,7,11,.82), rgba(2,7,11,.18));
    backdrop-filter: blur(4px);
}

.ccs-header-inner {
    width: min(1450px, 92%);
    height: 108px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
}

.ccs-brand {
    display: flex;
    align-items: center;
    gap: 17px;
    color: #fff;
    text-decoration: none;
}

.ccs-brand-line {
    width: 3px;
    height: 54px;
    background: var(--orange);
}

.ccs-brand-copy {
    display: flex;
    flex-direction: column;
}

.ccs-brand-copy strong {
    font-size: 25px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: -.5px;
}

.ccs-brand-copy small {
    margin-top: 7px;
    color: #a1a9b0;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 3.3px;
    text-transform: uppercase;
}

.ccs-nav {
    display: flex;
    gap: 27px;
    align-items: center;
}

.ccs-nav a {
    color: #e4e7e9;
    text-decoration: none;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.25px;
    text-transform: uppercase;
    transition: .2s ease;
}

.ccs-nav a:hover {
    color: var(--orange);
}

.ccs-nav .ccs-nav-mega {
    color: #ff554b;
}

/* Hero */
.ccs-hero {
    position: relative;
    min-height: 860px;
    height: 100vh;
    max-height: 1060px;
    background-image:
        linear-gradient(90deg, rgba(3,8,13,.95) 0%, rgba(3,8,13,.78) 31%, rgba(3,8,13,.36) 60%, rgba(3,8,13,.06) 100%),
        url('https://competence-center-schwaben.de/wp-content/uploads/2026/08/ChatGPT-Image-19.-Aug.-2026-11_31_27.png');
    background-size: cover;
    background-position: center center;
}

.ccs-hero-shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top, rgba(8,11,14,1) 0%, rgba(8,11,14,.08) 32%, transparent 60%),
        radial-gradient(circle at 13% 24%, rgba(236,137,45,.13), transparent 26%);
}

.ccs-hero-inner {
    position: relative;
    z-index: 4;
    height: 100%;
    display: flex;
    align-items: center;
    padding-top: 85px;
}

.ccs-hero-copy {
    width: min(860px, 73%);
}

.ccs-kicker {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 28px;
    color: #d9dde0;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 3.1px;
    text-transform: uppercase;
}

.ccs-kicker::before {
    content: "";
    width: 48px;
    height: 2px;
    background: var(--orange);
}

.ccs-hero h1,
.ccs-intro h2,
.ccs-machinery h2,
.ccs-contact h2 {
    margin: 0;
    font-family: "Avenir Next", Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 700;
    letter-spacing: -4.2px;
}

.ccs-hero h1 {
    font-size: clamp(64px, 7vw, 116px);
    line-height: .87;
    text-transform: uppercase;
    text-shadow: 0 20px 45px rgba(0,0,0,.34);
}

.ccs-hero h1 span {
    display: block;
    color: var(--orange);
}

.ccs-hero-copy > p {
    max-width: 660px;
    margin: 34px 0 0;
    color: var(--text);
    font-size: 16px;
    line-height: 1.72;
}

.ccs-actions {
    display: flex;
    gap: 13px;
    flex-wrap: wrap;
    margin-top: 38px;
}

.ccs-button {
    min-height: 53px;
    padding: 0 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.45px;
    text-transform: uppercase;
    transition: .2s ease;
}

.ccs-button-primary {
    background: var(--orange);
    border: 1px solid var(--orange);
}

.ccs-button-primary:hover {
    background: var(--orange-soft);
    transform: translateY(-2px);
}

.ccs-button-ghost {
    border: 1px solid rgba(255,255,255,.35);
    background: rgba(0,0,0,.16);
}

.ccs-button-ghost:hover {
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.65);
}

.ccs-button-red {
    background: var(--red);
    border: 1px solid var(--red);
}

.ccs-button-red:hover {
    background: #ff4439;
    transform: translateY(-2px);
}

/* Direct MEGASTAR entry in the hero – intentionally understated. */
.ccs-button-megastar {
    gap: 12px;
    border: 1px solid rgba(228,45,36,.78);
    background: rgba(10,8,9,.62);
    color: #fff;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.015);
}

.ccs-button-megastar::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #e42d24;
    box-shadow: 0 0 16px rgba(228,45,36,.58);
}

.ccs-button-megastar:hover {
    border-color: #ff554b;
    background: rgba(228,45,36,.12);
    transform: translateY(-2px);
}

.ccs-button-megastar span {
    color: #ff6259;
    font-size: 15px;
    line-height: 1;
}

.ccs-hero-strip {
    position: absolute;
    z-index: 5;
    left: 50%;
    bottom: 40px;
    transform: translateX(-50%);
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    border-top: 1px solid rgba(255,255,255,.22);
}

.ccs-hero-strip > div {
    padding: 19px 24px 0 0;
}

.ccs-hero-strip strong {
    display: block;
    font-size: 12px;
}

.ccs-hero-strip span {
    display: block;
    margin-top: 5px;
    color: #808990;
    font-size: 10px;
}

/* Compact brand strip directly below the hero.
   It confirms MEGASTAR immediately without turning the CCS homepage into a MEGASTAR page. */
.ccs-megastar-entry {
    position: relative;
    z-index: 8;
    background:
        radial-gradient(circle at 74% 50%, rgba(228,45,36,.09), transparent 24%),
        linear-gradient(180deg, #090b0d 0%, #07090b 100%);
    border-top: 1px solid rgba(228,45,36,.26);
    border-bottom: 1px solid rgba(255,255,255,.09);
}

.ccs-megastar-entry-inner {
    min-height: 122px;
    display: grid;
    grid-template-columns: 285px 1fr auto;
    align-items: center;
    gap: 38px;
    color: #fff;
    text-decoration: none;
}

.ccs-megastar-entry-logo {
    height: 72px;
    display: flex;
    align-items: center;
    padding-right: 36px;
    border-right: 1px solid rgba(255,255,255,.12);
}

.ccs-megastar-entry-logo img {
    display: block;
    width: 250px;
    max-width: 100%;
    height: auto;
    mix-blend-mode: screen;
}

.ccs-megastar-entry-copy {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.ccs-megastar-entry-copy strong {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.ccs-megastar-entry-copy span {
    color: #8f979e;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.15px;
    text-transform: uppercase;
}

.ccs-megastar-entry-copy i {
    margin: 0 6px;
    color: #e42d24;
    font-style: normal;
}

.ccs-megastar-entry-action {
    min-height: 48px;
    padding: 0 20px;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    border: 1px solid rgba(228,45,36,.52);
    color: #e8eaec;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    transition: .2s ease;
}

.ccs-megastar-entry-action span {
    color: #ff554b;
    font-size: 15px;
}

.ccs-megastar-entry-inner:hover .ccs-megastar-entry-action {
    border-color: #e42d24;
    background: rgba(228,45,36,.09);
    transform: translateX(3px);
}

/* Intro */
.ccs-intro {
    padding: 125px 0 92px;
}

.ccs-intro .ccs-overline {
    margin-bottom: 22px;
}

.ccs-intro-grid {
    display: grid;
    grid-template-columns: 1.2fr .8fr;
    gap: 95px;
    align-items: end;
}

.ccs-intro h2,
.ccs-machinery h2,
.ccs-contact h2 {
    font-size: clamp(44px, 5vw, 78px);
    line-height: .96;
    text-transform: uppercase;
}

.ccs-intro-grid p,
.ccs-machinery-head > p {
    margin: 0;
    color: #98a1a8;
    font-size: 15px;
    line-height: 1.8;
}

/* Services */
.ccs-services {
    padding: 15px 0 130px;
}

.ccs-service-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.ccs-service-card {
    position: relative;
    min-height: 520px;
    overflow: hidden;
    background: #10151a;
}

.ccs-service-image {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform .65s ease;
}

.ccs-service-card:hover .ccs-service-image {
    transform: scale(1.045);
}

.ccs-service-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.03) 0%, rgba(0,0,0,.12) 38%, rgba(3,7,10,.94) 100%);
}

.ccs-service-copy {
    position: absolute;
    z-index: 3;
    left: 37px;
    right: 37px;
    bottom: 35px;
}

.ccs-service-copy > span {
    color: var(--orange);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2.2px;
    text-transform: uppercase;
}

.ccs-service-copy h3 {
    margin: 12px 0 0;
    font-size: clamp(31px, 3.5vw, 49px);
    line-height: .98;
    font-weight: 700;
    letter-spacing: -2.1px;
    text-transform: uppercase;
}

.ccs-service-copy p {
    max-width: 560px;
    margin: 16px 0 0;
    color: #c6ccd0;
    font-size: 13px;
    line-height: 1.7;
}

.ccs-service-copy a {
    display: inline-block;
    margin-top: 20px;
    color: #fff;
    text-decoration: none;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

/* Machinery – image-led, soft contrast, correctly contained */
.ccs-machinery {
    position: relative;
    padding: 118px 0 128px;
    background:
        radial-gradient(circle at 9% 12%, rgba(232,121,34,.09), transparent 25%),
        radial-gradient(circle at 90% 90%, rgba(31,43,53,.06), transparent 30%),
        linear-gradient(180deg, #f3efe7 0%, #eee7dc 100%);
    color: #101820;
    overflow: hidden;
}

.ccs-machinery::before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(16,24,32,.12), transparent);
}

.ccs-machinery .ccs-shell {
    width: min(1320px, calc(100% - 64px));
}

.ccs-machinery-head {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 80px;
    align-items: end;
    margin-bottom: 54px;
}

.ccs-machinery .ccs-overline {
    margin-bottom: 18px;
}

.ccs-machinery h2 {
    font-size: clamp(40px, 4.5vw, 68px);
    line-height: .94;
    letter-spacing: -3.4px;
}

.ccs-machinery-head > p {
    max-width: 560px;
    color: #5f676e;
    font-size: 14px;
    line-height: 1.75;
}

.ccs-machine-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.ccs-machine-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(18,24,30,.08);
    border-radius: 18px;
    background: rgba(255,255,255,.78);
    box-shadow: 0 17px 44px rgba(34,34,34,.07);
    transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}

.ccs-machine-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 26px 60px rgba(34,34,34,.12);
    border-color: rgba(232,121,34,.18);
}

.ccs-machine-image-wrap {
    position: relative;
    height: 218px;
    overflow: hidden;
    background: #172029;
}

.ccs-machine-image-wrap img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    transition: transform .55s ease;
}

.ccs-machine-card:hover .ccs-machine-image-wrap img {
    transform: scale(1.045);
}

.ccs-machine-image-shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(6,10,14,.04) 25%, rgba(6,10,14,.18) 70%, rgba(6,10,14,.42) 100%),
        linear-gradient(120deg, rgba(232,121,34,.08), transparent 48%);
}

.ccs-machine-badge {
    position: absolute;
    z-index: 2;
    left: 18px;
    top: 18px;
    padding: 8px 11px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 999px;
    background: rgba(7,12,16,.46);
    backdrop-filter: blur(7px);
    color: #fff;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.45px;
    text-transform: uppercase;
}

.ccs-machine-card-copy {
    position: relative;
    min-height: 236px;
    padding: 27px 27px 30px;
}

.ccs-machine-card-copy::after {
    content: "";
    position: absolute;
    left: 27px;
    right: 27px;
    bottom: 0;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--orange), rgba(232,121,34,.08));
}

.ccs-machine-card-copy > span {
    color: var(--orange);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.8px;
    text-transform: uppercase;
}

.ccs-machine-card h3 {
    margin: 12px 0 10px;
    color: #101820;
    font-size: 24px;
    line-height: 1.05;
    letter-spacing: -1.15px;
    text-transform: uppercase;
}

.ccs-machine-card p {
    margin: 0;
    color: #5d6670;
    font-size: 13px;
    line-height: 1.68;
}

.ccs-machine-meta {
    margin-top: 21px;
    padding-top: 17px;
    border-top: 1px solid rgba(16,24,32,.08);
    color: #303b45;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .7px;
    text-transform: uppercase;
}

/* Megastar */
.ccs-megastar {
    position: relative;
    min-height: 760px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        radial-gradient(circle at 78% 48%, rgba(226,44,34,.22), transparent 27%),
        linear-gradient(105deg, #030303 0%, #070707 52%, #150404 100%);
}

.ccs-megastar-ambient {
    position: absolute;
    width: 900px;
    height: 900px;
    right: -330px;
    top: -110px;
    border-radius: 50%;
    background: rgba(218,28,20,.13);
    filter: blur(110px);
}

.ccs-megastar-grid {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: .82fr 1.18fr;
    gap: 55px;
    align-items: center;
}

.ccs-mega-copy h2 {
    margin: 0;
    font-size: clamp(68px, 7vw, 110px);
    line-height: .83;
    letter-spacing: -7px;
    font-style: italic;
    text-transform: uppercase;
}

.ccs-mega-copy h2 span {
    color: var(--red);
}

.ccs-mega-subtitle {
    margin-top: 22px;
    color: #777d82;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 5px;
    text-transform: uppercase;
}

.ccs-mega-copy > p {
    max-width: 570px;
    margin: 31px 0 0;
    color: #aab0b5;
    font-size: 14px;
    line-height: 1.8;
}

.ccs-mega-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 28px 0 34px;
}

.ccs-mega-tags span {
    padding: 9px 12px;
    border: 1px solid rgba(255,255,255,.14);
    color: #bcc1c4;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
}

.ccs-mega-visual {
    position: relative;
    min-height: 630px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ccs-mega-visual::before {
    content: "";
    position: absolute;
    width: 85%;
    height: 70%;
    background: radial-gradient(ellipse, rgba(226,40,30,.22), transparent 67%);
    filter: blur(35px);
}

.ccs-mega-visual img {
    position: relative;
    z-index: 2;
    width: 118%;
    max-width: 970px;
    display: block;
    filter: drop-shadow(0 35px 70px rgba(0,0,0,.7));
    -webkit-mask-image: radial-gradient(ellipse at center, #000 48%, rgba(0,0,0,.96) 61%, transparent 82%);
    mask-image: radial-gradient(ellipse at center, #000 48%, rgba(0,0,0,.96) 61%, transparent 82%);
}

/* Contact */
.ccs-contact {
    padding: 110px 0;
    background: #0b1721;
}

.ccs-contact .ccs-overline {
    margin-bottom: 20px;
}

.ccs-contact-grid {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 80px;
    align-items: end;
}

.ccs-contact-card {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 35px;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.025);
}

.ccs-contact-card strong {
    color: #fff;
}

.ccs-contact-card a {
    color: #b7bec4;
    text-decoration: none;
}

/* Footer */
.ccs-footer {
    padding: 40px 0;
    background: #050708;
    border-top: 1px solid rgba(255,255,255,.07);
}

.ccs-footer-inner {
    display: flex;
    justify-content: space-between;
    gap: 25px;
    color: #69727a;
    font-size: 9px;
}

@media (max-width: 1050px) {
    .ccs-nav { gap: 15px; }
    .ccs-intro-grid,
    .ccs-machinery-head,
    .ccs-contact-grid,
    .ccs-megastar-grid {
        grid-template-columns: 1fr;
        gap: 35px;
    }
    .ccs-machine-grid { grid-template-columns: 1fr; max-width: 760px; }
    .ccs-machinery .ccs-shell { width: min(760px, calc(100% - 48px)); }
    .ccs-mega-visual { min-height: 430px; }
}

@media (max-width: 760px) {
    .ccs-header-inner { height: 82px; }
    .ccs-nav { display: none; }
    .ccs-brand-copy strong { font-size: 19px; }
    .ccs-brand-line { height: 43px; }
    .ccs-brand-copy small { font-size: 7px; letter-spacing: 2px; }

    .ccs-hero {
        min-height: 760px;
        background-position: 62% center;
    }

    .ccs-hero-inner {
        align-items: flex-end;
        padding-bottom: 175px;
    }

    .ccs-hero-copy { width: 100%; }

    .ccs-hero h1 {
        font-size: 52px;
        line-height: .9;
        letter-spacing: -3px;
    }

    .ccs-hero-strip {
        grid-template-columns: 1fr 1fr;
        bottom: 25px;
    }

    .ccs-hero-strip span { display: none; }
    .ccs-service-grid { grid-template-columns: 1fr; }
    .ccs-service-card { min-height: 430px; }

    .ccs-machinery {
        padding: 92px 0 100px;
    }

    .ccs-machinery .ccs-shell {
        width: calc(100% - 34px);
    }

    .ccs-machine-image-wrap {
        height: 190px;
    }

    .ccs-machine-card-copy {
        min-height: auto;
        padding: 23px 22px 27px;
    }

    .ccs-machine-card-copy::after {
        left: 22px;
        right: 22px;
    }

    .ccs-mega-copy h2 {
        font-size: 58px;
        letter-spacing: -4px;
    }

    .ccs-mega-visual {
        min-height: 310px;
    }

    .ccs-mega-visual img {
        width: 110%;
    }

    .ccs-footer-inner {
        flex-direction: column;
    }
}

/* =========================================================
   V1.3 – BUTTON LINKS + SUBPAGES
========================================================= */

.ccs-machine-link {
    display: inline-flex;
    align-items: center;
    margin-top: 18px;
    color: #101820;
    text-decoration: none;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.15px;
    text-transform: uppercase;
    transition: .2s ease;
}

.ccs-machine-link:hover {
    color: var(--orange);
}

.ccs-subpage {
    min-height: 100vh;
    background: #080b0e;
}

.ccs-subhero {
    position: relative;
    min-height: 690px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    background-image:
        linear-gradient(90deg, rgba(3,8,13,.94) 0%, rgba(3,8,13,.72) 36%, rgba(3,8,13,.28) 68%, rgba(3,8,13,.08) 100%),
        var(--ccs-subhero-image);
    background-size: cover;
    background-position: center center;
}

.ccs-subhero-shade {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(to top, #080b0e 0%, rgba(8,11,14,.28) 34%, transparent 62%),
        radial-gradient(circle at 18% 25%, rgba(232,121,34,.12), transparent 30%);
}

.ccs-subhero-inner {
    position: relative;
    z-index: 3;
    padding: 180px 0 100px;
}

.ccs-backlink {
    display: inline-block;
    margin-bottom: 34px;
    color: rgba(255,255,255,.62);
    text-decoration: none;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.ccs-backlink:hover {
    color: var(--orange);
}

.ccs-subhero .ccs-overline {
    margin-bottom: 18px;
}

.ccs-subhero h1 {
    max-width: 1050px;
    margin: 0;
    font-size: clamp(58px, 7vw, 112px);
    line-height: .88;
    font-weight: 700;
    letter-spacing: -5.8px;
    text-transform: uppercase;
    text-shadow: 0 22px 50px rgba(0,0,0,.38);
}

.ccs-subhero h1 span {
    color: var(--orange);
}

.ccs-subhero > .ccs-subhero-inner > p,
.ccs-subhero-inner > p {
    max-width: 720px;
    margin: 28px 0 0;
    color: #c3c9ce;
    font-size: 17px;
    line-height: 1.75;
}

.ccs-subpage-main {
    padding: 105px 0 125px;
    background:
        radial-gradient(circle at 92% 10%, rgba(232,121,34,.07), transparent 26%),
        #080b0e;
}

.ccs-subpage-grid {
    display: grid;
    grid-template-columns: 1.15fr .65fr;
    gap: 90px;
    align-items: start;
}

.ccs-subpage-copy .ccs-overline {
    margin-bottom: 18px;
}

.ccs-subpage-copy h2 {
    margin: 0 0 32px;
    font-size: clamp(42px, 5vw, 74px);
    line-height: .96;
    letter-spacing: -3.6px;
    text-transform: uppercase;
}

.ccs-subpage-copy h2 span {
    color: var(--orange);
}

.ccs-subpage-copy > p {
    max-width: 780px;
    margin: 0 0 18px;
    color: #aeb6bc;
    font-size: 15px;
    line-height: 1.82;
}

.ccs-subpage-list {
    margin: 35px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 20px;
    max-width: 760px;
}

.ccs-subpage-list li {
    position: relative;
    padding: 15px 18px 15px 36px;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.025);
    color: #d4d9dd;
    font-size: 12px;
    line-height: 1.5;
}

.ccs-subpage-list li::before {
    content: "";
    position: absolute;
    left: 17px;
    top: 50%;
    width: 6px;
    height: 6px;
    margin-top: -3px;
    border-radius: 50%;
    background: var(--orange);
    box-shadow: 0 0 0 5px rgba(232,121,34,.10);
}

.ccs-subpage-panel {
    position: sticky;
    top: 40px;
    padding: 34px;
    border: 1px solid rgba(255,255,255,.10);
    background:
        linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.016));
}

.ccs-subpage-panel > span {
    display: block;
    margin-bottom: 14px;
    color: var(--orange);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.ccs-subpage-panel > strong {
    display: block;
    margin-bottom: 16px;
    font-size: 28px;
    line-height: 1.08;
}

.ccs-subpage-panel > p {
    margin: 0;
    color: #9fa8af;
    font-size: 13px;
    line-height: 1.75;
}

.ccs-subpage-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 85px;
}

.ccs-subpage-links a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 96px;
    padding: 0 28px;
    border: 1px solid rgba(255,255,255,.09);
    background: rgba(255,255,255,.028);
    color: #fff;
    text-decoration: none;
    font-size: 15px;
    font-weight: 700;
    transition: .25s ease;
}

.ccs-subpage-links a span {
    color: var(--orange);
    font-size: 20px;
}

.ccs-subpage-links a:hover {
    transform: translateY(-3px);
    border-color: rgba(232,121,34,.34);
    background: rgba(232,121,34,.055);
}

.ccs-contact-detail {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    margin-top: 80px;
}

.ccs-contact-detail a {
    padding: 30px;
    border: 1px solid rgba(255,255,255,.09);
    background: rgba(255,255,255,.025);
    color: #fff;
    text-decoration: none;
}

.ccs-contact-detail a span {
    display: block;
    margin-bottom: 9px;
    color: var(--orange);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.ccs-contact-detail a strong {
    font-size: 22px;
}

@media (max-width: 950px) {
    .ccs-subpage-grid {
        grid-template-columns: 1fr;
        gap: 48px;
    }

    .ccs-subpage-panel {
        position: static;
    }
}

@media (max-width: 760px) {
    .ccs-subhero {
        min-height: 620px;
    }

    .ccs-subhero-inner {
        padding: 145px 0 78px;
    }

    .ccs-subhero h1 {
        font-size: 50px;
        letter-spacing: -3px;
    }

    .ccs-subhero-inner > p {
        font-size: 15px;
    }

    .ccs-subpage-main {
        padding: 78px 0 90px;
    }

    .ccs-subpage-list,
    .ccs-subpage-links,
    .ccs-contact-detail {
        grid-template-columns: 1fr;
    }
}


/* v1.4 responsive MEGASTAR entry */
@media (max-width: 980px) {
    .ccs-megastar-entry-inner {
        grid-template-columns: 220px 1fr auto;
        gap: 24px;
    }
    .ccs-megastar-entry-logo {
        padding-right: 24px;
    }
    .ccs-megastar-entry-logo img {
        width: 205px;
    }
    .ccs-megastar-entry-copy span {
        line-height: 1.7;
    }
}

@media (max-width: 760px) {
    .ccs-hero-actions {
        gap: 9px;
    }
    .ccs-hero-actions .ccs-button {
        min-height: 48px;
        padding: 0 18px;
    }
    .ccs-megastar-entry-inner {
        min-height: 0;
        padding-top: 23px;
        padding-bottom: 23px;
        grid-template-columns: 1fr auto;
        gap: 18px;
    }
    .ccs-megastar-entry-logo {
        height: 48px;
        padding-right: 0;
        border-right: 0;
    }
    .ccs-megastar-entry-logo img {
        width: 175px;
    }
    .ccs-megastar-entry-copy {
        grid-column: 1 / -1;
        grid-row: 2;
    }
    .ccs-megastar-entry-copy strong {
        font-size: 10px;
    }
    .ccs-megastar-entry-copy span {
        font-size: 8px;
        line-height: 1.65;
    }
    .ccs-megastar-entry-action {
        min-height: 42px;
        padding: 0 13px;
        font-size: 8px;
    }
}

/* ========================================================================== 
   CCS Landingpage 2.0 – editorial rebuild
   Scoped to .ccsv2-site so the existing subpages remain untouched.
   ========================================================================== */

.ccsv2-site {
    --v2-bg: #07090b;
    --v2-bg-soft: #0b0f13;
    --v2-panel: #0d1115;
    --v2-orange: #e87922;
    --v2-orange-light: #f29a4a;
    --v2-red: #df2e26;
    --v2-text: #f4f3ef;
    --v2-muted: #9ca3aa;
    --v2-line: rgba(255,255,255,.11);
    min-height: 100vh;
    background: var(--v2-bg);
    color: var(--v2-text);
}

.ccsv2-site a { -webkit-tap-highlight-color: transparent; }
.ccsv2-shell { width: min(1460px, calc(100% - 96px)); margin: 0 auto; }

.ccsv2-header {
    position: absolute;
    z-index: 80;
    inset: 0 0 auto;
    border-bottom: 1px solid rgba(255,255,255,.10);
    background: linear-gradient(180deg, rgba(3,6,8,.80), rgba(3,6,8,.28) 72%, transparent);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.admin-bar .ccsv2-header { top: 32px; }
.ccsv2-header-inner {
    min-height: 92px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 36px;
}
.ccsv2-brand {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    color: #fff;
    text-decoration: none;
    flex: 0 0 auto;
}
.ccsv2-brand-mark {
    width: 3px;
    height: 45px;
    background: var(--v2-orange);
    box-shadow: 0 0 24px rgba(232,121,34,.18);
}
.ccsv2-brand-copy { display:flex; flex-direction:column; gap:6px; }
.ccsv2-brand-copy strong { font-size: 20px; line-height:1; font-weight:700; letter-spacing:-.3px; }
.ccsv2-brand-copy small { color:#a1a8ae; font-size:7px; font-weight:800; letter-spacing:2.55px; text-transform:uppercase; }
.ccsv2-nav { display:flex; align-items:center; gap:30px; }
.ccsv2-nav a {
    color:#e5e7e8;
    text-decoration:none;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.35px;
    text-transform:uppercase;
    transition: color .2s ease, opacity .2s ease;
}
.ccsv2-nav a:hover { color:var(--v2-orange-light); }
.ccsv2-nav .ccsv2-nav-mega { color:#ff5a51; }
.ccsv2-mobile-menu { display:none; position:relative; }

/* Hero */
.ccsv2-hero {
    position:relative;
    min-height: 900px;
    height: 100svh;
    max-height: 1080px;
    background-image: var(--ccsv2-hero);
    background-size: cover;
    background-position: center center;
    overflow:hidden;
}
.ccsv2-hero-overlay {
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg, rgba(3,7,10,.94) 0%, rgba(3,7,10,.76) 30%, rgba(3,7,10,.37) 55%, rgba(3,7,10,.10) 78%),
        linear-gradient(180deg, rgba(3,7,10,.20) 0%, transparent 52%, rgba(7,9,11,.92) 100%),
        radial-gradient(circle at 18% 50%, rgba(232,121,34,.10), transparent 31%);
}
.ccsv2-hero-inner {
    position:relative;
    z-index:3;
    height:100%;
    display:flex;
    align-items:center;
    padding-top:72px;
}
.ccsv2-hero-copy { width:min(780px, 64%); }
.ccsv2-eyebrow,
.ccsv2-kicker {
    display:flex;
    align-items:center;
    gap:14px;
    color:#bbc0c4;
    font-size:9px;
    font-weight:800;
    letter-spacing:2.6px;
    text-transform:uppercase;
}
.ccsv2-eyebrow::before,
.ccsv2-kicker::before {
    content:"";
    width:36px;
    height:2px;
    background:var(--v2-orange);
}
.ccsv2-hero h1 {
    margin:28px 0 0;
    font-size:clamp(72px, 7.3vw, 122px);
    line-height:.87;
    font-weight:700;
    letter-spacing:-6.2px;
    text-transform:uppercase;
    text-shadow:0 22px 60px rgba(0,0,0,.35);
}
.ccsv2-hero h1 span { color:var(--v2-orange); }
.ccsv2-hero-copy > p {
    max-width:630px;
    margin:30px 0 0;
    color:#c2c7cb;
    font-size:16px;
    line-height:1.72;
}
.ccsv2-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
.ccsv2-btn {
    min-height:52px;
    padding:0 24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:11px;
    color:#fff;
    text-decoration:none;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.35px;
    text-transform:uppercase;
    border:1px solid transparent;
    transition:transform .2s ease, background .2s ease, border-color .2s ease;
}
.ccsv2-btn-primary { background:var(--v2-orange); border-color:var(--v2-orange); }
.ccsv2-btn-primary:hover { background:var(--v2-orange-light); transform:translateY(-2px); }
.ccsv2-btn-mega { background:rgba(5,5,6,.38); border-color:rgba(223,46,38,.62); }
.ccsv2-btn-mega i { width:6px; height:6px; border-radius:50%; background:var(--v2-red); box-shadow:0 0 16px rgba(223,46,38,.75); }
.ccsv2-btn-mega span { color:#ff6258; font-size:15px; line-height:1; }
.ccsv2-btn-mega:hover { background:rgba(223,46,38,.10); border-color:#ff554b; transform:translateY(-2px); }
.ccsv2-scroll-cue {
    position:absolute;
    left:0;
    bottom:38px;
    display:inline-flex;
    align-items:center;
    gap:12px;
    color:#899198;
    text-decoration:none;
    font-size:8px;
    font-weight:800;
    letter-spacing:1.9px;
    text-transform:uppercase;
}
.ccsv2-scroll-cue span { color:var(--v2-orange); font-size:14px; }

/* Statement */
.ccsv2-intro { padding:150px 0 138px; background:var(--v2-bg); }
.ccsv2-intro-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:120px; align-items:end; }
.ccsv2-intro h2,
.ccsv2-section-head h2,
.ccsv2-market h2,
.ccsv2-megastar h2,
.ccsv2-contact h2 {
    margin:22px 0 0;
    font-size:clamp(48px, 5.1vw, 82px);
    line-height:.95;
    font-weight:650;
    letter-spacing:-4px;
    text-transform:uppercase;
}
.ccsv2-intro h2 span,
.ccsv2-section-head h2 span,
.ccsv2-contact h2 span { color:var(--v2-orange); }
.ccsv2-intro-copy > p {
    max-width:650px;
    margin:0;
    color:#aeb5ba;
    font-size:16px;
    line-height:1.85;
}
.ccsv2-capabilities {
    margin-top:34px;
    padding-top:24px;
    border-top:1px solid var(--v2-line);
    display:flex;
    gap:25px;
    flex-wrap:wrap;
}
.ccsv2-capabilities span { color:#dadddf; font-size:9px; font-weight:800; letter-spacing:1.4px; text-transform:uppercase; }

/* Services */
.ccsv2-services { padding:0 0 150px; background:var(--v2-bg); }
.ccsv2-section-head {
    margin-bottom:52px;
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:50px;
}
.ccsv2-section-head h2 { font-size:clamp(45px, 4.7vw, 72px); }
.ccsv2-text-link {
    margin-bottom:8px;
    color:#d6d9db;
    text-decoration:none;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.25px;
    text-transform:uppercase;
}
.ccsv2-text-link:hover { color:var(--v2-orange); }
.ccsv2-service-grid {
    display:grid;
    grid-template-columns:repeat(12,1fr);
    gap:18px;
}
.ccsv2-service-card {
    position:relative;
    min-height:430px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.10);
    border-radius:18px;
    color:#fff;
    text-decoration:none;
    background:#11151a;
    isolation:isolate;
}
.ccsv2-service-wide { grid-column:span 7; }
.ccsv2-service-narrow { grid-column:span 5; }
.ccsv2-service-card img {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform .65s cubic-bezier(.2,.75,.25,1), filter .45s ease;
}
.ccsv2-card-shade {
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(180deg, rgba(3,5,7,.03) 10%, rgba(3,5,7,.14) 45%, rgba(3,5,7,.92) 100%);
}
.ccsv2-card-copy {
    position:absolute;
    z-index:2;
    left:32px;
    right:32px;
    bottom:28px;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:end;
    gap:7px 30px;
}
.ccsv2-card-copy small { grid-column:1/3; color:#c7cbce; font-size:8px; font-weight:800; letter-spacing:1.6px; text-transform:uppercase; }
.ccsv2-card-copy strong { font-size:clamp(25px,2.3vw,36px); line-height:1.03; letter-spacing:-1.7px; text-transform:uppercase; }
.ccsv2-card-copy em { grid-column:1/2; color:#aab0b5; font-size:12px; line-height:1.55; font-style:normal; max-width:520px; }
.ccsv2-card-copy b {
    grid-column:2/3;
    grid-row:2/4;
    align-self:end;
    width:43px;
    height:43px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.24);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    font-weight:400;
    transition:background .2s ease, border-color .2s ease, transform .2s ease;
}
.ccsv2-service-card:hover img { transform:scale(1.035); filter:saturate(1.04) contrast(1.02); }
.ccsv2-service-card:hover .ccsv2-card-copy b { background:var(--v2-orange); border-color:var(--v2-orange); transform:translateX(3px); }

/* Machinery market – one calm section instead of three stacked cards */
.ccsv2-market {
    padding:145px 0;
    color:#16191c;
    background:
        radial-gradient(circle at 90% 15%, rgba(232,121,34,.10), transparent 24%),
        linear-gradient(180deg,#eee9df 0%,#e7e0d5 100%);
}
.ccsv2-market-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:90px; align-items:center; }
.ccsv2-kicker-dark { color:#5f6467; }
.ccsv2-kicker-dark::before { background:#ca6d22; }
.ccsv2-market h2 { color:#171a1d; font-size:clamp(48px,4.8vw,77px); }
.ccsv2-market h2 span { color:#8b4a1b; }
.ccsv2-market-copy > p { max-width:580px; margin:28px 0 0; color:#5b6064; font-size:15px; line-height:1.82; }
.ccsv2-market-links { margin-top:38px; border-top:1px solid rgba(17,22,26,.16); }
.ccsv2-market-links a {
    min-height:61px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    border-bottom:1px solid rgba(17,22,26,.16);
    color:#202326;
    text-decoration:none;
    font-size:11px;
    font-weight:800;
    letter-spacing:.75px;
    text-transform:uppercase;
}
.ccsv2-market-links a span { color:#b05d1f; font-size:17px; transition:transform .2s ease; }
.ccsv2-market-links a:hover span { transform:translateX(4px); }
.ccsv2-market-visual { position:relative; min-height:610px; }
.ccsv2-market-visual figure { margin:0; overflow:hidden; box-shadow:0 32px 80px rgba(42,37,32,.16); }
.ccsv2-market-visual img { display:block; width:100%; height:100%; object-fit:cover; }
.ccsv2-market-main { position:absolute; inset:0 0 70px 14%; border-radius:18px; }
.ccsv2-market-small { position:absolute; width:43%; height:255px; left:0; bottom:0; border:7px solid #e8e2d8; border-radius:15px; }

/* MEGASTAR – compact, cinematic, not a second homepage */
.ccsv2-megastar {
    position:relative;
    min-height:620px;
    display:flex;
    align-items:center;
    overflow:hidden;
    background:
        radial-gradient(circle at 75% 50%, rgba(213,30,23,.20), transparent 29%),
        linear-gradient(110deg,#050506 0%,#070708 54%,#150303 100%);
}
.ccsv2-mega-glow { position:absolute; width:760px; height:760px; right:-250px; top:-90px; border-radius:50%; background:rgba(199,25,20,.10); filter:blur(95px); }
.ccsv2-mega-grid { position:relative; z-index:2; display:grid; grid-template-columns:.82fr 1.18fr; gap:30px; align-items:center; }
.ccsv2-mega-copy { max-width:590px; padding:86px 0; }
.ccsv2-mega-logo { display:block; width:min(330px,70%); height:auto; object-fit:contain; mix-blend-mode:screen; }
.ccsv2-mega-kicker { margin-top:25px; color:#ff5a50; font-size:9px; font-weight:800; letter-spacing:2.5px; text-transform:uppercase; }
.ccsv2-megastar h2 { margin-top:18px; font-size:clamp(43px,4.4vw,70px); letter-spacing:-3.4px; }
.ccsv2-mega-copy > p { max-width:570px; margin:24px 0 0; color:#aab0b5; font-size:14px; line-height:1.78; }
.ccsv2-btn-red { background:var(--v2-red); border-color:var(--v2-red); }
.ccsv2-btn-red:hover { background:#f0443a; transform:translateY(-2px); }
.ccsv2-mega-visual { position:relative; height:620px; display:flex; align-items:center; justify-content:flex-end; }
.ccsv2-mega-visual::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#070708 0%,transparent 21%,transparent 80%,rgba(7,7,8,.10) 100%); pointer-events:none; }
.ccsv2-mega-visual img { width:118%; max-width:none; display:block; transform:translateX(6%); -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 100%); mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 100%); }

/* Contact */
.ccsv2-contact { padding:145px 0; background:#0a0d10; border-top:1px solid rgba(255,255,255,.06); }
.ccsv2-contact-grid { display:grid; grid-template-columns:1fr .82fr; gap:120px; align-items:end; }
.ccsv2-contact h2 { font-size:clamp(48px,5vw,80px); }
.ccsv2-contact-copy > p { margin:0 0 28px; max-width:560px; color:#9fa7ad; font-size:15px; line-height:1.75; }
.ccsv2-contact-actions { border-top:1px solid var(--v2-line); }
.ccsv2-contact-actions > a:not(.ccsv2-contact-button) {
    min-height:56px;
    display:flex;
    align-items:center;
    border-bottom:1px solid var(--v2-line);
    color:#f0f1f2;
    text-decoration:none;
    font-size:17px;
    letter-spacing:-.25px;
}
.ccsv2-contact-actions > a:not(.ccsv2-contact-button):hover { color:var(--v2-orange); }
.ccsv2-contact-button {
    margin-top:24px;
    display:inline-flex;
    min-height:48px;
    align-items:center;
    color:#fff;
    text-decoration:none;
    font-size:9px;
    font-weight:800;
    letter-spacing:1.25px;
    text-transform:uppercase;
}
.ccsv2-contact-button:hover { color:var(--v2-orange); }

.ccsv2-footer { padding:34px 0; background:#050607; border-top:1px solid rgba(255,255,255,.08); }
.ccsv2-footer-inner { display:flex; justify-content:space-between; gap:20px; color:#687078; font-size:8px; font-weight:700; letter-spacing:1.3px; text-transform:uppercase; }

@media (max-width: 1180px) {
    .ccsv2-shell { width:min(100% - 56px, 1260px); }
    .ccsv2-nav { gap:18px; }
    .ccsv2-hero-copy { width:min(720px,70%); }
    .ccsv2-intro-grid { gap:70px; }
    .ccsv2-market-grid { gap:55px; }
    .ccsv2-market-visual { min-height:520px; }
    .ccsv2-contact-grid { gap:70px; }
}

@media (max-width: 900px) {
    .ccsv2-shell { width:calc(100% - 40px); }
    .ccsv2-header-inner { min-height:80px; }
    .ccsv2-nav { display:none; }
    .ccsv2-mobile-menu { display:block; color:#fff; }
    .ccsv2-mobile-menu summary { list-style:none; cursor:pointer; color:#e8eaeb; font-size:9px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; }
    .ccsv2-mobile-menu summary::-webkit-details-marker { display:none; }
    .ccsv2-mobile-menu[open] > div { position:absolute; right:0; top:34px; width:230px; padding:18px; display:grid; gap:3px; border:1px solid rgba(255,255,255,.12); background:rgba(8,11,14,.97); box-shadow:0 25px 55px rgba(0,0,0,.45); }
    .ccsv2-mobile-menu a { padding:12px 10px; color:#fff; text-decoration:none; font-size:9px; font-weight:800; letter-spacing:1px; text-transform:uppercase; }
    .ccsv2-mobile-menu .ccsv2-nav-mega { color:#ff5b52; }
    .ccsv2-hero { min-height:760px; max-height:none; }
    .ccsv2-hero-copy { width:min(700px,86%); }
    .ccsv2-hero h1 { font-size:clamp(64px,10vw,94px); }
    .ccsv2-intro-grid,.ccsv2-market-grid,.ccsv2-mega-grid,.ccsv2-contact-grid { grid-template-columns:1fr; gap:48px; }
    .ccsv2-service-wide,.ccsv2-service-narrow { grid-column:span 6; }
    .ccsv2-service-card { min-height:390px; }
    .ccsv2-market-visual { min-height:500px; }
    .ccsv2-megastar { min-height:auto; }
    .ccsv2-mega-copy { padding:82px 0 0; }
    .ccsv2-mega-visual { height:430px; }
    .ccsv2-mega-visual img { width:108%; transform:translateX(2%); }
}

@media (max-width: 680px) {
    .admin-bar .ccsv2-header { top:46px; }
    .ccsv2-shell { width:calc(100% - 30px); }
    .ccsv2-brand-copy strong { font-size:17px; }
    .ccsv2-brand-copy small { font-size:6px; letter-spacing:1.8px; }
    .ccsv2-brand-mark { height:38px; }
    .ccsv2-hero { min-height:760px; height:100svh; background-position:62% center; }
    .ccsv2-hero-overlay { background:linear-gradient(90deg,rgba(3,7,10,.94),rgba(3,7,10,.68) 72%,rgba(3,7,10,.30)),linear-gradient(180deg,rgba(3,7,10,.08),transparent 44%,rgba(7,9,11,.94)); }
    .ccsv2-hero-inner { align-items:flex-end; padding-bottom:102px; }
    .ccsv2-hero-copy { width:100%; }
    .ccsv2-eyebrow { font-size:7px; letter-spacing:1.7px; }
    .ccsv2-hero h1 { margin-top:22px; font-size:clamp(54px,16vw,76px); line-height:.90; letter-spacing:-4.5px; }
    .ccsv2-hero-copy > p { margin-top:24px; font-size:14px; line-height:1.65; }
    .ccsv2-actions { margin-top:27px; }
    .ccsv2-btn { min-height:49px; padding:0 18px; font-size:8px; }
    .ccsv2-scroll-cue { bottom:25px; }
    .ccsv2-intro { padding:95px 0 88px; }
    .ccsv2-intro-grid { gap:34px; }
    .ccsv2-intro h2,.ccsv2-section-head h2,.ccsv2-market h2,.ccsv2-megastar h2,.ccsv2-contact h2 { font-size:clamp(40px,12vw,58px); letter-spacing:-2.8px; }
    .ccsv2-intro-copy > p { font-size:14px; }
    .ccsv2-capabilities { gap:14px 22px; }
    .ccsv2-services { padding-bottom:95px; }
    .ccsv2-section-head { align-items:flex-start; flex-direction:column; gap:22px; margin-bottom:34px; }
    .ccsv2-service-grid { grid-template-columns:1fr; gap:12px; }
    .ccsv2-service-wide,.ccsv2-service-narrow { grid-column:1; }
    .ccsv2-service-card { min-height:350px; border-radius:14px; }
    .ccsv2-card-copy { left:22px; right:22px; bottom:21px; }
    .ccsv2-card-copy strong { font-size:27px; }
    .ccsv2-card-copy em { font-size:11px; }
    .ccsv2-market { padding:95px 0 105px; }
    .ccsv2-market-grid { gap:42px; }
    .ccsv2-market-visual { min-height:400px; }
    .ccsv2-market-main { inset:0 0 48px 8%; }
    .ccsv2-market-small { width:48%; height:170px; border-width:5px; }
    .ccsv2-mega-copy { padding:75px 0 0; }
    .ccsv2-mega-logo { width:270px; max-width:82%; }
    .ccsv2-mega-visual { height:330px; }
    .ccsv2-mega-visual img { width:125%; transform:translateX(8%); }
    .ccsv2-contact { padding:95px 0; }
    .ccsv2-contact-grid { gap:38px; }
    .ccsv2-footer-inner { flex-direction:column; }
}
