/* =====================================================
       DESIGN TOKENS
       Palette pulled from the AP Advisors mark: teal-to-green
       ascent on the left stroke, amber seal-arc on the right.
    ===================================================== */
:root {
    --ink: #0E1F1C;
    --ink-soft: #16312C;
    --ink-soft-2: #1C3B34;

    --teal: #1C8C7E;
    --teal-deep: #146B61;
    --teal-pale: #E4F2EE;

    --moss: #4FAE6A;
    --moss-pale: #ECF6EE;

    --amber: #DD8A3A;
    --amber-deep: #AD5F1E;
    --amber-pale: #FBEEDF;

    --mist: #F5FAF8;
    --paper: #FFFFFF;
    --line: #DCE9E3;
    --line-dark: rgba(255, 255, 255, .14);

    --slate: #4C5E5A;
    --slate-2: #7E8E89;

    --grad-ascent: linear-gradient(100deg, #1C8C7E 0%, #4FAE6A 48%, #DD8A3A 100%);
    --grad-ascent-soft: linear-gradient(100deg, rgba(28, 140, 126, .14) 0%, rgba(79, 174, 106, .14) 48%, rgba(221, 138, 58, .14) 100%);
    --grad-dark: linear-gradient(165deg, #0E1F1C 0%, #123028 55%, #16312C 100%);

    --shadow-sm: 0 2px 10px rgba(14, 31, 28, .06);
    --shadow-md: 0 14px 36px rgba(14, 31, 28, .10);
    --shadow-lg: 0 28px 70px rgba(14, 31, 28, .16);

    --r-sm: 8px;
    --r-md: 14px;
    --r-lg: 20px;
    --r-xl: 28px;

    --font-display: 'Fraunces', serif;
    --font-body: 'Manrope', sans-serif;
    --font-mono: 'Space Mono', monospace;
}

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

html {
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-body);
    font-size: 16px;
    line-height: 1.65;
    color: var(--slate);
    background: var(--mist);
    overflow-x: hidden;
}

img {
    max-width: 100%;
    display: block;
}

a {
    text-decoration: none;
    color: inherit;
}

ul {
    list-style: none;
}

button {
    border: none;
    background: none;
    cursor: pointer;
    font-family: inherit;
}

svg {
    display: block;
}

:focus-visible {
    outline: 2px solid var(--amber);
    outline-offset: 3px;
    border-radius: 4px;
}

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}

.container {
    width: 92%;
    max-width: 1220px;
    margin: 0 auto;
}

/* =====================================================
       UTILITY / SHARED
    ===================================================== */
.eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-family: var(--font-mono);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--teal-deep);
    margin-bottom: 18px;
}

.eyebrow .seal-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--grad-ascent);
    flex-shrink: 0;
}

.eyebrow.on-dark {
    color: #8FD9C8;
}

.section-title {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: clamp(28px, 3.6vw, 44px);
    color: var(--ink);
    line-height: 1.16;
    margin-bottom: 18px;
    letter-spacing: -.01em;
}

.section-title em {
    font-style: italic;
    font-weight: 500;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.section-sub {
    font-size: 16.5px;
    color: var(--slate);
    max-width: 580px;
    line-height: 1.75;
}

.center {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.center .section-sub {
    margin-left: auto;
    margin-right: auto;
}

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    font-size: 14.5px;
    padding: 14px 26px;
    border-radius: var(--r-sm);
    transition: transform .2s, box-shadow .2s, background .2s, color .2s, border-color .2s;
    white-space: nowrap;
}

.btn i {
    font-size: 13px;
}

.btn-primary {
    background: var(--ink);
    color: var(--paper);
    box-shadow: var(--shadow-sm);
}

.btn-primary:hover {
    background: var(--teal-deep);
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.btn-amber {
    background: var(--amber);
    color: var(--ink);
    box-shadow: var(--shadow-sm);
}

.btn-amber:hover {
    background: var(--amber-deep);
    color: var(--paper);
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.btn-outline {
    border: 1.5px solid var(--line);
    color: var(--ink);
    background: var(--paper);
}

.btn-outline:hover {
    border-color: var(--teal);
    color: var(--teal-deep);
    transform: translateY(-2px);
}

.btn-ghost-dark {
    border: 1.5px solid rgba(255, 255, 255, .22);
    color: var(--paper);
    background: rgba(255, 255, 255, .06);
}

.btn-ghost-dark:hover {
    background: rgba(255, 255, 255, .14);
    border-color: rgba(255, 255, 255, .4);
}

.btn-white {
    background: var(--paper);
    color: var(--ink);
    box-shadow: var(--shadow-sm);
}

.btn-white:hover {
    background: var(--amber);
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

/* Perforated divider — a recurring "tear here" motif between major sections */
.perforated {
    position: relative;
    height: 1px;
    background: var(--line);
    width: 100%;
}

.perforated::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 0;
    border-top: 2px dashed var(--line);
    transform: translateY(-50%);
}

.perforated.on-dark::before {
    border-top-color: rgba(255, 255, 255, .16);
}

.perforated.on-dark {
    background: rgba(255, 255, 255, .16);
}

/* =====================================================
       ANNOUNCEMENT BAR
    ===================================================== */
.announcement-bar {
    background: var(--ink);
    color: #C7DCD6;
    font-size: 13px;
    text-align: center;
    padding: 10px 16px;
    letter-spacing: .01em;
    font-family: var(--font-mono);
}

.announcement-bar a {
    color: var(--amber);
    font-weight: 700;
    margin-left: 8px;
}

/* =====================================================
       HEADER / NAV
    ===================================================== */
.site-header {
    position: sticky;
    top: 0;
    z-index: 999;
    background: rgba(245, 250, 248, .92);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid var(--line);
    transition: box-shadow .25s, background .25s;
}

.site-header.scrolled {
    box-shadow: var(--shadow-sm);
    background: rgba(245, 250, 248, .98);
}

.nav-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 80px;
    gap: 28px;
}

.nav-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.nav-logo img {
    height: 76px;
    width: auto;
}

.nav-logo .logo-word {
    display: none;
}

.nav-menu {
    display: flex;
    align-items: center;
    gap: 2px;
    flex: 1;
    justify-content: center;
}

.nav-item {
    position: relative;
}

.nav-link {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 16px;
    font-weight: 600;
    color: var(--ink);
    padding: 10px 15px;
    border-radius: var(--r-sm);
    transition: color .2s, background .2s;
    white-space: nowrap;
}

.nav-link:hover,
.nav-item:hover>.nav-link {
    color: var(--teal-deep);
    background: var(--teal-pale);
}

.nav-link i {
    font-size: 10px;
    transition: transform .2s;
}

.nav-item:hover>.nav-link i {
    transform: rotate(180deg);
}

.nav-dropdown {
    position: absolute;
    top: calc(100% + 2px);
    left: 120%;
    transform: translateX(-50%) translateY(8px);
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    box-shadow: var(--shadow-lg);
    opacity: 0;
    visibility: hidden;
    transition: opacity .2s, transform .2s;
    z-index: 9999;
}

.nav-item:hover .nav-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0);
}

.nav-mega {
    min-width: 800px;
    padding: 26px 28px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px 22px;
}

.mega-col h5 {
    font-family: var(--font-mono);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--slate-2);
    margin-bottom: 12px;
    padding-bottom: 9px;
    border-bottom: 1px dashed var(--line);
}

.mega-col ul li+li {
    margin-top: 3px;
}

.mega-col ul li a {
    font-size: 13.5px;
    font-weight: 500;
    color: var(--slate);
    padding: 6px 9px;
    border-radius: 7px;
    display: block;
    transition: color .18s, background .18s;
}

.mega-col ul li a:hover {
    color: var(--teal-deep);
    background: var(--teal-pale);
}

.nav-single {
    min-width: 210px;
    padding: 10px 8px;
}

.nav-single ul li a {
    display: block;
    font-size: 14px;
    font-weight: 500;
    color: var(--slate);
    padding: 9px 16px;
    border-radius: var(--r-sm);
    transition: color .18s, background .18s;
}

.nav-single ul li a:hover {
    color: var(--teal-deep);
    background: var(--teal-pale);
}

.nav-cta {
    background: var(--ink);
    color: var(--paper) !important;
    font-weight: 700;
    font-size: 15px;
    padding: 12px 22px;
    border-radius: var(--r-sm);
    white-space: nowrap;
    flex-shrink: 0;
    transition: background .22s, transform .2s;
    display: flex;
    align-items: center;
    gap: 8px;
}

.nav-cta:hover {
    background: var(--teal-deep);
    transform: translateY(-1px);
}

.hamburger {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
    padding: 4px;
}

.hamburger span {
    display: block;
    width: 24px;
    height: 2px;
    background: var(--ink);
    border-radius: 2px;
    transition: all .3s;
}

.hamburger.open span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
}

.hamburger.open span:nth-child(2) {
    opacity: 0;
}

.hamburger.open span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
}

.mobile-nav {
    display: none;
    flex-direction: column;
    background: var(--paper);
    border-top: 1px solid var(--line);
    max-height: 0;
    overflow: hidden;
    transition: max-height .4s ease;
}

.mobile-nav.open {
    max-height: 100vh;
    overflow-y: auto;
}

.mobile-nav-item>a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 20px;
    font-size: 15px;
    font-weight: 600;
    color: var(--ink);
    border-bottom: 1px solid var(--line);
}

.mobile-nav-item>a i {
    transition: transform .2s;
}

.mobile-nav-item.open>a i {
    transform: rotate(180deg);
}

.mobile-sub {
    display: none;
    background: #EFF7F4;
    padding: 8px 0;
}

.mobile-nav-item.open .mobile-sub {
    display: block;
}

.mobile-sub-group {
    padding: 12px 20px 8px 28px;
}

.mobile-sub-group h6 {
    font-family: var(--font-mono);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--slate-2);
    font-weight: 700;
    margin-bottom: 8px;
}

.mobile-sub-group ul li a {
    display: block;
    padding: 7px 0;
    font-size: 14px;
    color: var(--slate);
    border-bottom: 1px solid #E2EEE9;
}

.mobile-sub-group ul li:last-child a {
    border-bottom: none;
}

.mobile-nav-cta {
    padding: 16px 20px;
}

.mobile-nav-cta a {
    display: block;
    text-align: center;
    background: var(--ink);
    color: var(--paper) !important;
    font-weight: 700;
    padding: 14px;
    border-radius: var(--r-md);
}

.plain-link {
    padding: 15px 20px;
    display: block;
    font-weight: 600;
    color: var(--ink);
    border-bottom: 1px solid var(--line);
}

/* =====================================================
       HERO
    ===================================================== */
.hero {
    background: var(--grad-dark);
    color: var(--paper);
    padding: 64px 0 0;
    position: relative;
    overflow: hidden;
}

.hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(ellipse 60% 50% at 85% 15%, rgba(221, 138, 58, .16), transparent),
        radial-gradient(ellipse 50% 50% at 5% 85%, rgba(28, 140, 126, .22), transparent);
    pointer-events: none;
}

.hero-inner {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 50px;
    align-items: center;
    padding-bottom: 70px;
}

.hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .16);
    color: #C7DCD6;
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    padding: 8px 16px 8px 12px;
    border-radius: 50px;
    margin-bottom: 26px;
}

.hero-badge .dot-grad {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--grad-ascent);
    flex-shrink: 0;
}

.hero-title {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: clamp(34px, 4.4vw, 56px);
    line-height: 1.12;
    letter-spacing: -.01em;
    color: var(--paper);
    margin-bottom: 22px;
}

.hero-title em {
    font-style: italic;
    font-weight: 500;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.hero-desc {
    font-size: 17px;
    color: #B9CEC8;
    line-height: 1.8;
    margin-bottom: 34px;
    max-width: 500px;
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 38px;
}

.hero-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;
}

.trust-chip {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #D6E6E1;
    font-size: 15.5px;
    font-weight: 500;
}

.trust-chip i {
    color: var(--moss);
    font-size: 12px;
}

.trust-chip b {
    font-family: var(--font-mono);
    color: var(--paper);
    font-weight: 700;
}

/* ---- Hero Right: The Seal ---- */
.hero-right {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 26px;
}

.seal-wrap {
    position: relative;
    width: 390px;
    height: 390px;
}

.seal-ring {
    width: 100%;
    height: 100%;
}

.seal-core {
    position: absolute;
    inset: 38px;
    border-radius: 50%;
    background: var(--ink-soft);
    border: 1px solid rgba(255, 255, 255, .10);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    box-shadow: inset 0 0 40px rgba(0, 0, 0, .25);
}

.seal-core .check-icon {
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    font-size: 29px;
    margin-bottom: 10px;
}

.seal-core strong {
    font-family: var(--font-mono);
    font-size: 14px;
    letter-spacing: .08em;
    color: var(--paper);
    text-transform: uppercase;
}

.seal-core span {
    font-family: var(--font-mono);
    font-size: 12px;
    color: #8FAFA6;
    margin-top: 3px;
}

.seal-node {
    position: absolute;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    background: var(--ink-soft);
    border: 2px solid #355C53;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .3s, border-color .3s;
}

.seal-node.lit {
    background: var(--amber);
    border-color: var(--amber);
}

.seal-node.n1 {
    top: 4px;
    left: 50%;
    transform: translateX(-50%);
}

.seal-node.n2 {
    top: 50%;
    right: 4px;
    transform: translateY(-50%);
}

.seal-node.n3 {
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
}

.seal-node.n4 {
    top: 50%;
    left: 4px;
    transform: translateY(-50%);
}

.seal-ring-spin {
    animation: sealspin 28s linear infinite;
    transform-origin: center;
}

@keyframes sealspin {
    to {
        transform: rotate(360deg);
    }
}

/* File ticket card */
.file-ticket {
    width: 100%;
    max-width: 300px;
    background: rgba(255, 255, 255, .05);
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: var(--r-md);
    padding: 16px 18px;
    position: relative;
}

.file-ticket::before,
.file-ticket::after {
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    background: var(--ink);
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
}

.file-ticket::before {
    left: -8px;
}

.file-ticket::after {
    right: -8px;
}

.ticket-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-mono);
    font-size: 11.5px;
    color: #B9CEC8;
    padding: 6px 0;
}

.ticket-row:first-child {
    border-bottom: 1px dashed rgba(255, 255, 255, .16);
    padding-bottom: 10px;
    margin-bottom: 4px;
}

.ticket-row b {
    color: var(--paper);
}

.ticket-row .status-ok {
    color: var(--moss);
    font-weight: 700;
}

/* =====================================================
       STATS STRIP
    ===================================================== */
.stats-strip {
    background: var(--ink-soft);
    padding: 30px 0;
    position: relative;
    z-index: 2;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.stat-item {
    text-align: center;
    padding: 8px 14px;
    border-right: 1px solid rgba(255, 255, 255, .10);
}

.stat-item:last-child {
    border-right: none;
}

.stat-item strong {
    display: block;
    font-family: var(--font-mono);
    font-size: clamp(24px, 2.6vw, 32px);
    font-weight: 700;
    color: var(--paper);
}

.stat-item strong .grad-num {
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.stat-item p {
    font-size: 13px;
    color: #9FBDB5;
    margin-top: 5px;
}

/* =====================================================
       SERVICES (category grid — filing folders)
    ===================================================== */
.services-sec {
    padding: 110px 0 100px;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.services-head {
    max-width: 80%;
    margin-bottom: 54px;
}

.services-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.service-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 32px 26px 28px;
    position: relative;
    transition: transform .25s, box-shadow .25s, border-color .25s;
}

.service-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}

.service-tab {
    position: absolute;
    top: -1px;
    left: 26px;
    transform: translateY(-50%);
    background: var(--ink);
    color: #9FBDB5;
    font-family: var(--font-mono);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .06em;
    padding: 4px 10px;
    border-radius: 5px;
}

.service-icon-wrap {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 20px;
    margin: 10px 0 18px;
}

.service-card h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 19px;
    color: var(--ink);
    margin-bottom: 9px;
}

.service-card>p {
    font-size: 14.5px;
    color: var(--slate);
    line-height: 1.65;
    margin-bottom: 18px;
}

.service-links {
    display: flex;
    flex-direction: column;
    gap: 7px;
    margin-bottom: 20px;
}

.service-links li a {
    font-size: 13.5px;
    color: var(--slate);
    display: flex;
    align-items: center;
    gap: 8px;
    transition: color .18s;
}

.service-links li a::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--moss);
    flex-shrink: 0;
}

.service-links li a:hover {
    color: var(--teal-deep);
}

.service-card-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    font-weight: 700;
    color: var(--ink);
    padding-top: 14px;
    border-top: 1px dashed var(--line);
    width: 100%;
    transition: color .2s, gap .2s;
}

.service-card-link i {
    font-size: 11px;
    transition: transform .2s;
}

.service-card-link:hover {
    color: var(--teal-deep);
}

.service-card-link:hover i {
    transform: translateX(3px);
}

/* =====================================================
       POPULAR / FEATURED SERVICES (certificate cards)
    ===================================================== */
.popular-sec {
    padding: 0 0 100px;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.popular-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 40px;
    flex-wrap: wrap;
    gap: 20px;
}

.popular-head .section-title {
    margin-bottom: 8px;
}

.popular-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.pop-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 26px 22px;
    display: flex;
    flex-direction: column;
    transition: transform .25s, box-shadow .25s;
}

.pop-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
}

.pop-card-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 16px;
}

.pop-icon {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: var(--ink);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--amber);
    font-size: 17px;
}

.pop-tag {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--teal-deep);
    background: var(--teal-pale);
    padding: 5px 9px;
    border-radius: 50px;
}

.pop-card h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 18px;
    color: var(--ink);
    margin-bottom: 8px;
}

.pop-card h3 a {
    transition: color .2s;
}

.pop-card h3 a:hover {
    color: var(--teal-deep);
}

.pop-card>p {
    font-size: 13.5px;
    color: var(--slate);
    margin-bottom: 16px;
    line-height: 1.6;
}

.feature-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 18px;
    flex-grow: 1;
}

.feature-list li {
    font-size: 12.5px;
    color: var(--slate);
    display: flex;
    align-items: center;
    gap: 7px;
}

.feature-list li i {
    color: var(--moss);
    font-size: 11px;
}

.pop-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 700;
    color: var(--ink);
    padding-top: 14px;
    border-top: 1px dashed var(--line);
}

.pop-link i {
    font-size: 10px;
    transition: transform .2s;
}

.pop-link:hover i {
    transform: translateX(3px);
}

.pop-link:hover {
    color: var(--teal-deep);
}

/* =====================================================
       WHY US
    ===================================================== */
.why-sec {
    padding: 100px 0;
    background: var(--paper);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.1' fill='none'/%3E%3C/svg%3E");
}

.why-inner {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 64px;
    align-items: center;
}

.why-illustration {
    position: relative;
    background: var(--ink-soft);
    border-radius: var(--r-xl);
    padding: 40px;
    min-height: 540px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.why-illustration::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 20% 15%, rgba(221, 138, 58, .18), transparent 55%),
        radial-gradient(circle at 85% 85%, rgba(28, 140, 126, .28), transparent 55%);
}

.why-illustration svg {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 420px;
}

.why-float-badge {
    position: absolute;
    bottom: 24px;
    left: 24px;
    right: 24px;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .16);
    backdrop-filter: blur(6px);
    border-radius: var(--r-md);
    padding: 14px 18px;
    z-index: 3;
}

.why-float-badge h4 {
    font-family: var(--font-display);
    font-size: 16px;
    color: var(--paper);
    margin-bottom: 3px;
}

.why-float-badge p {
    font-size: 12.5px;
    color: #A9C7BF;
}

.why-counters {
    display: flex;
    gap: 30px;
    margin: 26px 0 32px;
    padding: 22px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.why-counter strong {
    display: block;
    font-family: var(--font-mono);
    font-weight: 700;
    font-size: 28px;
    color: var(--ink);
}

.why-counter span {
    font-size: 24px;
    color: var(--slate-2);
}

.why-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
}

.why-feature i {
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: var(--moss-pale);
    color: var(--teal-deep);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 15px;
    margin-bottom: 12px;
}

.why-feature h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 24px;
    color: var(--ink);
    margin-bottom: 6px;
}

.why-feature p {
    font-size: 13.5px;
    color: var(--slate);
    line-height: 1.6;
}

/* =====================================================
       PROCESS — "The Ascent Line"
    ===================================================== */
.process-sec {
    padding: 100px 0 110px;
    background: var(--mist);
}

.process-head {
    max-width: 620px;
    margin: 0 auto 60px;
    text-align: center;
}

.process-head .eyebrow {
    justify-content: center;
}

.ascent-line-wrap {
    position: relative;
    padding-top: 10px;
}

.ascent-track {
    position: absolute;
    top: 33px;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--line);
    z-index: 1;
}

.ascent-track-fill {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 0%;
    background: var(--grad-ascent);
    transition: width 1.4s cubic-bezier(.4, 0, .2, 1);
}

.process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    position: relative;
    z-index: 2;
}

.process-step {
    text-align: center;
    opacity: 0;
    transform: translateY(16px);
    transition: opacity .5s, transform .5s;
}

.process-step.show {
    opacity: 1;
    transform: translateY(0);
}

.process-num {
    width: 66px;
    height: 66px;
    border-radius: 50%;
    background: var(--paper);
    border: 2px solid var(--line);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 22px;
    font-family: var(--font-mono);
    font-weight: 700;
    font-size: 18px;
    color: var(--slate-2);
    transition: border-color .4s, color .4s, background .4s;
    position: relative;
}

.process-step.show .process-num {
    border-color: transparent;
    background: var(--grad-ascent);
    color: var(--ink);
}

.process-step h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 18px;
    color: var(--ink);
    margin-bottom: 8px;
}

.process-step p {
    font-size: 13.5px;
    color: var(--slate);
    max-width: 230px;
    margin: 0 auto;
    line-height: 1.65;
}

/* =====================================================
       INDUSTRIES
    ===================================================== */
.industry-sec {
    padding: 90px 0 100px;
    background: var(--paper);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.industry-head {
    max-width: 620px;
    margin: 0 auto 46px;
    text-align: center;
}

.industry-head .eyebrow {
    justify-content: center;
}

.industry-head .section-sub {
    margin: 0 auto;
}

.industry-cloud {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.ind-tag {
    font-size: 13.5px;
    font-weight: 600;
    color: var(--slate);
    background: var(--mist);
    border: 1px solid var(--line);
    padding: 9px 18px;
    border-radius: 50px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    opacity: 0;
    transform: translateY(8px) scale(.94);
    transition: opacity .4s, transform .4s, border-color .25s, color .25s;
}

.ind-tag::before {
    content: '';
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--grad-ascent);
}

.ind-tag.show {
    opacity: 1;
    transform: translateY(0) scale(1);
}

.ind-tag:hover {
    border-color: var(--teal);
    color: var(--teal-deep);
}

/* =====================================================
       TESTIMONIALS
    ===================================================== */
.testi-sec {
    padding: 100px 0;
    background: var(--ink);
    position: relative;
    overflow: hidden;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.testi-sec::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 50% at 90% 10%, rgba(221, 138, 58, .10), transparent),
        radial-gradient(ellipse 50% 50% at 5% 90%, rgba(28, 140, 126, .18), transparent);
}

.testi-head {
    max-width: 640px;
    margin: 0 auto 50px;
    text-align: center;
    position: relative;
    z-index: 2;
}

.testi-head .eyebrow {
    justify-content: center;
}

.testi-head .section-title {
    color: var(--paper);
}

.testi-head .section-sub {
    color: #A9C7BF;
    margin: 0 auto;
}

.testi-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    position: relative;
    z-index: 2;
}

.testi-card {
    background: rgba(255, 255, 255, .04);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: var(--r-lg);
    padding: 30px 26px;
    opacity: 0;
    transform: translateY(18px);
    transition: opacity .55s, transform .55s, border-color .25s;
}

.testi-card.show {
    opacity: 1;
    transform: translateY(0);
}

.testi-card:hover {
    border-color: rgba(255, 255, 255, .26);
}

.testi-quote-mark {
    font-family: var(--font-display);
    font-size: 44px;
    color: var(--amber);
    line-height: 1;
    margin-bottom: 6px;
}

.testi-stars {
    display: flex;
    gap: 3px;
    margin-bottom: 14px;
}

.testi-stars i {
    color: var(--amber);
    font-size: 12px;
}

.testi-card blockquote {
    font-size: 14.5px;
    color: #D6E6E1;
    line-height: 1.75;
    margin-bottom: 22px;
}

.testi-author {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-top: 18px;
    border-top: 1px dashed rgba(255, 255, 255, .16);
}

.testi-avatar {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-mono);
    font-weight: 700;
    font-size: 13px;
    color: var(--ink);
    flex-shrink: 0;
}

.testi-author strong {
    display: block;
    color: var(--paper);
    font-size: 14px;
}

.testi-author span {
    font-size: 12.5px;
    color: #8FAFA6;
}

/* =====================================================
       FAQ
    ===================================================== */
.faq-sec {
    padding: 100px 0;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.25' fill='none'/%3E%3C/svg%3E");
}

.faq-inner {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 64px;
    align-items: start;
}

.faq-illustration {
    position: relative;
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-xl);
    padding: 40px;
    min-height: 380px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.faq-illustration svg {
    width: 100%;
    max-width: 360px;
}

.faq-badge {
    position: absolute;
    bottom: -22px;
    left: 24px;
    right: 24px;
    background: var(--ink);
    border-radius: var(--r-md);
    padding: 16px 18px;
    display: flex;
    align-items: center;
    gap: 14px;
    box-shadow: var(--shadow-md);
}

.faq-badge-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    font-size: 16px;
    flex-shrink: 0;
}

.faq-badge h5 {
    font-size: 14px;
    color: var(--paper);
    margin-bottom: 2px;
}

.faq-badge p {
    font-size: 11.5px;
    color: #9FBDB5;
}

.faq-right {
    margin-top: 8px;
}

.faq-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.faq-item {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-md);
    overflow: hidden;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity .4s, transform .4s, border-color .2s;
}

.faq-item.show {
    opacity: 1;
    transform: translateY(0);
}

.faq-item.active {
    border-color: #BFE0D8;
}

.faq-question {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 18px 20px;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 700;
    color: var(--ink);
    text-align: left;
}

.faq-question i {
    color: var(--teal-deep);
    font-size: 13px;
    transition: transform .3s;
    flex-shrink: 0;
}

.faq-item.active .faq-question i {
    transform: rotate(45deg);
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height .35s ease;
}

.faq-item.active .faq-answer {
    max-height: 220px;
}

.faq-answer p {
    padding: 0 20px 20px;
    font-size: 14px;
    color: var(--slate);
    line-height: 1.7;
}

/* =====================================================
       BLOG
    ===================================================== */

.blog-sec {
    padding: 100px 0 110px;
    background: var(--ink-soft);
    position: relative;
    overflow: hidden;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.blog-sec::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 55% 50% at 95% 0%, rgba(221, 138, 58, .12), transparent);
}

.blog-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom: 44px;
    flex-wrap: wrap;
    gap: 20px;
}

.blog-head .eyebrow {
    color: #8FD9C8;
}

.blog-head .section-title {
    margin-bottom: 8px;
    color: var(--paper);
}

.blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.blog-card {
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    overflow: hidden;
    background: var(--mist);
    opacity: 0;
    transform: translateY(16px);
    transition: opacity .5s, transform .5s, box-shadow .25s, border-color .25s;
}

.blog-card.show {
    opacity: 1;
    transform: translateY(0);
}

.blog-card:hover {
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}

.blog-head-art {
    height: 150px;
    background: var(--grad-dark);
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.blog-head-art::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 25% 30%, rgba(221, 138, 58, .30), transparent 55%),
        radial-gradient(circle at 80% 80%, rgba(28, 140, 126, .35), transparent 55%);
}

.blog-head-art i {
    position: relative;
    z-index: 2;
    font-size: 34px;
    color: rgba(255, 255, 255, .85);
}

.blog-body {
    padding: 22px 22px 26px;
}

.blog-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.blog-meta span:first-child {
    font-family: var(--font-mono);
    font-size: 11.5px;
    color: var(--slate-2);
}

.blog-cat {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--teal-deep);
    background: var(--teal-pale);
    padding: 4px 9px;
    border-radius: 50px;
}

.blog-body h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 18.5px;
    color: var(--ink);
    line-height: 1.35;
    margin-bottom: 10px;
}

.blog-body h3 a:hover {
    color: var(--teal-deep);
}

.blog-body>p {
    font-size: 13.5px;
    color: var(--slate);
    line-height: 1.65;
    margin-bottom: 16px;
}

.blog-read-more {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 700;
    color: var(--ink);
}

.blog-read-more i {
    font-size: 10px;
    transition: transform .2s;
}

.blog-read-more:hover i {
    transform: translateX(3px);
}

.blog-read-more:hover {
    color: var(--teal-deep);
}

/* =====================================================
       CTA BANNER
    ===================================================== */
.cta-sec {
    background: var(--grad-dark);
    padding: 90px 0 96px;
    position: relative;
    overflow: hidden;
}

.cta-sec::before {
    content: '';
    position: absolute;
    top: 50%;
    right: -120px;
    transform: translateY(-50%);
    width: 420px;
    height: 420px;
    border-radius: 50%;
    border: 1px dashed rgba(255, 255, 255, .10);
}

.cta-sec::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -50px;
    transform: translateY(-50%);
    width: 280px;
    height: 280px;
    border-radius: 50%;
    border: 1px dashed rgba(255, 255, 255, .14);
}

.cta-inner {
    max-width: 700px;
    position: relative;
    z-index: 2;
}

.cta-inner .eyebrow {
    color: #8FD9C8;
}

.cta-inner h2 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: clamp(28px, 3.6vw, 42px);
    color: var(--paper);
    line-height: 1.18;
    margin-bottom: 16px;
    letter-spacing: -.01em;
}

.cta-inner h2 em {
    font-style: italic;
    font-weight: 500;
    color: var(--amber);
}

.cta-inner>p {
    font-size: 16.5px;
    color: #B9CEC8;
    line-height: 1.75;
    margin-bottom: 32px;
    max-width: 100%;
}

.cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

/* =====================================================
       FOOTER
    ===================================================== */
.site-footer {
    background: var(--ink);
    color: #9FBDB5;
    padding: 70px 0 0;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr 1fr 1.1fr;
    gap: 36px;
    padding-bottom: 50px;
}

.footer-brand .nav-logo img {
    height: 60px;
}

.footer-brand p {
    font-size: 13.5px;
    line-height: 1.7;
    margin: 18px 0 22px;
    max-width: 260px;
    color: #8FAFA6;
}

.footer-tagline {
    font-family: var(--font-mono);
    font-size: 11.5px;
    letter-spacing: .06em;
    color: var(--amber);
    margin-bottom: 20px;
    text-transform: uppercase;
}

.footer-social {
    display: flex;
    gap: 10px;
}

.footer-social a {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 1px solid rgba(255, 255, 255, .14);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: #C7DCD6;
    transition: background .2s, border-color .2s, color .2s;
}

.footer-social a:hover {
    background: var(--grad-ascent);
    color: var(--ink);
    border-color: transparent;
}

.footer-col h4 {
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--paper);
    margin-bottom: 18px;
}

.footer-col ul li+li {
    margin-top: 11px;
}

.footer-col ul li a {
    font-size: 13.5px;
    transition: color .18s;
}

.footer-col ul li a:hover {
    color: var(--paper);
}

.footer-contact-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13.5px;
    margin-top: 13px;
}

.footer-contact-list li:first-child {
    margin-top: 0;
}

.footer-contact-list li i {
    color: var(--moss);
    margin-top: 3px;
    font-size: 13px;
    flex-shrink: 0;
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, .10);
    padding: 22px 0 26px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    font-size: 12.5px;
}

.footer-bottom-links {
    display: flex;
    gap: 22px;
}

.footer-bottom-links a:hover {
    color: var(--paper);
}

/* Scroll to top */
.scroll-top {
    position: fixed;
    bottom: 26px;
    right: 26px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--ink);
    color: var(--paper);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: var(--shadow-md);
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity .25s, transform .25s, background .25s;
    z-index: 500;
    border: 1px solid var(--line-dark);
}

.scroll-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.scroll-top:hover {
    background: var(--teal-deep);
}

/* =====================================================
       RESPONSIVE
    ===================================================== */
@media (max-width: 1080px) {

    .nav-menu,
    .nav-cta {
        display: none;
    }

    .hamburger {
        display: flex;
    }

    .mobile-nav {
        display: flex;
    }

    .hero-inner {
        grid-template-columns: 1fr;
        gap: 50px;
        padding-bottom: 50px;
    }

    .hero-right {
        order: -1;
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .popular-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .why-inner {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .why-illustration {
        min-height: 320px;
    }

    .process-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 24px;
    }

    .ascent-track {
        display: none;
    }

    .testi-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .faq-inner {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .faq-illustration {
        min-height: 280px;
        margin-bottom: 10px;
    }

    .blog-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .tools-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr 1fr;
    }

    .footer-brand {
        grid-column: 1 / -1;
    }
}

@media (max-width: 720px) {
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 18px;
    }

    .stat-item {
        border-right: none;
        border-bottom: 1px solid rgba(255, 255, 255, .10);
        padding-bottom: 18px;
    }

    .services-grid,
    .popular-grid,
    .process-grid,
    .testi-grid,
    .blog-grid,
    .tools-grid {
        grid-template-columns: 1fr;
    }

    .why-features {
        grid-template-columns: 1fr;
    }

    .popular-head,
    .blog-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 30px;
    }

    .cta-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .cta-actions .btn {
        justify-content: center;
    }

    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
    }

    .seal-wrap {
        width: 240px;
        height: 240px;
    }

    .nav-mega {
        min-width: 90vw;
        left: 50%;
    }
}

@media (max-width: 480px) {
    .footer-grid {
        grid-template-columns: 1fr;
    }

    .hero {
        padding-top: 50px;
    }
}


/* =====================================================
   SERVICE PAGE — SHARED BASE STYLES
===================================================== */

/* ---- Shared section header (centered eyebrow + title + sub) ---- */
.svc-sec-head {
    margin-bottom: 56px;
}
.svc-sec-head.center {
    text-align: center;
}
.svc-sec-head.center .eyebrow {
    justify-content: center;
}
.svc-sec-head.center .section-sub {
    margin: 0 auto;
}

/* ---- Breadcrumb ---- */
.svc-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-family: var(--font-mono);
    color: #8FAFA6;
    margin-bottom: 36px;
    flex-wrap: wrap;
}
.svc-breadcrumb a {
    color: #8FAFA6;
    transition: color .2s;
}
.svc-breadcrumb a:hover {
    color: var(--amber);
}
.svc-breadcrumb i {
    font-size: 9px;
    color: #4C6B62;
}
.svc-breadcrumb span {
    color: var(--amber);
    font-weight: 700;
}

/* =====================================================
   SERVICE HERO
===================================================== */
.svc-hero {
    background: var(--grad-dark);
    color: var(--paper);
    padding: 60px 0 72px;
    position: relative;
    overflow: hidden;
}
.svc-hero-bg {
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(ellipse 60% 50% at 90% 10%, rgba(221,138,58,.18), transparent),
        radial-gradient(ellipse 55% 50% at 5% 90%, rgba(28,140,126,.24), transparent);
    pointer-events: none;
}
.svc-hero-inner {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 56px;
    align-items: center;
}
.svc-hero-title {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: clamp(30px, 3.8vw, 50px);
    line-height: 1.12;
    letter-spacing: -.01em;
    color: var(--paper);
    margin: 22px 0 20px;
}
.svc-hero-title em {
    font-style: italic;
    font-weight: 500;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}
.svc-hero-desc {
    font-size: 16.5px;
    color: #B9CEC8;
    line-height: 1.8;
    margin-bottom: 28px;
    max-width: 510px;
}
.svc-hero-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;
    margin-bottom: 32px;
}
.svc-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

/* --- Hero Certificate Card --- */
.svc-hero-right {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 22px;
}
.svc-cert-card {
    width: 100%;
    max-width: 360px;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.35);
}
.cert-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 20px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    font-family: var(--font-mono);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .1em;
    color: #8FAFA6;
    text-transform: uppercase;
}
.cert-seal-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: inline-block;
}
.cert-body {
    padding: 30px 24px 24px;
    text-align: center;
}
.cert-emblem {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    color: var(--ink);
    font-size: 24px;
}
.cert-company-name {
    font-family: var(--font-display);
    font-size: 19px;
    font-weight: 600;
    color: var(--paper);
    margin-bottom: 5px;
}
.cert-sub {
    font-size: 11.5px;
    color: #8FAFA6;
    font-family: var(--font-mono);
    letter-spacing: .03em;
    margin-bottom: 22px;
}
.cert-meta-row {
    display: flex;
    gap: 16px;
    justify-content: center;
    flex-wrap: wrap;
}
.cert-meta-item {
    text-align: left;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-sm);
    padding: 9px 14px;
    flex: 1;
    min-width: 120px;
}
.cert-meta-item span {
    display: block;
    font-family: var(--font-mono);
    font-size: 10px;
    color: #6B8F87;
    letter-spacing: .05em;
    text-transform: uppercase;
    margin-bottom: 4px;
}
.cert-meta-item strong {
    font-family: var(--font-mono);
    font-size: 11px;
    color: var(--paper);
    font-weight: 700;
}
.cert-footer {
    padding: 13px 20px;
    background: rgba(79,174,106,.12);
    border-top: 1px solid rgba(79,174,106,.2);
    text-align: center;
}
.cert-status {
    font-family: var(--font-mono);
    font-size: 12px;
    font-weight: 700;
    color: var(--moss);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    letter-spacing: .04em;
}

/* --- Hero chips (benefit tags) --- */
.svc-hero-chips {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 9px;
    width: 100%;
    max-width: 360px;
}
.svc-chip {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12.5px;
    font-weight: 600;
    color: #C7DCD6;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.14);
    padding: 7px 14px;
    border-radius: 50px;
    transition: background .2s, border-color .2s;
}
.svc-chip i {
    color: var(--moss);
    font-size: 11px;
}
.svc-chip:hover {
    background: rgba(255,255,255,.10);
    border-color: rgba(255,255,255,.25);
}

/* =====================================================
   SERVICE INTRO SECTION
===================================================== */
.svc-intro-sec {
    padding: 100px 0;
    background: var(--paper);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.1' fill='none'/%3E%3C/svg%3E");
}
.svc-intro-inner {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 70px;
    align-items: center;
}
.svc-intro-visual {
    position: relative;
}
.svc-intro-visual svg {
    width: 100%;
    max-width: 380px;
    margin: 0 auto;
    display: block;
    filter: drop-shadow(0 20px 40px rgba(14,31,28,.08));
}
.svc-intro-badge {
    position: absolute;
    bottom: -8px;
    right: 0;
    background: var(--ink);
    color: var(--paper);
    border-radius: var(--r-md);
    padding: 14px 18px;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: var(--shadow-md);
    max-width: 220px;
}
.svc-intro-badge i {
    color: var(--amber);
    font-size: 18px;
    flex-shrink: 0;
}
.svc-intro-badge strong {
    display: block;
    font-size: 13px;
    color: var(--paper);
}
.svc-intro-badge span {
    font-size: 11.5px;
    color: #9FBDB5;
}
.svc-benefit-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-top: 30px;
}
.svc-benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}
.svc-benefit-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 16px;
    flex-shrink: 0;
}
.svc-benefit-item h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 15px;
    color: var(--ink);
    margin-bottom: 4px;
}
.svc-benefit-item p {
    font-size: 13px;
    color: var(--slate);
    line-height: 1.6;
}

/* =====================================================
   DOCUMENTS / REQUIREMENTS SECTION
===================================================== */
.svc-docs-sec {
    padding: 100px 0;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}
.svc-docs-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}
.svc-docs-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 30px 26px;
    transition: transform .25s, box-shadow .25s, border-color .25s;
}
.svc-docs-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}
.svc-docs-card-header {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;
    padding-bottom: 18px;
    border-bottom: 1px dashed var(--line);
}
.svc-docs-icon {
    width: 48px;
    height: 48px;
    border-radius: 13px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 19px;
    flex-shrink: 0;
}
.svc-docs-card-header h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 17px;
    color: var(--ink);
}
.svc-checklist {
    display: flex;
    flex-direction: column;
    gap: 11px;
}
.svc-checklist li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 14px;
    color: var(--slate);
    line-height: 1.5;
}
.svc-checklist li i.fa-circle-check {
    color: var(--moss);
    font-size: 14px;
    margin-top: 1px;
    flex-shrink: 0;
}
.svc-checklist li strong {
    font-weight: 700;
    color: var(--ink);
}

/* =====================================================
   PROCESS SECTION (Service Page Version)
===================================================== */
.svc-process-sec {
    padding: 100px 0;
    background: var(--paper);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.1' fill='none'/%3E%3C/svg%3E");
}
.svc-process-track {
    position: relative;
}
.svc-process-line {
    position: absolute;
    top: 36px;
    left: calc(50% - 1px);
    width: 2px;
    height: calc(100% - 72px);
    background: var(--line);
    display: none;
}
.svc-step-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 28px;
    position: relative;
}
.svc-step-grid::before {
    content: '';
    position: absolute;
    top: 36px;
    left: 36px;
    right: 36px;
    height: 2px;
    background: linear-gradient(90deg, var(--line) 0%, #BFE0D8 100%);
}
.svc-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    position: relative;
}
.svc-step-num {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-mono);
    font-weight: 700;
    font-size: 17px;
    color: var(--ink);
    margin-bottom: 20px;
    position: relative;
    z-index: 2;
    box-shadow: 0 6px 22px rgba(28,140,126,.22);
    flex-shrink: 0;
}
.svc-step-body {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 24px 18px;
    width: 100%;
    transition: transform .25s, box-shadow .25s, border-color .25s;
}
.svc-step:hover .svc-step-body {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}
.svc-step-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 17px;
    margin: 0 auto 14px;
}
.svc-step-body h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 16px;
    color: var(--ink);
    margin-bottom: 8px;
}
.svc-step-body p {
    font-size: 13px;
    color: var(--slate);
    line-height: 1.65;
}
.svc-process-cta {
    margin-top: 52px;
}
.svc-process-cta-inner {
    background: var(--ink-soft);
    border-radius: var(--r-xl);
    padding: 30px 36px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
}
.svc-process-cta-inner strong {
    font-family: var(--font-display);
    font-size: 19px;
    color: var(--paper);
    display: block;
    margin-bottom: 5px;
}
.svc-process-cta-inner p {
    font-size: 14px;
    color: #8FAFA6;
}

/* =====================================================
   PACKAGES / PRICING SECTION
===================================================== */
.svc-packages-sec {
    padding: 100px 0;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}
.svc-packages-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: start;
}
.svc-pkg-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-xl);
    padding: 32px 28px 28px;
    position: relative;
    transition: transform .25s, box-shadow .25s, border-color .25s;
}
.svc-pkg-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
}
.svc-pkg-featured {
    border-color: var(--teal);
    box-shadow: 0 8px 36px rgba(28,140,126,.16);
    transform: translateY(-6px);
}
.svc-pkg-featured:hover {
    transform: translateY(-12px);
    box-shadow: 0 20px 60px rgba(28,140,126,.22);
}
.svc-pkg-badge-top {
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--grad-ascent);
    color: var(--ink);
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: 5px 16px;
    border-radius: 50px;
    white-space: nowrap;
}
.svc-pkg-tag {
    font-family: var(--font-mono);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--teal-deep);
    background: var(--teal-pale);
    padding: 5px 10px;
    border-radius: 50px;
    display: inline-block;
    margin-bottom: 12px;
}
.svc-pkg-header h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 20px;
    color: var(--ink);
    margin-bottom: 7px;
}
.svc-pkg-header p {
    font-size: 13.5px;
    color: var(--slate);
    line-height: 1.6;
    margin-bottom: 22px;
    padding-bottom: 22px;
    border-bottom: 1px dashed var(--line);
}
.svc-pkg-list {
    display: flex;
    flex-direction: column;
    gap: 11px;
    margin-bottom: 28px;
}
.svc-pkg-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 13.5px;
    color: var(--slate);
    line-height: 1.4;
}
.svc-pkg-list li i.fa-circle-check {
    color: var(--moss);
    font-size: 14px;
    margin-top: 1px;
    flex-shrink: 0;
}
.svc-pkg-muted {
    opacity: .45;
}
.svc-pkg-muted i.fa-xmark {
    color: var(--slate-2) !important;
    font-size: 13px;
}
.svc-pkg-btn {
    width: 100%;
    justify-content: center;
    padding: 13px 20px;
}
.svc-packages-note {
    text-align: center;
    margin-top: 32px;
    font-size: 13.5px;
    color: var(--slate-2);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
}
.svc-packages-note i {
    color: var(--teal-deep);
}
.svc-packages-note a {
    color: var(--teal-deep);
    font-weight: 600;
    transition: color .2s;
}
.svc-packages-note a:hover {
    color: var(--teal);
}

/* =====================================================
   WHY AP ADVISORS (Service Page Version)
===================================================== */
.svc-why-sec {
    padding: 100px 0;
    background: var(--paper);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.1' fill='none'/%3E%3C/svg%3E");
}
.svc-why-inner {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 64px;
    align-items: start;
}
.svc-why-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
    margin-top: 32px;
}
.svc-why-item {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}
.svc-why-icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--moss-pale);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 15px;
    flex-shrink: 0;
}
.svc-why-item h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 15px;
    color: var(--ink);
    margin-bottom: 4px;
}
.svc-why-item p {
    font-size: 13px;
    color: var(--slate);
    line-height: 1.6;
}
.svc-why-card {
    background: var(--mist);
    border: 1px solid var(--line);
    border-radius: var(--r-xl);
    padding: 32px;
    position: sticky;
    top: 100px;
}
.svc-why-counter-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
    margin-bottom: 24px;
}
.svc-why-counter {
    text-align: center;
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-md);
    padding: 16px 12px;
}
.svc-why-counter strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 24px;
    font-weight: 700;
    color: var(--ink);
    margin-bottom: 4px;
}
.svc-why-counter span {
    font-size: 22px;
    color: var(--slate-2);
}
.svc-why-trust-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.svc-why-trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13.5px;
    color: var(--slate);
}
.svc-why-trust-item i {
    color: var(--moss);
    font-size: 13px;
    flex-shrink: 0;
}

/* =====================================================
   CONSULTATION / CONTACT FORM SECTION
===================================================== */
.svc-consult-sec {
    padding: 100px 0;
    background: var(--grad-dark);
    position: relative;
    overflow: hidden;
}
.svc-consult-bg {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 55% 50% at 95% 5%, rgba(221,138,58,.15), transparent),
        radial-gradient(ellipse 45% 50% at 0% 95%, rgba(28,140,126,.22), transparent);
    pointer-events: none;
}
.svc-consult-inner {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
}
.svc-consult-points {
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.svc-consult-point {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}
.svc-consult-point-icon {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.14);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--amber);
    font-size: 15px;
    flex-shrink: 0;
}
.svc-consult-point strong {
    display: block;
    font-size: 14.5px;
    color: var(--paper);
    font-weight: 700;
    margin-bottom: 2px;
}
.svc-consult-point span {
    font-size: 13px;
    color: #8FAFA6;
}

/* Form card */
.svc-form-card {
    background: var(--paper);
    border-radius: var(--r-xl);
    padding: 36px;
    box-shadow: var(--shadow-lg);
}
.svc-form-header {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 28px;
    padding-bottom: 22px;
    border-bottom: 1px solid var(--line);
}
.svc-form-header-icon {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 20px;
    flex-shrink: 0;
}
.svc-form-header h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 19px;
    color: var(--ink);
    margin-bottom: 3px;
}
.svc-form-header p {
    font-size: 13px;
    color: var(--slate-2);
}
.svc-consult-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.svc-form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
.svc-form-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.svc-form-group label {
    font-size: 13px;
    font-weight: 700;
    color: var(--ink);
}
.svc-form-group label span {
    color: var(--amber);
}
.svc-form-group input,
.svc-form-group select,
.svc-form-group textarea {
    font-family: var(--font-body);
    font-size: 14.5px;
    color: var(--ink);
    background: var(--mist);
    border: 1.5px solid var(--line);
    border-radius: var(--r-sm);
    padding: 11px 14px;
    transition: border-color .2s, box-shadow .2s;
    outline: none;
    width: 100%;
    -webkit-appearance: none;
    appearance: none;
}
.svc-form-group input::placeholder,
.svc-form-group textarea::placeholder {
    color: var(--slate-2);
}
.svc-form-group input:focus,
.svc-form-group select:focus,
.svc-form-group textarea:focus {
    border-color: var(--teal);
    box-shadow: 0 0 0 3px rgba(28,140,126,.10);
    background: var(--paper);
}
.svc-form-group textarea {
    resize: vertical;
    min-height: 88px;
}
.svc-form-submit {
    width: 100%;
    justify-content: center;
    padding: 15px 24px;
    font-size: 15px;
    margin-top: 4px;
}
.svc-form-note {
    text-align: center;
    font-size: 12px;
    color: var(--slate-2);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.svc-form-note i {
    color: var(--teal-deep);
}

/* =====================================================
   RELATED SERVICES SECTION
===================================================== */
.svc-related-sec {
    padding: 100px 0 110px;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}
.svc-related-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}
.svc-related-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 28px 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform .25s, box-shadow .25s, border-color .25s;
}
.svc-related-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}
.svc-related-icon {
    width: 48px;
    height: 48px;
    border-radius: 13px;
    background: var(--ink);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--amber);
    font-size: 19px;
    margin-bottom: 4px;
}
.svc-related-tag {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--teal-deep);
    background: var(--teal-pale);
    padding: 4px 10px;
    border-radius: 50px;
    display: inline-block;
    align-self: flex-start;
}
.svc-related-card h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 18px;
    color: var(--ink);
    margin: 0;
}
.svc-related-card h3 a:hover {
    color: var(--teal-deep);
}
.svc-related-card > p {
    font-size: 13.5px;
    color: var(--slate);
    line-height: 1.6;
    flex-grow: 1;
}
.svc-related-card .pop-link {
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px dashed var(--line);
    width: 100%;
}

/* =====================================================
   SERVICE PAGE — RESPONSIVE
===================================================== */
@media (max-width: 1080px) {
    .svc-hero-inner {
        grid-template-columns: 1fr;
        gap: 44px;
    }
    .svc-hero-left { order: 1; }
    .svc-hero-right { order: -1; }
    .svc-cert-card { max-width: 380px; }

    .svc-intro-inner {
        grid-template-columns: 1fr;
        gap: 44px;
    }
    .svc-intro-visual svg { max-width: 320px; }

    .svc-docs-grid {
        grid-template-columns: 1fr 1fr;
    }

    .svc-step-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 40px 28px;
    }
    .svc-step-grid::before { display: none; }

    .svc-packages-grid {
        grid-template-columns: 1fr;
        max-width: 460px;
        margin: 0 auto;
    }
    .svc-pkg-featured { transform: none; }

    .svc-why-inner {
        grid-template-columns: 1fr;
        gap: 44px;
    }
    .svc-why-card { position: static; }

    .svc-consult-inner {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .svc-related-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 720px) {
    .svc-hero { padding: 44px 0 56px; }
    .svc-hero-title { font-size: clamp(26px, 7vw, 36px); }

    .svc-docs-grid {
        grid-template-columns: 1fr;
    }

    .svc-benefit-grid {
        grid-template-columns: 1fr;
    }

    .svc-why-features {
        grid-template-columns: 1fr;
    }

    .svc-why-counter-grid {
        grid-template-columns: 1fr 1fr;
    }

    .svc-related-grid {
        grid-template-columns: 1fr;
    }

    .svc-form-row {
        grid-template-columns: 1fr;
    }

    .svc-form-card { padding: 24px 20px; }

    .svc-process-cta-inner {
        flex-direction: column;
        text-align: center;
    }
    .svc-process-cta-inner .btn {
        width: 100%;
        justify-content: center;
    }

    .svc-step-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .svc-hero-chips { justify-content: flex-start; }
    .svc-cert-card { max-width: 100%; }
    .cert-meta-row { flex-direction: column; }
    .cert-meta-item { min-width: auto; }
    .svc-intro-badge { position: static; margin-top: 16px; max-width: 100%; }
}

/* =====================================================
   GST REGISTRATION PAGE — UNIQUE STYLES
   (GSTIN card, rate chips, threshold cards, types grid)
===================================================== */

/* ---- GSTIN Card (hero visual replacement for Pvt Ltd certificate) ---- */
.gst-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    width: 100%;
    max-width: 380px;
}

.gst-id-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.38);
    backdrop-filter: blur(8px);
}

.gst-id-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 18px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    gap: 10px;
    flex-wrap: wrap;
}

.gst-id-logo-area {
    display: flex;
    align-items: center;
    gap: 11px;
}

.gst-emblem {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    font-size: 18px;
    flex-shrink: 0;
}

.gst-id-country {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #8FAFA6;
}

.gst-id-act {
    display: block;
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    color: #C7DCD6;
    letter-spacing: .02em;
}

.gst-id-type-badge {
    font-family: var(--font-mono);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--moss);
    background: rgba(79,174,106,.12);
    border: 1px solid rgba(79,174,106,.22);
    padding: 5px 10px;
    border-radius: 50px;
    white-space: nowrap;
}

.gst-id-body {
    padding: 20px 18px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.gst-id-field label {
    display: block;
    font-family: var(--font-mono);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 4px;
}

.gst-id-field strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 13px;
    color: var(--paper);
    font-weight: 700;
    letter-spacing: .04em;
}

.gst-id-number {
    font-size: 16px !important;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
    letter-spacing: .06em !important;
}

.gst-id-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.gst-id-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 18px;
    background: rgba(79,174,106,.08);
    border-top: 1px solid rgba(79,174,106,.18);
}

.gst-qr-placeholder {
    font-size: 28px;
    color: rgba(255,255,255,.25);
}

/* ---- GST Rate chips (floating below GSTIN card) ---- */
.gst-rate-chips {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    max-width: 380px;
}

.gst-rate-chip {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    font-family: var(--font-mono);
    font-size: 13px;
    font-weight: 700;
    padding: 9px 14px;
    border-radius: var(--r-sm);
    line-height: 1.2;
    flex: 1;
    min-width: 52px;
    text-align: center;
    transition: transform .2s;
}

.gst-rate-chip:hover {
    transform: translateY(-3px);
}

.gst-rate-chip span {
    font-size: 9px;
    font-weight: 400;
    letter-spacing: .05em;
    text-transform: uppercase;
    opacity: .8;
}

.chip-0  { background: rgba(79,174,106,.15);  border: 1px solid rgba(79,174,106,.25);  color: var(--moss); }
.chip-5  { background: rgba(28,140,126,.15);  border: 1px solid rgba(28,140,126,.25);  color: #4DCFBE; }
.chip-12 { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.15); color: #C7DCD6; }
.chip-18 { background: rgba(221,138,58,.12);  border: 1px solid rgba(221,138,58,.22);  color: var(--amber); }
.chip-28 { background: rgba(173,95,30,.16);   border: 1px solid rgba(173,95,30,.26);   color: #E8A45A; }

/* ---- Eligibility / Threshold section ---- */
.gst-eligibility-sec {
    padding: 100px 0;
    background: var(--paper);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.1' fill='none'/%3E%3C/svg%3E");
}

/* GST intro uses reversed grid (content left, visual right) */
.gst-eligibility-sec .svc-intro-inner {
    grid-template-columns: 1.1fr .9fr;
}

.gst-threshold-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 14px;
    margin-top: 28px;
}

.gst-threshold-card {
    border-radius: var(--r-md);
    padding: 18px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform .25s, box-shadow .25s;
}

.gst-threshold-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}

.gst-threshold-card.mandatory {
    background: var(--mist);
    border: 1.5px solid var(--line);
}

.gst-threshold-card.always {
    background: linear-gradient(135deg, #F5FAF8 0%, #EDF7F3 100%);
    border: 1.5px solid #BFE0D8;
}

.gst-threshold-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 15px;
    flex-shrink: 0;
}

.gst-threshold-label {
    display: inline-block;
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 3px 8px;
    border-radius: 4px;
    margin-bottom: 2px;
}

.mandatory-label {
    background: rgba(221,80,57,.10);
    color: #C04A30;
    border: 1px solid rgba(221,80,57,.18);
}

.always-label {
    background: rgba(28,140,126,.12);
    color: var(--teal-deep);
    border: 1px solid rgba(28,140,126,.20);
}

.gst-threshold-content h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 14px;
    color: var(--ink);
    margin-bottom: 2px;
}

.gst-threshold-amount {
    font-family: var(--font-mono);
    font-size: 20px;
    font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin: 4px 0;
}

.gst-threshold-content p {
    font-size: 11.5px;
    color: var(--slate);
    line-height: 1.55;
}

/* ---- Benefits section (full 6-col grid on paper bg) ---- */
.gst-benefits-sec {
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.gst-benefit-grid-6 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
    margin-top: 0;
}

.gst-benefit-grid-6 .svc-benefit-item {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 22px 20px;
    transition: transform .25s, box-shadow .25s, border-color .25s;
}

.gst-benefit-grid-6 .svc-benefit-item:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}

/* ---- GST Registration Types section ---- */
.gst-types-sec {
    padding: 100px 0;
    background: var(--paper);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.1' fill='none'/%3E%3C/svg%3E");
}

.gst-types-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: start;
}

.gst-type-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-xl);
    padding: 30px 26px 26px;
    position: relative;
    transition: transform .25s, box-shadow .25s, border-color .25s;
}

.gst-type-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
}

.gst-type-featured {
    border-color: var(--teal);
    box-shadow: 0 8px 36px rgba(28,140,126,.14);
    transform: translateY(-6px);
    background: linear-gradient(160deg, #FFFFFF 0%, #F5FAF8 100%);
}

.gst-type-featured:hover {
    transform: translateY(-12px);
    box-shadow: 0 20px 60px rgba(28,140,126,.20);
}

.gst-type-badge-top {
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--grad-ascent);
    color: var(--ink);
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: 5px 16px;
    border-radius: 50px;
    white-space: nowrap;
}

.gst-type-header {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
    padding-bottom: 18px;
    border-bottom: 1px dashed var(--line);
}

.gst-type-icon {
    width: 48px;
    height: 48px;
    border-radius: 13px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 20px;
    flex-shrink: 0;
}

.gst-type-card > p {
    font-size: 13.5px;
    color: var(--slate);
    line-height: 1.6;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px dashed var(--line);
}

/* ---- GST Hero variant (slightly different radial position) ---- */
.gst-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 65% 55% at 95% 5%, rgba(221,138,58,.15), transparent),
        radial-gradient(ellipse 50% 60% at 2% 95%, rgba(28,140,126,.28), transparent),
        radial-gradient(ellipse 35% 35% at 60% 50%, rgba(79,174,106,.06), transparent);
}

/* ---- Responsive: GST-specific ---- */
@media (max-width: 1080px) {
    .gst-threshold-grid {
        grid-template-columns: 1fr 1fr;
    }
    .gst-benefit-grid-6 {
        grid-template-columns: repeat(2, 1fr);
    }
    .gst-types-grid {
        grid-template-columns: 1fr;
    }
    .gst-type-featured {
        transform: translateY(0);
    }
    .gst-eligibility-sec .svc-intro-inner {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .gst-threshold-grid {
        grid-template-columns: 1fr;
    }
    .gst-benefit-grid-6 {
        grid-template-columns: 1fr;
    }
    .gst-rate-chips {
        gap: 6px;
    }
    .gst-rate-chip {
        font-size: 11px;
        padding: 7px 10px;
        min-width: 44px;
    }
    .gst-id-row {
        grid-template-columns: 1fr;
        gap: 10px;
    }
}

@media (max-width: 480px) {
    .gst-card-wrap { max-width: 100%; }
    .gst-id-card { border-radius: var(--r-lg); }
    .gst-rate-chips { justify-content: flex-start; }
}

/* =====================================================
   TRADEMARK REGISTRATION PAGE — UNIQUE STYLES
   (TM shield card, progression strip, class tiles)
===================================================== */

/* ---- Hero: amber-dominant radial for brand/IP feel ---- */
.tm-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 70% 55% at 95% 5%,  rgba(221,138,58,.22), transparent),
        radial-gradient(ellipse 50% 55% at 2%  90%,  rgba(28,140,126,.24), transparent),
        radial-gradient(ellipse 40% 40% at 55% 55%,  rgba(221,138,58,.06), transparent);
}

/* ---- TM Shield Card ---- */
.tm-shield-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 370px;
}

.tm-shield-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow:
        0 24px 60px rgba(0,0,0,.38),
        0 0 0 1px rgba(221,138,58,.10) inset;
}

.tm-shield-header {
    padding: 14px 20px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    text-align: center;
}

.tm-shield-country {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #8FAFA6;
    margin-bottom: 2px;
}

.tm-shield-dept {
    display: block;
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    color: #C7DCD6;
    letter-spacing: .03em;
}

.tm-shield-core {
    padding: 28px 24px 22px;
    text-align: center;
}

.tm-shield-icon {
    width: 80px;
    height: 88px;
    margin: 0 auto 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    filter: drop-shadow(0 8px 20px rgba(221,138,58,.25));
}

.tm-shield-icon svg {
    width: 80px;
    height: 88px;
}

.tm-brand-name {
    font-family: var(--font-display);
    font-size: 18px;
    font-weight: 600;
    color: var(--paper);
    margin-bottom: 4px;
    letter-spacing: .01em;
}

.tm-brand-sub {
    font-family: var(--font-mono);
    font-size: 10.5px;
    color: #7FA098;
    letter-spacing: .04em;
    text-transform: uppercase;
    margin-bottom: 20px;
}

.tm-meta-row {
    display: flex;
    gap: 12px;
    justify-content: center;
}

.tm-meta-item {
    flex: 1;
    text-align: left;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-sm);
    padding: 9px 12px;
    min-width: 0;
}

.tm-meta-item span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9.5px;
    color: #6B8F87;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin-bottom: 4px;
}

.tm-meta-item strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 11px;
    color: var(--paper);
    font-weight: 700;
    word-break: break-all;
}

.tm-shield-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 20px;
    background: rgba(221,138,58,.10);
    border-top: 1px solid rgba(221,138,58,.20);
}

.tm-status-badge {
    font-family: var(--font-mono);
    font-size: 11.5px;
    font-weight: 700;
    color: var(--amber);
    display: flex;
    align-items: center;
    gap: 6px;
    letter-spacing: .03em;
}

.tm-status-badge i {
    color: var(--amber);
    font-size: 12px;
}

.tm-r-symbol {
    font-family: serif;
    font-size: 24px;
    font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    line-height: 1;
}

/* ---- TM → ® Progression Strip ---- */
.tm-progression-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
}

.tm-prog-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
}

.tm-prog-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: rgba(255,255,255,.18);
    border: 1.5px solid rgba(255,255,255,.3);
    transition: background .3s;
}

.tm-prog-step.active .tm-prog-dot {
    background: var(--amber);
    border-color: var(--amber);
    box-shadow: 0 0 0 3px rgba(221,138,58,.22);
}

.tm-prog-dot-r {
    background: linear-gradient(135deg, #1C8C7E, #4FAE6A, #DD8A3A) !important;
    border-color: transparent !important;
}

.tm-prog-label {
    font-family: var(--font-mono);
    font-size: 13px;
    font-weight: 700;
    color: var(--paper);
    line-height: 1;
}

.tm-prog-step.active .tm-prog-label {
    color: var(--amber);
}

.tm-prog-step p {
    font-size: 9px;
    color: #6B8F87;
    font-family: var(--font-mono);
    letter-spacing: .04em;
    white-space: nowrap;
}

.tm-prog-line {
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, rgba(255,255,255,.15) 0%, rgba(255,255,255,.08) 100%);
    margin-bottom: 14px;
}

/* ---- Process: 7-column (wider grid for TM 7 steps) ---- */
.tm-step-grid {
    grid-template-columns: repeat(4, 1fr);
}

@media (min-width: 1080px) {
    .tm-step-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    /* Row 2 of steps: centered */
    .tm-step-grid .svc-step:nth-child(5),
    .tm-step-grid .svc-step:nth-child(6),
    .tm-step-grid .svc-step:nth-child(7) {
        grid-column: span 1;
    }
}

/* ---- Trademark Classes Section ---- */
.tm-classes-sec {
    padding: 100px 0;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.tm-classes-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
    margin-bottom: 36px;
}

.tm-class-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 0;
    overflow: hidden;
    transition: transform .25s, box-shadow .25s, border-color .25s;
    display: flex;
    flex-direction: column;
}

.tm-class-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}

.tm-class-more {
    border-color: var(--line);
    background: linear-gradient(145deg, var(--ink-soft) 0%, #1A3530 100%);
    border-color: rgba(255,255,255,.10);
}

.tm-class-more:hover {
    border-color: rgba(221,138,58,.35);
}

.tm-class-num {
    font-family: var(--font-mono);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .06em;
    padding: 10px 16px 8px;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    border-bottom: 1px solid var(--line);
    display: inline-block;
    width: 100%;
}

.tm-class-more .tm-class-num {
    background: var(--amber);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    border-bottom-color: rgba(255,255,255,.10);
}

.tm-class-body {
    padding: 16px 16px 18px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.tm-class-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 15px;
    margin-bottom: 11px;
    flex-shrink: 0;
}

.tm-class-more .tm-class-icon {
    background: rgba(221,138,58,.12);
    color: var(--amber);
    border: 1px solid rgba(221,138,58,.18);
}

.tm-class-body h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 14.5px;
    color: var(--ink);
    margin-bottom: 6px;
    line-height: 1.3;
}

.tm-class-more .tm-class-body h4 {
    color: var(--paper);
}

.tm-class-body p {
    font-size: 12.5px;
    color: var(--slate);
    line-height: 1.6;
    margin-bottom: 10px;
    flex: 1;
}

.tm-class-more .tm-class-body p {
    color: #8FAFA6;
}

.tm-class-examples {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--teal-deep);
    text-transform: uppercase;
    background: var(--teal-pale);
    padding: 5px 9px;
    border-radius: 5px;
    display: inline-block;
    margin-top: auto;
}

.tm-class-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 700;
    color: var(--amber);
    margin-top: auto;
    transition: gap .2s;
}

.tm-class-link:hover {
    gap: 10px;
}

/* Classes callout note */
.tm-classes-note {
    background: var(--paper);
    border: 1px solid var(--line);
    border-left: 4px solid var(--amber);
    border-radius: var(--r-md);
    padding: 20px 24px;
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.tm-classes-note-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    background: var(--amber-pale);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--amber-deep);
    font-size: 17px;
    flex-shrink: 0;
}

.tm-classes-note p {
    font-size: 14px;
    color: var(--slate);
    line-height: 1.7;
}

.tm-classes-note strong {
    color: var(--ink);
}

.tm-classes-note a {
    color: var(--teal-deep);
    font-weight: 700;
    transition: color .2s;
}

.tm-classes-note a:hover {
    color: var(--teal);
}

/* ---- Responsive: Trademark-specific ---- */
@media (max-width: 1080px) {
    .tm-classes-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .tm-step-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .tm-step-grid::before { display: none; }
}

@media (max-width: 720px) {
    .tm-classes-grid {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .tm-progression-strip {
        padding: 10px 12px;
    }
    .tm-prog-label { font-size: 11px; }
    .tm-prog-step p { font-size: 8px; }
    .tm-shield-wrap { max-width: 100%; }
    .tm-step-grid {
        grid-template-columns: 1fr;
    }
    .tm-classes-note {
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .tm-classes-grid {
        grid-template-columns: 1fr;
    }
    .tm-meta-row {
        flex-direction: column;
    }
    .tm-shield-card { border-radius: var(--r-lg); }
    .tm-progression-strip {
        overflow-x: auto;
        gap: 8px;
    }
}

/* =====================================================
   FSSAI LICENSE PAGE — UNIQUE STYLES
   (License card, tier strip, tier comparison cards,
    food-business-type grid, warm-green hero accent)
===================================================== */

/* ---- Hero: warm green glow — food/safety feel ---- */
.fssai-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 60% 55% at 92% 8%,  rgba(79,174,106,.22), transparent),
        radial-gradient(ellipse 55% 55% at 3%  92%,  rgba(28,140,126,.28), transparent),
        radial-gradient(ellipse 40% 40% at 50% 50%,  rgba(79,174,106,.06), transparent);
}

/* ---- FSSAI License Card Wrap ---- */
.fssai-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 380px;
}

/* ---- FSSAI License Card ---- */
.fssai-lic-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow:
        0 24px 60px rgba(0,0,0,.38),
        0 0 0 1px rgba(79,174,106,.10) inset;
}

.fssai-lic-header {
    padding: 14px 16px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}

.fssai-lic-logo-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.fssai-lic-emblem {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    font-size: 17px;
    flex-shrink: 0;
}

.fssai-lic-org {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.fssai-lic-ministry {
    font-family: var(--font-mono);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
    color: #8FAFA6;
    line-height: 1.3;
}

.fssai-lic-authority {
    font-family: var(--font-mono);
    font-size: 10.5px;
    font-weight: 700;
    color: #C7DCD6;
    letter-spacing: .02em;
    line-height: 1.3;
}

.fssai-lic-type-badge {
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--moss);
    background: rgba(79,174,106,.12);
    border: 1px solid rgba(79,174,106,.22);
    padding: 4px 9px;
    border-radius: 50px;
    white-space: nowrap;
    align-self: flex-start;
    flex-shrink: 0;
}

.fssai-lic-body {
    padding: 18px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.fssai-lic-number-row {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-sm);
    padding: 10px 14px;
    text-align: center;
}

.fssai-lic-number-label {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 5px;
}

.fssai-lic-number {
    font-family: var(--font-mono);
    font-size: 17px;
    font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    letter-spacing: .08em;
}

.fssai-lic-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.fssai-lic-field span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 3px;
}

.fssai-lic-field strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 11.5px;
    color: var(--paper);
    font-weight: 700;
}

.fssai-type-highlight {
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
}

.fssai-lic-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 16px;
    background: rgba(79,174,106,.08);
    border-top: 1px solid rgba(79,174,106,.18);
}

.fssai-lic-status {
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    color: var(--moss);
    display: flex;
    align-items: center;
    gap: 6px;
    letter-spacing: .03em;
}

.fssai-lic-eat-safe {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--moss);
    display: flex;
    align-items: center;
    gap: 5px;
    opacity: .7;
}

/* ---- License Tier Strip (Basic → State → Central) ---- */
.fssai-tier-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    padding: 12px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
}

.fssai-tier {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    flex: 1;
    padding: 8px 6px;
    border-radius: var(--r-sm);
    transition: background .2s;
    cursor: default;
}

.fssai-tier-icon {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
}

.basic-tier .fssai-tier-icon  { background: rgba(79,174,106,.14);  color: var(--moss); }
.state-tier .fssai-tier-icon  { background: rgba(28,140,126,.18);  color: #4DCFBE; }
.central-tier .fssai-tier-icon{ background: rgba(221,138,58,.14);  color: var(--amber); }

.active-tier {
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.14);
}

.fssai-tier-info strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    color: var(--paper);
    text-align: center;
    line-height: 1.2;
}

.fssai-tier-info span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    color: #7FA098;
    text-align: center;
    letter-spacing: .04em;
}

.fssai-tier-detail span {
    display: block;
    font-family: var(--font-mono);
    font-size: 8px;
    color: #6B8F87;
    text-align: center;
    letter-spacing: .04em;
}

.fssai-tier-detail strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    text-align: center;
}

.fssai-tier-arrow {
    color: rgba(255,255,255,.2);
    font-size: 10px;
    flex-shrink: 0;
}

/* ---- License Types Section ---- */
.fssai-types-sec {
    padding: 100px 0;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.fssai-tier-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: start;
    margin-bottom: 36px;
}

.fssai-tier-full-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-xl);
    padding: 30px 26px 26px;
    position: relative;
    transition: transform .25s, box-shadow .25s;
    display: flex;
    flex-direction: column;
}

.fssai-tier-full-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
}

.featured-card {
    border-color: var(--teal);
    box-shadow: 0 8px 36px rgba(28,140,126,.14);
    transform: translateY(-6px);
    background: linear-gradient(160deg, #FFFFFF 0%, #F5FAF8 100%);
}

.featured-card:hover {
    transform: translateY(-12px);
    box-shadow: 0 20px 60px rgba(28,140,126,.20);
}

.fssai-tier-featured-badge {
    position: absolute;
    top: -14px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--grad-ascent);
    color: var(--ink);
    font-family: var(--font-mono);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: 5px 16px;
    border-radius: 50px;
    white-space: nowrap;
}

.fssai-tier-card-header {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
    padding-bottom: 16px;
    border-bottom: 1px dashed var(--line);
}

.fssai-tier-card-icon {
    width: 48px;
    height: 48px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.basic-icon   { background: rgba(79,174,106,.12);  color: #2E9E56; }
.state-icon   { background: var(--grad-ascent-soft); color: var(--teal-deep); }
.central-icon { background: var(--amber-pale);       color: var(--amber-deep); }

.fssai-tier-label {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--teal-deep);
    background: var(--teal-pale);
    padding: 4px 9px;
    border-radius: 50px;
    display: inline-block;
    margin-bottom: 6px;
}

.fssai-tier-card-header h3 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 19px;
    color: var(--ink);
    margin: 0;
}

.fssai-tier-turnover {
    background: var(--mist);
    border: 1px solid var(--line);
    border-radius: var(--r-sm);
    padding: 10px 14px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.fssai-tier-turnover span {
    font-family: var(--font-mono);
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--slate-2);
}

.fssai-tier-turnover strong {
    font-family: var(--font-mono);
    font-size: 13px;
    font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.fssai-tier-full-card > p {
    font-size: 13.5px;
    color: var(--slate);
    line-height: 1.6;
    margin-bottom: 18px;
    padding-bottom: 18px;
    border-bottom: 1px dashed var(--line);
}

.fssai-tier-fee {
    margin-top: 16px;
    font-size: 13px;
    color: var(--slate-2);
    font-family: var(--font-mono);
    padding-top: 14px;
    border-top: 1px dashed var(--line);
}

.fssai-tier-fee strong {
    color: var(--teal-deep);
    font-weight: 700;
}

/* Tier types note / callout */
.fssai-types-note {
    background: var(--paper);
    border: 1px solid var(--line);
    border-left: 4px solid var(--moss);
    border-radius: var(--r-md);
    padding: 20px 24px;
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.fssai-types-note-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    background: var(--moss-pale);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #2E9E56;
    font-size: 17px;
    flex-shrink: 0;
}

.fssai-types-note p {
    font-size: 14px;
    color: var(--slate);
    line-height: 1.7;
}

.fssai-types-note strong { color: var(--ink); }

.fssai-types-note a {
    color: var(--teal-deep);
    font-weight: 700;
    transition: color .2s;
}

.fssai-types-note a:hover { color: var(--teal); }

/* ---- Who Needs FSSAI — food biz type grid ---- */
.fssai-who-sec {
    padding: 100px 0;
    background: var(--paper);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.1' fill='none'/%3E%3C/svg%3E");
}

.fssai-who-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.fssai-who-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 22px 18px 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform .25s, box-shadow .25s, border-color .25s;
    position: relative;
    overflow: hidden;
}

.fssai-who-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    background: var(--grad-ascent);
    opacity: 0;
    transition: opacity .25s;
}

.fssai-who-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}

.fssai-who-card:hover::before {
    opacity: 1;
}

.fssai-who-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 17px;
    flex-shrink: 0;
}

.fssai-who-card h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 15px;
    color: var(--ink);
    margin: 0;
    line-height: 1.3;
}

.fssai-who-card p {
    font-size: 12.5px;
    color: var(--slate);
    line-height: 1.6;
    flex: 1;
}

.fssai-who-tier {
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--teal-deep);
    background: var(--teal-pale);
    padding: 4px 10px;
    border-radius: 50px;
    display: inline-block;
    align-self: flex-start;
    margin-top: auto;
}

/* ---- Responsive: FSSAI-specific ---- */
@media (max-width: 1080px) {
    .fssai-tier-cards {
        grid-template-columns: 1fr;
        max-width: 480px;
        margin-left: auto;
        margin-right: auto;
    }
    .featured-card { transform: translateY(0); }
    .fssai-who-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 720px) {
    .fssai-who-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }
    .fssai-tier-strip {
        gap: 2px;
        padding: 10px 10px;
    }
    .fssai-tier { padding: 6px 4px; }
    .fssai-tier-icon { width: 24px; height: 24px; font-size: 10px; }
    .fssai-tier-info strong { font-size: 10px; }
    .fssai-tier-detail strong { font-size: 9px; }
    .fssai-lic-fields { grid-template-columns: 1fr; gap: 8px; }
    .fssai-types-note { flex-direction: column; }
}

@media (max-width: 480px) {
    .fssai-who-grid { grid-template-columns: 1fr; }
    .fssai-card-wrap { max-width: 100%; }
    .fssai-lic-card { border-radius: var(--r-lg); }
    .fssai-tier-strip { overflow-x: auto; }
    .fssai-tier-cards { max-width: 100%; }
}

/* =====================================================
   LLP REGISTRATION PAGE — UNIQUE STYLES
   (LLP COI card, compare strip, teal-structured hero)
===================================================== */

.llp-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 65% 55% at 88% 8%,  rgba(28,140,126,.22), transparent),
        radial-gradient(ellipse 50% 55% at 5%  90%,  rgba(79,174,106,.20), transparent),
        radial-gradient(ellipse 35% 35% at 55% 50%,  rgba(28,140,126,.06), transparent);
}

.llp-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 370px;
}

/* LLP COI Card */
.llp-coi-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.38);
}

.llp-coi-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 18px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    font-family: var(--font-mono);
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: .09em;
    color: #8FAFA6;
    text-transform: uppercase;
}

.llp-coi-dots {
    display: flex;
    gap: 5px;
}
.llp-coi-dots span {
    width: 7px; height: 7px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: block;
    opacity: 0.7;
}
.llp-coi-dots span:nth-child(2) { opacity: 1; }

.llp-coi-body {
    padding: 26px 22px 22px;
    text-align: center;
}

.llp-coi-emblem {
    width: 62px; height: 62px;
    border-radius: 50%;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.12);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 14px;
    padding: 10px;
}
.llp-coi-emblem svg { width: 42px; height: 42px; }

.llp-firm-name {
    font-family: var(--font-display);
    font-size: 18px; font-weight: 600;
    color: var(--paper);
    margin-bottom: 4px;
}

.llp-firm-sub {
    font-size: 10.5px;
    color: #8FAFA6;
    font-family: var(--font-mono);
    letter-spacing: .03em;
    margin-bottom: 20px;
}

.llp-meta-row {
    display: flex;
    gap: 12px;
    justify-content: center;
}

.llp-meta-item {
    flex: 1;
    text-align: left;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-sm);
    padding: 9px 12px;
    min-width: 0;
}
.llp-meta-item span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9.5px;
    color: #6B8F87;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin-bottom: 4px;
}
.llp-meta-item strong {
    font-family: var(--font-mono);
    font-size: 11px;
    color: var(--paper);
    font-weight: 700;
}

.llp-coi-footer {
    padding: 12px 18px;
    background: rgba(79,174,106,.10);
    border-top: 1px solid rgba(79,174,106,.18);
    text-align: center;
}

/* LLP vs Pvt Ltd compare strip */
.llp-compare-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    overflow: hidden;
}

.llp-compare-col, .llp-compare-row {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 0;
}

.llp-compare-col {
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.llp-compare-col span,
.llp-compare-row span {
    padding: 9px 12px;
    font-family: var(--font-mono);
    font-size: 10.5px;
    font-weight: 700;
    color: #8FAFA6;
    letter-spacing: .04em;
    border-right: 1px solid rgba(255,255,255,.07);
    display: flex;
    align-items: center;
}
.llp-compare-col span:last-child,
.llp-compare-row span:last-child { border-right: none; }
.llp-compare-col span:nth-child(2) { color: #4DCFBE; text-align: center; justify-content: center; }
.llp-compare-col span:nth-child(3) { color: #9FBDB5; text-align: center; justify-content: center; }

.llp-compare-row { border-bottom: 1px solid rgba(255,255,255,.06); }
.llp-compare-row:last-child { border-bottom: none; }
.llp-compare-row span:first-child { font-size: 10px; font-weight: 400; color: #7FA098; }
.llp-yes    { color: var(--moss) !important; font-weight: 700 !important; justify-content: center; }
.llp-neutral{ color: #9FBDB5 !important; justify-content: center; }

@media (max-width: 480px) {
    .llp-card-wrap { max-width: 100%; }
    .llp-meta-row { flex-direction: column; }
}

/* =====================================================
   OPC REGISTRATION PAGE — UNIQUE STYLES
   (Solo founder card, OPC vs Sole Prop compare strip)
===================================================== */
.opc-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 60% 55% at 90% 5%,  rgba(221,138,58,.20), transparent),
        radial-gradient(ellipse 55% 55% at 3%  90%,  rgba(28,140,126,.24), transparent),
        radial-gradient(ellipse 40% 40% at 50% 50%,  rgba(221,138,58,.05), transparent);
}
.opc-card-wrap { display:flex; flex-direction:column; align-items:center; gap:16px; width:100%; max-width:370px; }
.opc-coi-card { width:100%; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.18); border-radius:var(--r-xl); overflow:hidden; box-shadow:0 24px 60px rgba(0,0,0,.38); }
.opc-coi-header { padding:13px 18px; background:rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.10); text-align:center; }
.opc-header-label { display:block; font-family:var(--font-mono); font-size:11px; font-weight:700; letter-spacing:.10em; text-transform:uppercase; color:#C7DCD6; margin-bottom:3px; }
.opc-header-sub { display:block; font-family:var(--font-mono); font-size:9px; color:#6B8F87; letter-spacing:.05em; }
.opc-coi-body { padding:24px 20px 20px; text-align:center; }
.opc-founder-circle { width:68px; height:68px; margin:0 auto 14px; display:flex; align-items:center; justify-content:center; }
.opc-founder-circle svg { width:68px; height:68px; }
.opc-firm-name { font-family:var(--font-display); font-size:17px; font-weight:600; color:var(--paper); margin-bottom:4px; }
.opc-firm-sub { font-size:10.5px; color:#8FAFA6; font-family:var(--font-mono); letter-spacing:.03em; margin-bottom:18px; }
.opc-meta-row { display:flex; gap:10px; justify-content:center; }
.opc-meta-item { flex:1; text-align:left; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.10); border-radius:var(--r-sm); padding:8px 12px; min-width:0; }
.opc-meta-item span { display:block; font-family:var(--font-mono); font-size:9px; color:#6B8F87; letter-spacing:.06em; text-transform:uppercase; margin-bottom:3px; }
.opc-meta-item strong { font-family:var(--font-mono); font-size:10.5px; color:var(--paper); font-weight:700; word-break:break-all; }
.opc-coi-footer { padding:12px 18px; background:rgba(79,174,106,.10); border-top:1px solid rgba(79,174,106,.18); text-align:center; }
/* OPC compare strip */
.opc-compare-strip { width:100%; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.12); border-radius:var(--r-md); overflow:hidden; }
.opc-compare-head, .opc-compare-row { display:grid; grid-template-columns:1.4fr 1fr 1fr; }
.opc-compare-head { background:rgba(255,255,255,.06); border-bottom:1px solid rgba(255,255,255,.10); }
.opc-compare-head span, .opc-compare-row span { padding:9px 12px; font-family:var(--font-mono); font-size:10.5px; font-weight:700; color:#8FAFA6; border-right:1px solid rgba(255,255,255,.07); display:flex; align-items:center; }
.opc-compare-head span:last-child, .opc-compare-row span:last-child { border-right:none; }
.opc-compare-head span:nth-child(2) { color:#4DCFBE; justify-content:center; }
.opc-compare-head span:nth-child(3) { color:#9FBDB5; justify-content:center; }
.opc-compare-row { border-bottom:1px solid rgba(255,255,255,.06); }
.opc-compare-row:last-child { border-bottom:none; }
.opc-compare-row span:first-child { font-size:10px; font-weight:400; color:#7FA098; }
.opc-yes { color:var(--moss) !important; font-weight:700 !important; justify-content:center; }
.opc-no  { color:#C06060 !important; justify-content:center; }
@media (max-width:480px) { .opc-card-wrap { max-width:100%; } .opc-meta-row { flex-direction:column; } }

/* =====================================================
   STARTUP INDIA PAGE — UNIQUE STYLES
   (DPIIT cert card, benefits unlock strip, eligibility grid,
    benefits deep-dive cards — rocket/gradient dominant)
===================================================== */

/* ---- Hero: full-gradient radial — innovation / govt. feel ---- */
.startup-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 65% 55% at 92% 5%,  rgba(221,138,58,.22), transparent),
        radial-gradient(ellipse 55% 55% at 3%  92%,  rgba(28,140,126,.26), transparent),
        radial-gradient(ellipse 40% 40% at 50% 48%,  rgba(79,174,106,.08), transparent);
}

/* ---- DPIIT Certificate Card ---- */
.startup-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 378px;
}

.startup-cert-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.40);
}

.startup-cert-header {
    padding: 14px 16px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}

.startup-cert-logo-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.startup-cert-emblem {
    width: 40px; height: 40px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    font-size: 16px;
    flex-shrink: 0;
}

.startup-cert-org { display: flex; flex-direction: column; gap: 2px; }

.startup-cert-ministry {
    font-family: var(--font-mono);
    font-size: 8px; font-weight: 700;
    letter-spacing: .09em; text-transform: uppercase;
    color: #8FAFA6; line-height: 1.3;
}

.startup-cert-scheme {
    font-family: var(--font-mono);
    font-size: 10.5px; font-weight: 700;
    color: #C7DCD6; letter-spacing: .02em;
}

.startup-cert-badge {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: var(--amber);
    background: rgba(221,138,58,.12);
    border: 1px solid rgba(221,138,58,.22);
    padding: 4px 9px;
    border-radius: 50px;
    white-space: nowrap;
    align-self: flex-start;
    flex-shrink: 0;
}

.startup-cert-body {
    padding: 18px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.startup-cert-number-row {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-sm);
    padding: 10px 14px;
    text-align: center;
}

.startup-cert-num-label {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .10em; text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 5px;
}

.startup-cert-num {
    font-family: var(--font-mono);
    font-size: 15px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    letter-spacing: .06em;
}

.startup-cert-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.startup-cert-field span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87; margin-bottom: 3px;
}

.startup-cert-field strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 11.5px;
    color: var(--paper); font-weight: 700;
}

.startup-cert-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 16px;
    background: rgba(221,138,58,.08);
    border-top: 1px solid rgba(221,138,58,.18);
}

.startup-cert-status {
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    color: var(--amber);
    display: flex; align-items: center; gap: 6px;
    letter-spacing: .03em;
}

.startup-india-rocket {
    font-size: 18px;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

/* ---- Benefits Unlock Strip ---- */
.startup-unlock-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    padding: 12px 14px;
}

.startup-unlock-label {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .09em; text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 9px;
    text-align: center;
}

.startup-unlock-chips {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 7px;
}

.startup-unlock-chip {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 8px 10px;
    border-radius: var(--r-sm);
    font-family: var(--font-mono);
    font-size: 10px;
    font-weight: 700;
    transition: background .2s;
}

.startup-unlock-chip i { font-size: 10px; flex-shrink: 0; }

.chip-tax    { background: rgba(28,140,126,.14); border: 1px solid rgba(28,140,126,.22); color: #4DCFBE; }
.chip-angel  { background: rgba(221,138,58,.12); border: 1px solid rgba(221,138,58,.20); color: var(--amber); }
.chip-patent { background: rgba(79,174,106,.12); border: 1px solid rgba(79,174,106,.20); color: var(--moss); }
.chip-tender { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.14); color: #C7DCD6; }

/* ---- Eligibility Section ---- */
.startup-eligibility-sec {
    padding: 100px 0;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.startup-elig-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 32px;
}

.startup-elig-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 24px 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform .25s, box-shadow .25s;
    position: relative;
}

.startup-elig-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow-md);
}

.must-card { border-top: 3px solid var(--teal); }
.note-card  { border-top: 3px solid var(--amber); background: linear-gradient(160deg,#FFFFFF 0%,#FFFAF5 100%); }

.startup-elig-num {
    font-family: var(--font-mono);
    font-size: 28px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    line-height: 1;
}

.startup-elig-num-free { font-size: 26px; color: var(--amber) !important; -webkit-background-clip: unset; background-clip: unset; background: none; }

.startup-elig-icon {
    width: 42px; height: 42px;
    border-radius: 12px;
    background: var(--grad-ascent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--teal-deep);
    font-size: 17px;
    flex-shrink: 0;
}

.startup-elig-icon-free {
    background: var(--amber-pale);
    color: var(--amber-deep);
}

.startup-elig-card h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 15.5px;
    color: var(--ink);
    margin: 0;
}

.startup-elig-card p {
    font-size: 13px;
    color: var(--slate);
    line-height: 1.65;
    flex: 1;
}

.startup-elig-tag {
    font-family: var(--font-mono);
    font-size: 9.5px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 50px;
    display: inline-block;
    align-self: flex-start;
    margin-top: auto;
}

.must-tag { background: var(--teal-pale); color: var(--teal-deep); }
.note-tag  { background: var(--amber-pale); color: var(--amber-deep); }

.startup-elig-note {
    background: var(--paper);
    border: 1px solid var(--line);
    border-left: 4px solid var(--teal);
    border-radius: var(--r-md);
    padding: 18px 22px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    font-size: 14px;
    color: var(--slate);
    line-height: 1.7;
}

.startup-elig-note i { color: var(--teal-deep); font-size: 16px; margin-top: 2px; flex-shrink: 0; }
.startup-elig-note a { color: var(--teal-deep); font-weight: 700; }
.startup-elig-note a:hover { color: var(--teal); }

/* ---- Benefits Deep-Dive Cards ---- */
.startup-benefits-sec {
    padding: 100px 0;
    background: var(--ink);
    position: relative;
    overflow: hidden;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.10' fill='none'/%3E%3C/svg%3E");
}

.startup-benefits-sec::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 55% 50% at 95% 5%,  rgba(221,138,58,.12), transparent),
        radial-gradient(ellipse 50% 50% at 5%  95%,  rgba(28,140,126,.18), transparent);
}

.startup-benefits-sec .svc-sec-head { position: relative; z-index: 2; }
.startup-benefits-sec .svc-sec-head .section-title { color: var(--paper); }
.startup-benefits-sec .svc-sec-head .section-sub { color: #9FBDB5; }
.startup-benefits-sec .eyebrow { color: #8FD9C8; }

.startup-benefits-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    position: relative;
    z-index: 2;
}

.startup-benefit-card {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-lg);
    padding: 26px 22px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    transition: transform .25s, border-color .25s, background .25s;
}

.startup-benefit-card:hover {
    transform: translateY(-5px);
    background: rgba(255,255,255,.07);
    border-color: rgba(255,255,255,.20);
}

.startup-benefit-card-icon {
    width: 46px; height: 46px;
    border-radius: 13px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 19px;
    flex-shrink: 0;
}

.card-tax    .startup-benefit-card-icon { background: rgba(28,140,126,.18);  color: #4DCFBE; }
.card-angel  .startup-benefit-card-icon { background: rgba(221,138,58,.18);  color: var(--amber); }
.card-patent .startup-benefit-card-icon { background: rgba(79,174,106,.18);  color: var(--moss); }
.card-tender .startup-benefit-card-icon { background: rgba(255,255,255,.08); color: #C7DCD6; }
.card-fund   .startup-benefit-card-icon { background: rgba(221,138,58,.14);  color: #E8A45A; }
.card-labour .startup-benefit-card-icon { background: rgba(28,140,126,.14);  color: #5DD9C8; }

.startup-benefit-card-num {
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87;
}

.startup-benefit-card h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 16px;
    color: var(--paper);
    margin: 0;
    line-height: 1.3;
}

.startup-benefit-card p {
    font-size: 13px;
    color: #A9C7BF;
    line-height: 1.7;
    flex: 1;
}

.startup-benefit-card-value {
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    padding-top: 10px;
    border-top: 1px dashed rgba(255,255,255,.12);
    letter-spacing: .04em;
}

/* ---- Responsive: Startup India ---- */
@media (max-width: 1080px) {
    .startup-elig-grid { grid-template-columns: repeat(2, 1fr); }
    .startup-benefits-grid { grid-template-columns: repeat(2, 1fr); }
    .startup-unlock-chips { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 720px) {
    .startup-elig-grid { grid-template-columns: 1fr; }
    .startup-benefits-grid { grid-template-columns: 1fr; }
    .startup-cert-fields { grid-template-columns: 1fr; gap: 8px; }
    .startup-elig-note { flex-direction: column; }
}

@media (max-width: 480px) {
    .startup-card-wrap { max-width: 100%; }
    .startup-cert-card { border-radius: var(--r-lg); }
    .startup-unlock-chips { grid-template-columns: 1fr 1fr; }
}

/* =====================================================
   PARTNERSHIP FIRM PAGE — UNIQUE STYLES
   (Partnership Deed card, partner chips, compare strip,
    partnership types cards, upgrade note)
===================================================== */

/* ---- Hero: warm teal — traditional business feel ---- */
.partnership-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 60% 55% at 88% 8%,  rgba(79,174,106,.20), transparent),
        radial-gradient(ellipse 55% 55% at 4%  90%,  rgba(28,140,126,.26), transparent),
        radial-gradient(ellipse 35% 35% at 52% 52%,  rgba(79,174,106,.05), transparent);
}

/* ---- Partnership Deed Card ---- */
.pship-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 375px;
}

.pship-deed-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.38);
}

/* Deed Header */
.pship-deed-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.pship-deed-stamp {
    width: 42px; height: 42px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    font-size: 17px;
    flex-shrink: 0;
}

.pship-deed-title {
    display: block;
    font-family: var(--font-mono);
    font-size: 11.5px; font-weight: 700;
    letter-spacing: .10em; text-transform: uppercase;
    color: #C7DCD6;
}

.pship-deed-sub {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    color: #6B8F87;
    letter-spacing: .05em;
    margin-top: 2px;
}

/* Deed Body */
.pship-deed-body {
    padding: 18px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.pship-firm-label {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .09em; text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: -8px;
}

.pship-firm-name {
    font-family: var(--font-display);
    font-size: 17px; font-weight: 600;
    color: var(--paper);
    line-height: 1.25;
}

/* Partner chips row */
.pship-partners-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-md);
    padding: 12px 14px;
}

.pship-partner-chip {
    display: flex;
    align-items: center;
    gap: 9px;
}

.pship-partner-avatar {
    width: 34px; height: 34px;
    border-radius: 50%;
    background: rgba(28,140,126,.25);
    border: 1.5px solid rgba(28,140,126,.4);
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    color: #4DCFBE;
    flex-shrink: 0;
}

.pship-avatar-2 {
    background: rgba(221,138,58,.20);
    border-color: rgba(221,138,58,.35);
    color: var(--amber);
}

.pship-partner-chip span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px; color: #8FAFA6;
    letter-spacing: .04em;
    text-transform: uppercase;
    margin-bottom: 2px;
}

.pship-partner-chip strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.pship-handshake-icon {
    font-size: 18px;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    flex-shrink: 0;
}

/* Deed meta fields */
.pship-deed-meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.pship-deed-meta-item span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87; margin-bottom: 3px;
}

.pship-deed-meta-item strong {
    font-family: var(--font-mono);
    font-size: 11px; color: var(--paper);
    font-weight: 700;
}

/* Deed Footer */
.pship-deed-footer {
    padding: 11px 16px;
    background: rgba(79,174,106,.08);
    border-top: 1px solid rgba(79,174,106,.18);
    text-align: center;
}

.pship-deed-status {
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    color: var(--moss);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    letter-spacing: .03em;
}

/* ---- Partnership vs LLP Compare Strip ---- */
.pship-compare-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    overflow: hidden;
}

.pship-compare-head,
.pship-compare-row {
    display: grid;
    grid-template-columns: 1.3fr 1fr 1fr;
}

.pship-compare-head {
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
}

.pship-compare-head span,
.pship-compare-row span {
    padding: 9px 12px;
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    color: #8FAFA6;
    border-right: 1px solid rgba(255,255,255,.07);
    display: flex; align-items: center;
    letter-spacing: .03em;
}

.pship-compare-head span:last-child,
.pship-compare-row span:last-child { border-right: none; }
.pship-compare-head span:nth-child(2) { color: var(--moss);  justify-content: center; }
.pship-compare-head span:nth-child(3) { color: #9FBDB5; justify-content: center; }
.pship-compare-row { border-bottom: 1px solid rgba(255,255,255,.06); }
.pship-compare-row:last-child { border-bottom: none; }
.pship-compare-row span:first-child { font-size: 9.5px; font-weight: 400; color: #7FA098; }
.pship-win     { color: var(--moss) !important; font-weight: 700 !important; justify-content: center; }
.pship-neutral { color: #9FBDB5 !important; justify-content: center; }

/* ---- Partnership Types Section ---- */
.pship-types-sec {
    padding: 100px 0;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.pship-types-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    align-items: start;
    margin-bottom: 32px;
}

.pship-type-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-xl);
    padding: 28px 24px 24px;
    position: relative;
    transition: transform .25s, box-shadow .25s;
}

.pship-type-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
}

.pship-type-featured {
    border-color: var(--teal);
    box-shadow: 0 8px 36px rgba(28,140,126,.14);
    transform: translateY(-6px);
    background: linear-gradient(160deg, #FFFFFF 0%, #F5FAF8 100%);
}

.pship-type-featured:hover {
    transform: translateY(-12px);
    box-shadow: 0 20px 60px rgba(28,140,126,.20);
}

.pship-type-badge-top {
    position: absolute;
    top: -14px; left: 50%;
    transform: translateX(-50%);
    background: var(--grad-ascent);
    color: var(--ink);
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase;
    padding: 5px 16px;
    border-radius: 50px;
    white-space: nowrap;
}

.pship-type-header {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 14px;
    padding-bottom: 16px;
    border-bottom: 1px dashed var(--line);
}

.pship-type-icon {
    width: 48px; height: 48px;
    border-radius: 13px;
    background: var(--grad-ascent-soft);
    display: flex; align-items: center; justify-content: center;
    color: var(--teal-deep);
    font-size: 20px;
    flex-shrink: 0;
}

.pship-type-icon-alt   { background: rgba(255,255,255,.06); color: #8FAFA6; border: 1px solid rgba(255,255,255,.12); }
.pship-type-icon-amber { background: var(--amber-pale); color: var(--amber-deep); }

.pship-type-card > p {
    font-size: 13.5px;
    color: var(--slate);
    line-height: 1.6;
    margin-bottom: 18px;
    padding-bottom: 18px;
    border-bottom: 1px dashed var(--line);
}

/* Upgrade note */
.pship-upgrade-note {
    background: var(--ink-soft);
    border-radius: var(--r-md);
    padding: 20px 24px;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    color: #B9CEC8;
}

.pship-upgrade-icon {
    width: 42px; height: 42px;
    border-radius: 11px;
    background: rgba(221,138,58,.15);
    border: 1px solid rgba(221,138,58,.22);
    display: flex; align-items: center; justify-content: center;
    color: var(--amber);
    font-size: 17px;
    flex-shrink: 0;
}

.pship-upgrade-note strong {
    display: block;
    font-size: 15px;
    color: var(--paper);
    font-family: var(--font-display);
    font-weight: 600;
    margin-bottom: 5px;
}

.pship-upgrade-note p {
    font-size: 13.5px;
    line-height: 1.65;
}

.pship-upgrade-note a {
    color: var(--amber);
    font-weight: 700;
    transition: color .2s;
}

.pship-upgrade-note a:hover { color: #E8A45A; }

/* ---- Responsive: Partnership ---- */
@media (max-width: 1080px) {
    .pship-types-grid {
        grid-template-columns: 1fr;
        max-width: 460px;
        margin-left: auto;
        margin-right: auto;
    }
    .pship-type-featured { transform: translateY(0); }
    .pship-upgrade-note { flex-direction: column; }
}

@media (max-width: 720px) {
    .pship-deed-meta { grid-template-columns: 1fr; gap: 8px; }
    .pship-partners-row { flex-direction: column; gap: 12px; align-items: flex-start; }
    .pship-handshake-icon { display: none; }
}

@media (max-width: 480px) {
    .pship-card-wrap { max-width: 100%; }
    .pship-deed-card { border-radius: var(--r-lg); }
    .pship-types-grid { max-width: 100%; }
}

/* =====================================================
   GST RETURN FILING PAGE — UNIQUE STYLES
   (GSTR Dashboard card, Filing Calendar strip,
    Return type cards with due dates & penalty rows)
===================================================== */

/* ---- Hero: deep teal compliance feel ---- */
.gstr-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 62% 52% at 90% 6%,  rgba(28,140,126,.24), transparent),
        radial-gradient(ellipse 52% 55% at 4%  90%,  rgba(79,174,106,.20), transparent),
        radial-gradient(ellipse 36% 36% at 52% 50%,  rgba(28,140,126,.06), transparent);
}

/* ---- GSTR Dashboard Card ---- */
.gstr-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 380px;
}

.gstr-dashboard-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.40);
}

/* Dashboard Header */
.gstr-dash-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 16px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    gap: 10px;
    flex-wrap: wrap;
}

.gstr-dash-header-left {
    display: flex;
    align-items: center;
    gap: 10px;
}

.gstr-dash-emblem {
    width: 38px; height: 38px;
    border-radius: 10px;
    background: var(--grad-ascent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--ink);
    font-size: 16px;
    flex-shrink: 0;
}

.gstr-dash-title {
    display: block;
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    letter-spacing: .09em; text-transform: uppercase;
    color: #C7DCD6;
    margin-bottom: 2px;
}

.gstr-dash-gstin {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    color: #6B8F87;
    letter-spacing: .04em;
}

.gstr-dash-period {
    font-family: var(--font-mono);
    font-size: 9.5px; font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase;
    color: var(--amber);
    background: rgba(221,138,58,.12);
    border: 1px solid rgba(221,138,58,.20);
    padding: 4px 10px;
    border-radius: 50px;
    flex-shrink: 0;
}

/* Return rows */
.gstr-dash-body {
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.gstr-return-row {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: var(--r-sm);
    padding: 9px 12px;
}

.gstr-return-info { flex: 1; min-width: 0; }

.gstr-return-info strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 11.5px; font-weight: 700;
    color: var(--paper);
    letter-spacing: .02em;
    line-height: 1.2;
}

.gstr-return-info span {
    font-family: var(--font-mono);
    font-size: 8.5px;
    color: #6B8F87;
    letter-spacing: .03em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    display: block;
}

.gstr-return-freq {
    font-family: var(--font-mono);
    font-size: 8.5px; font-weight: 700;
    color: #7FA098;
    letter-spacing: .04em;
    text-transform: uppercase;
    flex-shrink: 0;
}

.gstr-return-status {
    font-family: var(--font-mono);
    font-size: 9.5px; font-weight: 700;
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 4px 9px;
    border-radius: 50px;
    flex-shrink: 0;
    letter-spacing: .03em;
    white-space: nowrap;
}

.status-filed       { background: rgba(79,174,106,.12);  border: 1px solid rgba(79,174,106,.20);  color: var(--moss); }
.status-reconciled  { background: rgba(28,140,126,.12);  border: 1px solid rgba(28,140,126,.20);  color: #4DCFBE; }
.status-pending     { background: rgba(221,138,58,.12);  border: 1px solid rgba(221,138,58,.20);  color: var(--amber); }

/* Dashboard footer */
.gstr-dash-footer {
    display: flex;
    align-items: center;
    justify-content: space-around;
    padding: 12px 16px;
    background: rgba(255,255,255,.04);
    border-top: 1px solid rgba(255,255,255,.10);
    gap: 8px;
}

.gstr-dash-stat { text-align: center; flex: 1; }

.gstr-dash-stat strong {
    display: block;
    font-family: var(--font-mono);
    font-size: 13px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    line-height: 1.2;
    margin-bottom: 2px;
}

.gstr-itc-num { font-size: 11px !important; }

.gstr-dash-stat span {
    font-family: var(--font-mono);
    font-size: 8.5px;
    color: #6B8F87;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.gstr-dash-divider {
    width: 1px; height: 28px;
    background: rgba(255,255,255,.10);
    flex-shrink: 0;
}

/* ---- Filing Calendar Strip ---- */
.gstr-calendar-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    padding: 12px 14px;
}

.gstr-cal-label {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .10em; text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 10px;
    text-align: center;
}

.gstr-cal-items {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}

.gstr-cal-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 9px 6px;
    border-radius: var(--r-sm);
    text-align: center;
}

.cal-done     { background: rgba(79,174,106,.10); border: 1px solid rgba(79,174,106,.18); }
.cal-warning  { background: rgba(221,138,58,.10); border: 1px solid rgba(221,138,58,.18); }
.cal-upcoming { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.10); }

.gstr-cal-date {
    font-family: var(--font-mono);
    font-size: 12px; font-weight: 700;
    color: var(--paper);
    line-height: 1;
}

.gstr-cal-return {
    font-family: var(--font-mono);
    font-size: 8.5px;
    color: #8FAFA6;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.cal-done i     { color: var(--moss); font-size: 10px; }
.cal-warning i  { color: var(--amber); font-size: 10px; }
.cal-upcoming i { color: #6B8F87; font-size: 10px; }

/* ---- Return Types Section ---- */
.gstr-returns-sec {
    padding: 100px 0;
    background: var(--ink);
    position: relative;
    overflow: hidden;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.10' fill='none'/%3E%3C/svg%3E");
}

.gstr-returns-sec::before {
    content: '';
    position: absolute; inset: 0;
    background:
        radial-gradient(ellipse 55% 45% at 95% 5%, rgba(28,140,126,.14), transparent),
        radial-gradient(ellipse 45% 45% at 5% 95%, rgba(79,174,106,.12), transparent);
}

.gstr-returns-sec .svc-sec-head { position: relative; z-index: 2; }
.gstr-returns-sec .svc-sec-head .section-title { color: var(--paper); }
.gstr-returns-sec .svc-sec-head .section-sub   { color: #9FBDB5; }
.gstr-returns-sec .eyebrow { color: #8FD9C8; }

.gstr-returns-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    position: relative;
    z-index: 2;
}

.gstr-return-card {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-lg);
    padding: 24px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: transform .25s, background .25s, border-color .25s;
}

.gstr-return-card:hover {
    transform: translateY(-5px);
    background: rgba(255,255,255,.07);
    border-color: rgba(255,255,255,.18);
}

/* Left border accent per type */
.card-monthly     { border-left: 3px solid var(--teal); }
.card-auto        { border-left: 3px solid #4DCFBE; }
.card-annual      { border-left: 3px solid var(--amber); }
.card-composition { border-left: 3px solid var(--moss); }

.gstr-return-card-header {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.gstr-return-card-icon {
    width: 44px; height: 44px;
    border-radius: 12px;
    background: rgba(28,140,126,.18);
    display: flex; align-items: center; justify-content: center;
    color: #4DCFBE;
    font-size: 18px;
    flex-shrink: 0;
}

.gstr-icon-teal    { background: rgba(28,140,126,.18);  color: #4DCFBE; }
.gstr-icon-amber   { background: rgba(221,138,58,.18);  color: var(--amber); }
.gstr-icon-moss    { background: rgba(79,174,106,.18);  color: var(--moss); }

.gstr-return-card-header h3 {
    font-family: var(--font-mono);
    font-size: 17px; font-weight: 700;
    color: var(--paper);
    margin-bottom: 4px;
    letter-spacing: .02em;
}

.gstr-return-card-due {
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase;
    padding: 3px 9px;
    border-radius: 50px;
    display: inline-block;
}

.due-11      { background: rgba(28,140,126,.15);  color: #4DCFBE;  border: 1px solid rgba(28,140,126,.25); }
.due-20      { background: rgba(79,174,106,.15);  color: var(--moss); border: 1px solid rgba(79,174,106,.25); }
.due-auto    { background: rgba(255,255,255,.08); color: #9FBDB5;  border: 1px solid rgba(255,255,255,.14); }
.due-annual  { background: rgba(221,138,58,.15);  color: var(--amber); border: 1px solid rgba(221,138,58,.25); }
.due-quarterly{ background: rgba(79,174,106,.12); color: var(--moss); border: 1px solid rgba(79,174,106,.20); }

.gstr-return-card-desc {
    font-size: 13px;
    color: #A9C7BF;
    line-height: 1.7;
    flex: 1;
}

.gstr-return-card-who {
    font-size: 12px;
    color: #8FAFA6;
    line-height: 1.6;
    background: rgba(255,255,255,.04);
    border-radius: var(--r-sm);
    padding: 10px 12px;
}

.gstr-who-label {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87;
    display: block;
    margin-bottom: 4px;
}

.gstr-return-card-penalty {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 11.5px;
    color: rgba(221,138,58,.85);
    background: rgba(221,138,58,.08);
    border: 1px solid rgba(221,138,58,.15);
    border-radius: var(--r-sm);
    padding: 9px 12px;
    line-height: 1.5;
}

.gstr-return-card-penalty i { font-size: 12px; margin-top: 1px; flex-shrink: 0; }

.gstr-return-card-note {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 11.5px;
    color: rgba(28,140,126,.9);
    background: rgba(28,140,126,.08);
    border: 1px solid rgba(28,140,126,.15);
    border-radius: var(--r-sm);
    padding: 9px 12px;
    line-height: 1.5;
}

.gstr-return-card-note i { font-size: 12px; margin-top: 1px; flex-shrink: 0; }

/* ---- Responsive ---- */
@media (max-width: 1080px) {
    .gstr-returns-grid { grid-template-columns: repeat(2, 1fr); }
    .gstr-cal-items    { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 720px) {
    .gstr-returns-grid { grid-template-columns: 1fr; }
    .gstr-cal-items    { grid-template-columns: repeat(2, 1fr); gap: 6px; }
    .gstr-dash-footer  { flex-direction: column; gap: 10px; }
    .gstr-dash-divider { width: 60px; height: 1px; }
}

@media (max-width: 480px) {
    .gstr-card-wrap { max-width: 100%; }
    .gstr-dashboard-card { border-radius: var(--r-lg); }
}

/* =====================================================
   INCOME TAX RETURN PAGE — UNIQUE STYLES
   (ITR Acknowledgement card, ITR form selector strip,
    ITR form type cards with who-files / who-not)
===================================================== */

/* ---- Hero: amber-dominant — tax urgency / financial ---- */
.itr-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 65% 55% at 92% 5%,  rgba(221,138,58,.24), transparent),
        radial-gradient(ellipse 52% 55% at 3%  90%,  rgba(28,140,126,.22), transparent),
        radial-gradient(ellipse 38% 38% at 52% 50%,  rgba(221,138,58,.05), transparent);
}

/* ---- ITR Acknowledgement Card ---- */
.itr-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 378px;
}

.itr-ack-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.40);
}

/* Card Header */
.itr-ack-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 14px 16px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    gap: 10px;
    flex-wrap: wrap;
}

.itr-ack-logo-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.itr-ack-emblem {
    width: 40px; height: 40px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex; align-items: center; justify-content: center;
    color: var(--ink);
    font-size: 17px;
    flex-shrink: 0;
}

.itr-ack-dept {
    display: block;
    font-family: var(--font-mono);
    font-size: 9.5px; font-weight: 700;
    letter-spacing: .08em; text-transform: uppercase;
    color: #C7DCD6;
    margin-bottom: 2px;
}

.itr-ack-govt {
    display: block;
    font-family: var(--font-mono);
    font-size: 8.5px;
    color: #6B8F87;
    letter-spacing: .04em;
}

.itr-ack-badge {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: var(--amber);
    background: rgba(221,138,58,.12);
    border: 1px solid rgba(221,138,58,.22);
    padding: 4px 9px;
    border-radius: 50px;
    white-space: nowrap;
    align-self: flex-start;
    flex-shrink: 0;
}

/* Card Body */
.itr-ack-body {
    padding: 16px 16px 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.itr-ack-number-row {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-sm);
    padding: 10px 14px;
    text-align: center;
}

.itr-ack-num-label {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .10em; text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 5px;
}

.itr-ack-num {
    font-family: var(--font-mono);
    font-size: 13px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    letter-spacing: .04em;
    word-break: break-all;
}

.itr-ack-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.itr-ack-field span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87; margin-bottom: 3px;
}

.itr-ack-field strong {
    font-family: var(--font-mono);
    font-size: 11.5px;
    color: var(--paper); font-weight: 700;
}

.itr-form-highlight {
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
    font-size: 14px !important;
}

.itr-refund-text {
    color: var(--moss) !important;
}

/* Card Footer */
.itr-ack-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 16px;
    background: rgba(79,174,106,.08);
    border-top: 1px solid rgba(79,174,106,.18);
}

.itr-ack-status {
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    color: var(--moss);
    display: flex; align-items: center; gap: 6px;
    letter-spacing: .03em;
}

.itr-ack-efv {
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    color: rgba(79,174,106,.6);
    letter-spacing: .06em;
}

/* ---- ITR Form Selector Strip ---- */
.itr-form-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    padding: 12px 14px;
}

.itr-form-strip-label {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .10em; text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 9px;
    text-align: center;
}

.itr-form-chips {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7px;
}

.itr-form-chip {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    padding: 8px 6px;
    border-radius: var(--r-sm);
    font-family: var(--font-mono);
    font-size: 12px; font-weight: 700;
    color: #8FAFA6;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    text-align: center;
    cursor: default;
    transition: background .2s, border-color .2s, color .2s;
    line-height: 1.2;
}

.itr-form-chip span {
    font-size: 8px; font-weight: 400;
    letter-spacing: .04em; text-transform: uppercase;
    color: #6B8F87;
}

.itr-form-chip.chip-active,
.itr-form-chip:hover {
    background: rgba(221,138,58,.12);
    border-color: rgba(221,138,58,.22);
    color: var(--amber);
}

.itr-form-chip.chip-active span,
.itr-form-chip:hover span {
    color: rgba(221,138,58,.7);
}

/* ---- ITR Forms Section ---- */
.itr-forms-sec {
    padding: 100px 0;
    background: var(--mist);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.15' fill='none'/%3E%3C/svg%3E");
}

.itr-forms-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 32px;
}

.itr-form-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--r-lg);
    padding: 24px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: transform .25s, box-shadow .25s, border-color .25s;
    position: relative;
}

.itr-form-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--shadow-md);
    border-color: #BFE0D8;
}

.itr-form-featured {
    border-color: var(--teal);
    box-shadow: 0 8px 30px rgba(28,140,126,.12);
}

.itr-form-popular-badge {
    position: absolute;
    top: -13px; left: 20px;
    background: var(--grad-ascent);
    color: var(--ink);
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase;
    padding: 4px 12px;
    border-radius: 50px;
    white-space: nowrap;
}

.itr-form-card-header {
    display: flex;
    align-items: center;
    gap: 12px;
}

.itr-form-num {
    font-family: var(--font-mono);
    font-size: 22px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    line-height: 1;
    flex-shrink: 0;
}

/* Colour variation per form number */
.itr-num-2 { background: linear-gradient(90deg, #1C8C7E, #4FAE6A); -webkit-background-clip: text; background-clip: text; color: transparent; }
.itr-num-3 { background: var(--grad-ascent); -webkit-background-clip: text; background-clip: text; color: transparent; }
.itr-num-4 { background: linear-gradient(90deg, #4FAE6A, #DD8A3A); -webkit-background-clip: text; background-clip: text; color: transparent; }
.itr-num-5 { background: linear-gradient(90deg, #1C8C7E, #DD8A3A); -webkit-background-clip: text; background-clip: text; color: transparent; }
.itr-num-6 { background: linear-gradient(90deg, #DD8A3A, #AD5F1E); -webkit-background-clip: text; background-clip: text; color: transparent; }

.itr-form-tag {
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: var(--teal-deep);
    background: var(--teal-pale);
    padding: 4px 10px;
    border-radius: 50px;
}

.itr-form-card h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 15.5px;
    color: var(--ink);
    margin: 0;
    line-height: 1.3;
}

.itr-form-card > p {
    font-size: 13px;
    color: var(--slate);
    line-height: 1.65;
    flex: 1;
}

.itr-form-who, .itr-form-who-not {
    display: flex;
    flex-direction: column;
    gap: 5px;
    font-size: 12px;
    line-height: 1.4;
    padding: 10px 12px;
    border-radius: var(--r-sm);
}

.itr-form-who {
    background: var(--moss-pale);
    border: 1px solid rgba(79,174,106,.18);
    color: #1E6B3C;
}

.itr-form-who-not {
    background: rgba(180,60,40,.05);
    border: 1px solid rgba(180,60,40,.12);
    color: #8B3A2A;
}

.itr-form-who span, .itr-form-who-not span {
    display: block;
}

/* Forms note */
.itr-forms-note {
    background: var(--paper);
    border: 1px solid var(--line);
    border-left: 4px solid var(--amber);
    border-radius: var(--r-md);
    padding: 16px 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    color: var(--slate);
}

.itr-forms-note i { color: var(--amber-deep); font-size: 16px; flex-shrink: 0; }
.itr-forms-note a { color: var(--teal-deep); font-weight: 700; }
.itr-forms-note a:hover { color: var(--teal); }

/* ---- Responsive: ITR page ---- */
@media (max-width: 1080px) {
    .itr-forms-grid { grid-template-columns: repeat(2, 1fr); }
    .itr-form-chips  { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 720px) {
    .itr-forms-grid { grid-template-columns: 1fr; }
    .itr-ack-fields { grid-template-columns: 1fr; gap: 8px; }
    .itr-form-chips { grid-template-columns: repeat(3, 1fr); gap: 5px; }
    .itr-forms-note { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 480px) {
    .itr-card-wrap { max-width: 100%; }
    .itr-ack-card  { border-radius: var(--r-lg); }
    .itr-form-chips { grid-template-columns: repeat(2, 1fr); }
    .itr-form-featured { transform: none; }
}

/* =====================================================
   TDS RETURN FILING PAGE — UNIQUE STYLES
   (TDS Statement card, form selector strip,
    TDS form type cards, penalty table section)
===================================================== */

/* ---- Hero: deep institutional teal — compliance rigor ---- */
.tds-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 62% 52% at 90% 6%,  rgba(28,140,126,.26), transparent),
        radial-gradient(ellipse 52% 55% at 4%  90%,  rgba(79,174,106,.18), transparent),
        radial-gradient(ellipse 36% 36% at 50% 50%,  rgba(28,140,126,.05), transparent);
}

/* ---- TDS Statement Card ---- */
.tds-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 380px;
}

.tds-stmt-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.40);
}

.tds-stmt-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding: 13px 15px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    gap: 10px;
    flex-wrap: wrap;
}

.tds-stmt-logo-row { display: flex; align-items: flex-start; gap: 10px; }

.tds-stmt-emblem {
    width: 38px; height: 38px;
    border-radius: 10px;
    background: var(--grad-ascent);
    display: flex; align-items: center; justify-content: center;
    color: var(--ink); font-size: 16px; flex-shrink: 0;
}

.tds-stmt-dept {
    display: block;
    font-family: var(--font-mono);
    font-size: 9.5px; font-weight: 700;
    letter-spacing: .08em; text-transform: uppercase;
    color: #C7DCD6; margin-bottom: 2px;
}

.tds-stmt-sub {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    color: #6B8F87; letter-spacing: .04em;
}

.tds-stmt-quarter-badge {
    font-family: var(--font-mono);
    font-size: 9.5px; font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase;
    color: #4DCFBE;
    background: rgba(28,140,126,.14);
    border: 1px solid rgba(28,140,126,.22);
    padding: 4px 10px; border-radius: 50px;
    white-space: nowrap; flex-shrink: 0;
}

.tds-stmt-body {
    padding: 14px 15px;
    display: flex; flex-direction: column; gap: 10px;
}

.tds-stmt-tan-row {
    display: grid;
    grid-template-columns: 1.4fr 1fr 1fr;
    gap: 8px;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-sm);
    padding: 10px 12px;
}

.tds-stmt-field span {
    display: block;
    font-family: var(--font-mono);
    font-size: 8.5px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87; margin-bottom: 3px;
}

.tds-stmt-field strong {
    font-family: var(--font-mono);
    font-size: 11.5px; color: var(--paper); font-weight: 700;
}

.tds-tan-num {
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
    letter-spacing: .04em;
}

.tds-form-highlight {
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
    font-size: 15px !important;
}

.tds-deductee-rows {
    display: flex; flex-direction: column; gap: 7px;
}

.tds-deductee-row {
    display: flex;
    align-items: center;
    gap: 10px;
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.07);
    border-radius: var(--r-sm);
    padding: 8px 12px;
}

.tds-deductee-info { flex: 1; min-width: 0; }

.tds-deductee-info span {
    display: block;
    font-family: var(--font-mono);
    font-size: 8.5px; color: #8FAFA6;
    letter-spacing: .03em;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.tds-deductee-info strong {
    font-family: var(--font-mono);
    font-size: 10.5px; font-weight: 700;
    color: var(--paper);
}

.tds-rate-badge {
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    color: var(--amber);
    background: rgba(221,138,58,.12);
    border: 1px solid rgba(221,138,58,.20);
    padding: 3px 8px; border-radius: 50px;
    flex-shrink: 0;
}

.tds-row-status {
    width: 24px; height: 24px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
    font-size: 11px; flex-shrink: 0;
}

.status-filed {
    background: rgba(79,174,106,.15);
    border: 1px solid rgba(79,174,106,.25);
    color: var(--moss);
}

.tds-challan-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(28,140,126,.10);
    border: 1px solid rgba(28,140,126,.18);
    border-radius: var(--r-sm);
    padding: 8px 12px;
    gap: 8px;
}

.tds-challan-label {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87;
}

.tds-challan-status {
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    color: #4DCFBE;
    display: flex; align-items: center; gap: 5px;
}

.tds-stmt-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 11px 15px;
    background: rgba(79,174,106,.08);
    border-top: 1px solid rgba(79,174,106,.18);
}

.tds-stmt-status {
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    color: var(--moss);
    display: flex; align-items: center; gap: 6px;
    letter-spacing: .03em;
}

.tds-late-fee-zero {
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    color: rgba(79,174,106,.65);
    letter-spacing: .04em;
}

/* ---- TDS Form Selector Strip ---- */
.tds-form-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    padding: 12px 14px;
}

.tds-form-strip-label {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .09em; text-transform: uppercase;
    color: #6B8F87; margin-bottom: 10px; text-align: center;
}

.tds-form-chips {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 7px;
}

.tds-form-chip {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    padding: 9px 6px;
    border-radius: var(--r-sm);
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    cursor: default;
    transition: background .2s, border-color .2s;
    text-align: center;
}

.tds-form-chip:hover, .tds-chip-active {
    background: rgba(28,140,126,.14);
    border-color: rgba(28,140,126,.24);
}

.tds-chip-form {
    font-family: var(--font-mono);
    font-size: 12.5px; font-weight: 700;
    color: #C7DCD6; line-height: 1;
}

.tds-chip-active .tds-chip-form,
.tds-form-chip:hover .tds-chip-form { color: #4DCFBE; }

.tds-chip-desc {
    font-family: var(--font-mono);
    font-size: 7.5px; color: #6B8F87;
    letter-spacing: .04em; text-transform: uppercase;
    line-height: 1.2;
}

.tds-chip-active .tds-chip-desc,
.tds-form-chip:hover .tds-chip-desc { color: rgba(28,140,126,.7); }

/* ---- TDS Forms Section (on dark background) ---- */
.tds-forms-sec {
    padding: 100px 0;
    background: var(--ink);
    position: relative; overflow: hidden;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.10' fill='none'/%3E%3C/svg%3E");
}

.tds-forms-sec::before {
    content: '';
    position: absolute; inset: 0;
    background:
        radial-gradient(ellipse 52% 45% at 96% 4%,  rgba(28,140,126,.14), transparent),
        radial-gradient(ellipse 44% 44% at 4%  96%,  rgba(79,174,106,.10), transparent);
}

.tds-forms-sec .svc-sec-head  { position: relative; z-index: 2; }
.tds-forms-sec .section-title { color: var(--paper); }
.tds-forms-sec .section-sub   { color: #9FBDB5; }
.tds-forms-sec .eyebrow        { color: #8FD9C8; }

.tds-forms-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    position: relative; z-index: 2;
}

.tds-form-card {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-lg);
    padding: 24px 22px;
    display: flex; flex-direction: column; gap: 14px;
    transition: transform .25s, background .25s, border-color .25s;
    position: relative;
}

.tds-form-card:hover {
    transform: translateY(-5px);
    background: rgba(255,255,255,.07);
    border-color: rgba(255,255,255,.18);
}

.tds-form-featured {
    border-color: rgba(28,140,126,.35);
    background: rgba(28,140,126,.06);
    box-shadow: 0 8px 30px rgba(28,140,126,.12);
}

.tds-form-popular-badge {
    position: absolute;
    top: -13px; left: 22px;
    background: var(--grad-ascent);
    color: var(--ink);
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase;
    padding: 4px 14px; border-radius: 50px;
    white-space: nowrap;
}

.tds-form-card-top {
    display: flex;
    align-items: flex-start;
    gap: 14px;
}

.tds-form-num-badge {
    font-family: var(--font-mono);
    font-size: 20px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    line-height: 1; flex-shrink: 0;
    min-width: 54px;
}

.tds-num-24q { background: linear-gradient(90deg,#1C8C7E,#4FAE6A); -webkit-background-clip: text; background-clip: text; color: transparent; }
.tds-num-27q { background: linear-gradient(90deg,#DD8A3A,#4FAE6A); -webkit-background-clip: text; background-clip: text; color: transparent; }
.tds-num-27eq{ background: linear-gradient(90deg,#4FAE6A,#DD8A3A); -webkit-background-clip: text; background-clip: text; color: transparent; }

.tds-form-card h3 {
    font-family: var(--font-display);
    font-weight: 600; font-size: 16px;
    color: var(--paper); margin-bottom: 4px;
}

.tds-form-due-badge {
    font-family: var(--font-mono);
    font-size: 9.5px; font-weight: 700;
    letter-spacing: .05em; text-transform: uppercase;
    color: var(--amber);
    background: rgba(221,138,58,.12);
    border: 1px solid rgba(221,138,58,.20);
    padding: 3px 9px; border-radius: 50px;
    display: inline-block;
}

.tds-form-card > p {
    font-size: 13px; color: #A9C7BF; line-height: 1.7; flex: 1;
}

.tds-sections-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.tds-section-pill {
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-sm);
    padding: 8px 10px;
}

.tds-section-pill span {
    display: block;
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: 2px;
}

.tds-section-pill em {
    display: block;
    font-style: normal;
    font-size: 10px; color: #8FAFA6; line-height: 1.4;
}

.tds-cert-note {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    background: rgba(28,140,126,.10);
    border: 1px solid rgba(28,140,126,.18);
    border-radius: var(--r-sm);
    padding: 9px 12px;
    font-size: 11.5px; color: #6BBFB2; line-height: 1.5;
}

.tds-cert-note i { font-size: 12px; flex-shrink: 0; margin-top: 1px; }

/* ---- TDS Penalty Section ---- */
.tds-penalty-sec {
    padding: 100px 0;
    background: var(--ink-soft);
    position: relative; overflow: hidden;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.12' fill='none'/%3E%3C/svg%3E");
}

.tds-penalty-sec::before {
    content: '';
    position: absolute; inset: 0;
    background:
        radial-gradient(ellipse 50% 50% at 95% 5%, rgba(221,138,58,.10), transparent),
        radial-gradient(ellipse 45% 45% at 5% 95%, rgba(28,140,126,.12), transparent);
}

.tds-penalty-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    position: relative; z-index: 2;
}

.tds-penalty-card {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-lg);
    padding: 24px 20px;
    display: flex; flex-direction: column; gap: 10px;
    transition: transform .25s, background .25s;
}

.tds-penalty-card:hover {
    transform: translateY(-4px);
    background: rgba(255,255,255,.07);
}

.tds-penalty-safe {
    border-color: rgba(79,174,106,.30);
    background: rgba(79,174,106,.06) !important;
}

.tds-penalty-icon {
    width: 44px; height: 44px;
    border-radius: 12px;
    background: rgba(221,138,58,.14);
    border: 1px solid rgba(221,138,58,.22);
    display: flex; align-items: center; justify-content: center;
    color: var(--amber); font-size: 18px;
    flex-shrink: 0;
}

.tds-penalty-safe-icon {
    background: rgba(79,174,106,.16);
    border-color: rgba(79,174,106,.26);
    color: var(--moss);
}

.tds-penalty-card h4 {
    font-family: var(--font-display);
    font-weight: 600; font-size: 15.5px;
    color: var(--paper); margin: 0;
}

.tds-penalty-amount {
    font-family: var(--font-mono);
    font-size: 22px; font-weight: 700;
    color: var(--amber);
    line-height: 1;
}

.tds-penalty-zero {
    color: var(--moss) !important;
}

.tds-penalty-card p {
    font-size: 12.5px; color: #9FBDB5;
    line-height: 1.7; flex: 1;
}

/* ---- Responsive ---- */
@media (max-width: 1080px) {
    .tds-forms-grid   { grid-template-columns: 1fr; }
    .tds-penalty-grid { grid-template-columns: repeat(2, 1fr); }
    .tds-form-chips   { grid-template-columns: repeat(4, 1fr); }
    .tds-sections-grid{ grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
    .tds-forms-grid   { grid-template-columns: 1fr; }
    .tds-penalty-grid { grid-template-columns: 1fr; }
    .tds-form-chips   { grid-template-columns: repeat(2, 1fr); gap: 6px; }
    .tds-stmt-tan-row { grid-template-columns: 1fr; gap: 8px; }
    .tds-deductee-row { flex-wrap: wrap; }
}

@media (max-width: 480px) {
    .tds-card-wrap  { max-width: 100%; }
    .tds-stmt-card  { border-radius: var(--r-lg); }
    .tds-form-chips { grid-template-columns: repeat(2, 1fr); }
}

/* =====================================================
   COPYRIGHT REGISTRATION PAGE — UNIQUE STYLES
   (Copyright certificate card, work type strip,
    work category cards with examples)
===================================================== */

/* ---- Hero: moss-green dominant — creative/IP feel ---- */
.copyright-hero .svc-hero-bg {
    background-image:
        radial-gradient(ellipse 62% 55% at 90% 6%,  rgba(79,174,106,.24), transparent),
        radial-gradient(ellipse 52% 55% at 3%  90%,  rgba(28,140,126,.26), transparent),
        radial-gradient(ellipse 36% 36% at 52% 50%,  rgba(79,174,106,.06), transparent);
}

/* ---- Copyright Certificate Card ---- */
.cr-card-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    width: 100%;
    max-width: 378px;
}

.cr-cert-card {
    width: 100%;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: var(--r-xl);
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(0,0,0,.40);
}

.cr-cert-header {
    padding: 14px 16px;
    background: rgba(255,255,255,.06);
    border-bottom: 1px solid rgba(255,255,255,.10);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
}

.cr-cert-logo-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.cr-cert-emblem {
    width: 40px; height: 40px;
    border-radius: 50%;
    background: var(--grad-ascent);
    display: flex; align-items: center; justify-content: center;
    color: var(--ink);
    font-size: 18px;
    flex-shrink: 0;
}

.cr-cert-dept {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .09em; text-transform: uppercase;
    color: #C7DCD6; margin-bottom: 2px;
}

.cr-cert-act {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px;
    color: #6B8F87;
    letter-spacing: .04em;
}

.cr-cert-badge {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: var(--moss);
    background: rgba(79,174,106,.12);
    border: 1px solid rgba(79,174,106,.22);
    padding: 4px 9px;
    border-radius: 50px;
    white-space: nowrap;
    align-self: flex-start;
    flex-shrink: 0;
}

.cr-cert-body {
    padding: 18px 16px 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    text-align: center;
}

.cr-copyright-symbol {
    font-family: serif;
    font-size: 52px;
    line-height: 1;
    background: var(--grad-ascent);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    margin-bottom: -4px;
}

.cr-work-title {
    font-family: var(--font-display);
    font-size: 17px; font-weight: 600;
    color: var(--paper);
    line-height: 1.3;
}

.cr-work-category {
    font-family: var(--font-mono);
    font-size: 10px;
    color: #7FA098;
    letter-spacing: .05em;
    text-transform: uppercase;
    margin-top: -6px;
}

.cr-cert-meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    width: 100%;
    text-align: left;
}

.cr-cert-meta-item span {
    display: block;
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87; margin-bottom: 3px;
}

.cr-cert-meta-item strong {
    font-family: var(--font-mono);
    font-size: 11px;
    color: var(--paper); font-weight: 700;
}

.cr-cert-footer {
    padding: 11px 16px;
    background: rgba(79,174,106,.08);
    border-top: 1px solid rgba(79,174,106,.18);
    text-align: center;
}

.cr-cert-status {
    font-family: var(--font-mono);
    font-size: 11px; font-weight: 700;
    color: var(--moss);
    display: flex; align-items: center; justify-content: center; gap: 6px;
    letter-spacing: .03em;
}

/* ---- Work Types Strip ---- */
.cr-work-types-strip {
    width: 100%;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: var(--r-md);
    padding: 12px 14px;
}

.cr-work-strip-label {
    font-family: var(--font-mono);
    font-size: 9px; font-weight: 700;
    letter-spacing: .10em; text-transform: uppercase;
    color: #6B8F87;
    margin-bottom: 9px;
    text-align: center;
}

.cr-work-type-chips {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 7px;
}

.cr-work-chip {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 8px;
    border-radius: var(--r-sm);
    font-family: var(--font-mono);
    font-size: 10px; font-weight: 700;
    color: #8FAFA6;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    transition: background .2s, color .2s, border-color .2s;
    cursor: default;
    white-space: nowrap;
}

.cr-work-chip i { font-size: 11px; }

.cr-work-chip:hover {
    background: rgba(79,174,106,.12);
    border-color: rgba(79,174,106,.22);
    color: var(--moss);
}

/* ---- Work Categories Section ---- */
.cr-works-sec {
    padding: 100px 0;
    background: var(--ink);
    position: relative;
    overflow: hidden;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20'%3E%3Crect width='72' height='72' fill='none'/%3E%3Cpath d='M72 0 L0 0 L0 72' stroke='%23666666' stroke-width='1' stroke-opacity='0.10' fill='none'/%3E%3C/svg%3E");
}

.cr-works-sec::before {
    content: '';
    position: absolute; inset: 0;
    background:
        radial-gradient(ellipse 55% 45% at 95% 5%, rgba(79,174,106,.14), transparent),
        radial-gradient(ellipse 45% 45% at 5% 95%, rgba(28,140,126,.12), transparent);
}

.cr-works-sec .svc-sec-head      { position: relative; z-index: 2; }
.cr-works-sec .section-title     { color: var(--paper); }
.cr-works-sec .section-sub       { color: #9FBDB5; }
.cr-works-sec .eyebrow           { color: #8FD9C8; }

.cr-works-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    position: relative;
    z-index: 2;
    margin-bottom: 32px;
}

.cr-work-card {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.10);
    border-radius: var(--r-lg);
    padding: 24px 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    transition: transform .25s, background .25s, border-color .25s;
    position: relative;
}

.cr-work-card:hover {
    transform: translateY(-5px);
    background: rgba(255,255,255,.07);
    border-color: rgba(255,255,255,.18);
}

.cr-work-featured {
    border-color: rgba(79,174,106,.3);
    background: rgba(79,174,106,.05);
}

/* Top border colour per work class */
.cr-work-card { border-top: 2px solid transparent; }
.cr-work-card:nth-child(1) { border-top-color: rgba(79,174,106,.5); }
.cr-work-card:nth-child(2) { border-top-color: rgba(28,140,126,.6); }
.cr-work-card:nth-child(3) { border-top-color: rgba(221,138,58,.5); }
.cr-work-card:nth-child(4) { border-top-color: rgba(79,174,106,.4); }
.cr-work-card:nth-child(5) { border-top-color: rgba(28,140,126,.4); }
.cr-work-card:nth-child(6) { border-top-color: rgba(221,138,58,.4); }

.cr-work-card-icon {
    width: 48px; height: 48px;
    border-radius: 13px;
    display: flex; align-items: center; justify-content: center;
    font-size: 20px;
    flex-shrink: 0;
}

.cr-icon-literary { background: rgba(79,174,106,.18);  color: var(--moss); }
.cr-icon-software { background: rgba(28,140,126,.18);  color: #4DCFBE; }
.cr-icon-artistic { background: rgba(221,138,58,.18);  color: var(--amber); }
.cr-icon-musical  { background: rgba(79,174,106,.14);  color: #5DD9A0; }
.cr-icon-dramatic { background: rgba(28,140,126,.14);  color: #4DCFBE; }
.cr-icon-sound    { background: rgba(221,138,58,.14);  color: #E8A45A; }

.cr-work-card-class {
    font-family: var(--font-mono);
    font-size: 9.5px; font-weight: 700;
    letter-spacing: .07em; text-transform: uppercase;
    color: #6B8F87;
}

.cr-work-card h4 {
    font-family: var(--font-display);
    font-weight: 600;
    font-size: 16.5px;
    color: var(--paper);
    margin: 0;
    line-height: 1.3;
}

.cr-work-card > p {
    font-size: 13px;
    color: #A9C7BF;
    line-height: 1.7;
    flex: 1;
}

.cr-work-examples {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding-top: 10px;
    border-top: 1px dashed rgba(255,255,255,.10);
}

.cr-work-examples span {
    font-size: 11.5px;
    color: #8FAFA6;
    background: rgba(255,255,255,.05);
    border: 1px solid rgba(255,255,255,.08);
    padding: 4px 9px;
    border-radius: 50px;
    white-space: nowrap;
}

/* Works note */
.cr-works-note {
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.12);
    border-left: 4px solid var(--moss);
    border-radius: var(--r-md);
    padding: 18px 22px;
    display: flex;
    align-items: flex-start;
    gap: 14px;
    font-size: 14px;
    color: #A9C7BF;
    line-height: 1.7;
    position: relative;
    z-index: 2;
}

.cr-works-note i { color: var(--moss); font-size: 16px; margin-top: 2px; flex-shrink: 0; }
.cr-works-note strong { color: var(--paper); }
.cr-works-note a { color: var(--moss); font-weight: 700; transition: color .2s; }
.cr-works-note a:hover { color: #5DD9A0; }

/* ---- Responsive: Copyright ---- */
@media (max-width: 1080px) {
    .cr-works-grid { grid-template-columns: repeat(2, 1fr); }
    .cr-work-type-chips { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 720px) {
    .cr-works-grid { grid-template-columns: 1fr; }
    .cr-cert-meta  { grid-template-columns: 1fr; gap: 8px; }
    .cr-work-type-chips { grid-template-columns: repeat(2, 1fr); }
    .cr-works-note { flex-direction: column; }
}

@media (max-width: 480px) {
    .cr-card-wrap  { max-width: 100%; }
    .cr-cert-card  { border-radius: var(--r-lg); }
    .cr-work-type-chips { grid-template-columns: repeat(3, 1fr); }
}

/* =====================================================
   COPYRIGHT PAGE — OVERRIDE FIXES
   Hero right card + Work Types section forced visibility
===================================================== */

/* Force cr-cert-card dark background so text is visible */
.cr-cert-card {
    background: #16312C !important;
    border: 1px solid rgba(79,174,106,.25) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 24px 60px rgba(0,0,0,.45) !important;
    width: 100% !important;
    display: block !important;
}

.cr-cert-header {
    background: rgba(255,255,255,.08) !important;
    border-bottom: 1px solid rgba(79,174,106,.2) !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    padding: 14px 16px !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

.cr-cert-body {
    padding: 20px 18px 16px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 12px !important;
    background: #16312C !important;
}

.cr-copyright-symbol {
    font-size: 60px !important;
    line-height: 1 !important;
    background: var(--grad-ascent) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
    display: block !important;
}

.cr-work-title {
    font-family: var(--font-display) !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    line-height: 1.3 !important;
    display: block !important;
}

.cr-work-category {
    font-family: var(--font-mono) !important;
    font-size: 10px !important;
    color: #7FA098 !important;
    letter-spacing: .05em !important;
    text-transform: uppercase !important;
    display: block !important;
}

.cr-cert-meta {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 9px !important;
    width: 100% !important;
    text-align: left !important;
}

.cr-cert-meta-item {
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    border-radius: 8px !important;
    padding: 9px 12px !important;
}

.cr-cert-meta-item span {
    display: block !important;
    font-family: var(--font-mono) !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    color: #6B8F87 !important;
    margin-bottom: 3px !important;
}

.cr-cert-meta-item strong {
    font-family: var(--font-mono) !important;
    font-size: 11px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    display: block !important;
}

.cr-cert-footer {
    padding: 12px 16px !important;
    background: rgba(79,174,106,.12) !important;
    border-top: 1px solid rgba(79,174,106,.22) !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.cr-cert-status {
    font-family: var(--font-mono) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #4FAE6A !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

/* Work Types Strip */
.cr-work-types-strip {
    width: 100% !important;
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(79,174,106,.18) !important;
    border-radius: 14px !important;
    padding: 14px !important;
    display: block !important;
}

.cr-work-strip-label {
    font-family: var(--font-mono) !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: .10em !important;
    text-transform: uppercase !important;
    color: #6B8F87 !important;
    margin-bottom: 10px !important;
    text-align: center !important;
    display: block !important;
}

.cr-work-type-chips {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 7px !important;
}

.cr-work-chip {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 8px !important;
    border-radius: 8px !important;
    font-family: var(--font-mono) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #C7DCD6 !important;
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    white-space: nowrap !important;
}

/* ---- Work Types Section (id=work-types / cr-works-sec) ---- */
.cr-works-sec {
    padding: 100px 0 !important;
    background: #0E1F1C !important;
    position: relative !important;
    display: block !important;
    overflow: visible !important;
}

.cr-works-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important;
    position: relative !important;
    z-index: 10 !important;
    margin-bottom: 32px !important;
}

.cr-work-card {
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 16px !important;
    padding: 24px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    position: relative !important;
    z-index: 10 !important;
    transition: transform .25s, background .25s !important;
}

.cr-work-card:hover {
    transform: translateY(-5px) !important;
    background: rgba(255,255,255,.09) !important;
    border-color: rgba(79,174,106,.35) !important;
}

.cr-work-card-icon {
    width: 48px !important;
    height: 48px !important;
    border-radius: 13px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    flex-shrink: 0 !important;
}

.cr-icon-literary { background: rgba(79,174,106,.20) !important;  color: #4FAE6A !important; }
.cr-icon-software { background: rgba(28,140,126,.20) !important;  color: #4DCFBE !important; }
.cr-icon-artistic { background: rgba(221,138,58,.20) !important;  color: #DD8A3A !important; }
.cr-icon-musical  { background: rgba(79,174,106,.18) !important;  color: #5DD9A0 !important; }
.cr-icon-dramatic { background: rgba(28,140,126,.18) !important;  color: #4DCFBE !important; }
.cr-icon-sound    { background: rgba(221,138,58,.18) !important;  color: #E8A45A !important; }

.cr-work-card-class {
    font-family: var(--font-mono) !important;
    font-size: 9.5px !important;
    font-weight: 700 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    color: #6B8F87 !important;
    display: block !important;
}

.cr-work-card h4 {
    font-family: var(--font-display) !important;
    font-weight: 600 !important;
    font-size: 16.5px !important;
    color: #ffffff !important;
    margin: 0 !important;
    line-height: 1.3 !important;
}

.cr-work-card > p {
    font-size: 13px !important;
    color: #A9C7BF !important;
    line-height: 1.7 !important;
    flex: 1 !important;
}

.cr-work-examples {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    padding-top: 10px !important;
    border-top: 1px dashed rgba(255,255,255,.10) !important;
}

.cr-work-examples span {
    font-size: 11.5px !important;
    color: #8FAFA6 !important;
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.10) !important;
    padding: 4px 9px !important;
    border-radius: 50px !important;
    white-space: nowrap !important;
    display: inline-block !important;
}

/* Section heading on dark bg */
.cr-works-sec .section-title { color: #ffffff !important; }
.cr-works-sec .section-sub   { color: #9FBDB5 !important; }
.cr-works-sec .eyebrow       { color: #8FD9C8 !important; }
.cr-works-sec .svc-sec-head  { position: relative !important; z-index: 10 !important; }

.cr-works-note {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(79,174,106,.22) !important;
    border-left: 4px solid #4FAE6A !important;
    border-radius: 14px !important;
    padding: 18px 22px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 14px !important;
    font-size: 14px !important;
    color: #A9C7BF !important;
    line-height: 1.7 !important;
    position: relative !important;
    z-index: 10 !important;
}

.cr-works-note i      { color: #4FAE6A !important; font-size: 16px !important; margin-top: 2px !important; flex-shrink: 0 !important; }
.cr-works-note strong { color: #ffffff !important; }
.cr-works-note a      { color: #4FAE6A !important; font-weight: 700 !important; }
.cr-works-note a:hover{ color: #5DD9A0 !important; }

/* Responsive fixes */
@media (max-width: 1080px) {
    .cr-works-grid    { grid-template-columns: repeat(2, 1fr) !important; }
    .cr-cert-meta     { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 720px) {
    .cr-works-grid    { grid-template-columns: 1fr !important; }
    .cr-cert-meta     { grid-template-columns: 1fr !important; }
    .cr-work-type-chips { grid-template-columns: repeat(2, 1fr) !important; }
    .cr-works-note    { flex-direction: column !important; }
}
@media (max-width: 480px) {
    .cr-work-type-chips { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (min-width: 320px) and (max-width: 768px) { 
    .why-counter span {
      font-size: 16px;
      color: var(--slate-2);
    }
    .nav-logo img {
        height: 68px;
    }
}

.marquee{
    overflow:hidden;
    width:100%;
    background:#fff;
    padding:20px 0;
}

.marquee-content{
    display:flex;
    width:max-content;
    animation: marquee 35s linear infinite;
}

.marquee-content img{
    height:70px;
    margin:0 40px;
    flex-shrink:0;
}

@keyframes marquee{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}