/* Dusanglobal marketing design system and homepage sections */
:root {
    --marketing-container: 1320px;
    --marketing-gutter: clamp(20px, 4vw, 56px);
    --marketing-section: clamp(76px, 8vw, 118px);
    --marketing-navy: #071a3d;
    --marketing-blue: #1769f5;
    --marketing-blue-dark: #0e4dcb;
    --marketing-ink: #0b1733;
    --marketing-muted: #62708a;
    --marketing-soft: #f5f8ff;
    --marketing-border: #e5ebf5;
    --marketing-radius: 24px;
    --marketing-shadow: 0 24px 70px rgba(22, 48, 91, .12);
}

.marketing-section { position: relative; padding-block: var(--marketing-section); overflow: hidden; }
.marketing-section--compact { padding-block: clamp(48px, 5vw, 72px); }
.marketing-section--white { background: #fff; }
.marketing-section--soft { background: linear-gradient(180deg, #f7faff 0%, #f2f6fd 100%); }
.marketing-section--gradient { background: radial-gradient(circle at 85% 25%, rgba(53,123,255,.14), transparent 32%), linear-gradient(145deg,#f7faff 0%,#eef4ff 100%); }
.marketing-section--navy { background: radial-gradient(circle at 80% 20%, rgba(43,111,255,.27), transparent 30%), linear-gradient(135deg,#061630,#0b2658); color:#fff; }
.marketing-container { width: min(var(--marketing-container), calc(100% - (var(--marketing-gutter) * 2))); margin-inline: auto; }

.section-heading { max-width: 720px; }
.section-heading--center { margin-inline: auto; text-align: center; }
.section-heading__eyebrow, .trust-strip__eyebrow { margin: 0 0 16px; color: var(--marketing-blue); font-size: .77rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.section-heading__eyebrow--light { color:#80b2ff; }
.section-heading__title { margin:0; color:var(--marketing-ink); font-size:clamp(2.1rem,4vw,3.75rem); line-height:1.04; letter-spacing:-.045em; font-weight:800; }
.section-heading__description { margin:24px 0 0; color:var(--marketing-muted); font-size:clamp(1rem,1.4vw,1.16rem); line-height:1.75; }

.trust-strip { display:grid; grid-template-columns:minmax(260px,.75fr) 2.25fr; gap:clamp(40px,6vw,92px); align-items:center; }
.trust-strip__intro h2 { margin:0; color:var(--marketing-ink); font-size:clamp(1.7rem,2.6vw,2.45rem); line-height:1.12; letter-spacing:-.035em; }
.trust-strip__items { display:grid; grid-template-columns:repeat(4,1fr); }
.trust-item { min-width:0; padding:8px 24px; border-left:1px solid #dce5f3; }
.trust-item span { display:grid; width:42px; height:42px; place-items:center; margin-bottom:14px; border-radius:13px; color:var(--marketing-blue); background:#eaf2ff; font-size:1.15rem; }
.trust-item strong,.trust-item small { display:block; }
.trust-item strong { color:var(--marketing-ink); font-size:.98rem; }
.trust-item small { margin-top:5px; color:var(--marketing-muted); font-size:.82rem; }

.service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:clamp(44px,6vw,72px); }
.service-card { position:relative; display:flex; min-height:315px; flex-direction:column; padding:32px; border:1px solid var(--marketing-border); border-radius:var(--marketing-radius); background:#fff; box-shadow:0 10px 32px rgba(18,50,98,.055); transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.service-card:hover { transform:translateY(-7px); border-color:#c8d9f7; box-shadow:var(--marketing-shadow); }
.service-card__icon { display:grid; width:58px; height:58px; place-items:center; border-radius:18px; color:#fff; background:linear-gradient(145deg,#2781ff,#0e4cca); box-shadow:0 14px 28px rgba(23,105,245,.24); font-size:1.35rem; font-weight:700; }
.service-card h3 { margin:28px 0 13px; color:var(--marketing-ink); font-size:1.28rem; letter-spacing:-.025em; }
.service-card p { margin:0; color:var(--marketing-muted); line-height:1.7; font-size:.97rem; }
.service-card__link { display:flex; align-items:center; gap:8px; margin-top:auto; padding-top:26px; color:var(--marketing-blue); font-size:.91rem; font-weight:750; text-decoration:none; }
.service-card__link span { transition:transform .2s ease; }.service-card:hover .service-card__link span{transform:translateX(4px)}

.outcomes-layout { display:grid; grid-template-columns:minmax(0,.92fr) minmax(520px,1.08fr); gap:clamp(60px,8vw,120px); align-items:center; }
.outcome-list { display:grid; gap:12px; margin-top:42px; }
.outcome-list article { display:grid; grid-template-columns:52px 1fr; gap:18px; padding:19px 0; border-top:1px solid #dbe5f4; }
.outcome-list article>span { color:var(--marketing-blue); font-weight:800; font-size:.82rem; letter-spacing:.08em; }
.outcome-list h3 { margin:0 0 8px; color:var(--marketing-ink); font-size:1.05rem; }
.outcome-list p { margin:0; color:var(--marketing-muted); line-height:1.62; font-size:.94rem; }
.platform-visual { padding:19px; border:1px solid rgba(255,255,255,.8); border-radius:28px; background:rgba(255,255,255,.82); box-shadow:0 35px 90px rgba(24,64,130,.18); backdrop-filter:blur(12px); transform:rotate(1deg); }
.platform-visual__topbar { display:flex; align-items:center; gap:7px; padding:5px 5px 18px; color:#6b7890; font-size:.77rem; }
.platform-visual__topbar span { width:8px;height:8px;border-radius:50%;background:#d9e3f1}.platform-visual__topbar strong{margin-left:8px}
.platform-visual__metrics { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.platform-visual__metrics article,.platform-visual__chart,.platform-visual__status { border:1px solid #e5ebf4; border-radius:18px; background:#fff; }
.platform-visual__metrics article { padding:20px; }.platform-visual__metrics small,.platform-visual__metrics span{display:block}.platform-visual__metrics small{color:#76839b}.platform-visual__metrics strong{display:block;margin:10px 0 6px;color:var(--marketing-ink);font-size:2rem}.platform-visual .positive{color:#149458;font-size:.78rem;font-weight:700}
.platform-visual__chart { margin-top:15px; padding:20px 20px 5px; }.chart-heading{display:flex;justify-content:space-between;align-items:center;color:var(--marketing-ink)}.chart-heading small{color:#8290a6}.platform-visual__chart svg{width:100%;height:170px}
.platform-visual__status { display:flex; align-items:center; gap:14px; margin-top:15px; padding:18px; }.platform-visual__status>span{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;color:#fff;background:#20a267}.platform-visual__status strong,.platform-visual__status small{display:block}.platform-visual__status strong{color:var(--marketing-ink);font-size:.9rem}.platform-visual__status small{margin-top:4px;color:#78869c;font-size:.76rem}

.statistics-header { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:end; margin-bottom:48px; }
.statistics-header h2 { margin:0; color:#fff; font-size:clamp(2rem,3.5vw,3.4rem); letter-spacing:-.04em; }.statistics-header>p{max-width:580px;margin:0;color:#b8c7df;line-height:1.7}
.statistics-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(255,255,255,.16); }
.statistics-grid article { padding:38px 30px 6px; border-left:1px solid rgba(255,255,255,.16); }.statistics-grid article:first-child{border-left:0;padding-left:0}
.statistics-grid strong,.statistics-grid span{display:block}.statistics-grid strong{font-size:clamp(2.4rem,4vw,4rem);letter-spacing:-.055em}.statistics-grid span{max-width:170px;margin-top:11px;color:#b9c8df;line-height:1.45;font-size:.9rem}

.industries-layout { display:flex; justify-content:space-between; gap:40px; align-items:flex-end; }.text-link{display:inline-flex;gap:8px;white-space:nowrap;color:var(--marketing-blue);font-weight:750;text-decoration:none}
.industry-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:56px; }.industry-grid>a{display:grid;grid-template-columns:56px 1fr 24px;gap:20px;align-items:center;padding:28px;border:1px solid var(--marketing-border);border-radius:20px;color:inherit;text-decoration:none;transition:.25s ease}.industry-grid>a:hover{transform:translateY(-4px);border-color:#c8d9f7;box-shadow:0 18px 46px rgba(20,56,110,.1)}.industry-grid>a>span{display:grid;width:56px;height:56px;place-items:center;border-radius:17px;color:var(--marketing-blue);background:#edf4ff;font-size:1.25rem}.industry-grid h3{margin:0 0 7px;color:var(--marketing-ink);font-size:1.08rem}.industry-grid p{margin:0;color:var(--marketing-muted);line-height:1.55;font-size:.9rem}.industry-grid b{color:var(--marketing-blue)}

.homepage-cta { position:relative; display:grid; grid-template-columns:1fr auto; gap:54px; align-items:center; overflow:hidden; padding:clamp(46px,6vw,76px); border-radius:30px; color:#fff; background:linear-gradient(135deg,#0b4dd1,#1485ff); box-shadow:0 32px 80px rgba(23,105,245,.25); }
.homepage-cta__glow { position:absolute; right:-8%; top:-70%; width:420px; height:420px; border-radius:50%; background:rgba(255,255,255,.17); filter:blur(4px); }
.homepage-cta__content,.homepage-cta__actions{position:relative;z-index:1}.homepage-cta__content p{margin:0 0 14px;font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#d8e9ff}.homepage-cta h2{max-width:780px;margin:0;font-size:clamp(2rem,4vw,3.7rem);line-height:1.05;letter-spacing:-.045em}.homepage-cta__content>span{display:block;max-width:690px;margin-top:20px;color:#dbe9ff;line-height:1.65}.homepage-cta__actions{display:grid;gap:12px;min-width:215px}.marketing-button{display:flex;min-height:52px;align-items:center;justify-content:center;gap:10px;padding:0 22px;border-radius:12px;font-weight:750;text-decoration:none;transition:.2s ease}.marketing-button:hover{transform:translateY(-2px)}.marketing-button--white{color:#0d56d6;background:#fff;box-shadow:0 12px 25px rgba(0,0,0,.12)}.marketing-button--ghost-light{color:#fff;border:1px solid rgba(255,255,255,.42);background:rgba(255,255,255,.08)}

@media (max-width: 1050px){.trust-strip,.outcomes-layout{grid-template-columns:1fr}.trust-strip__items{margin-top:6px}.service-grid{grid-template-columns:repeat(2,1fr)}.outcomes-layout{gap:55px}.statistics-grid{grid-template-columns:repeat(2,1fr)}.statistics-grid article:nth-child(3){border-left:0}.industry-grid{grid-template-columns:1fr}.homepage-cta{grid-template-columns:1fr}.homepage-cta__actions{grid-template-columns:auto auto;justify-content:start}}
@media (max-width: 720px){.marketing-section{padding-block:70px}.marketing-section--compact{padding-block:48px}.marketing-container{width:calc(100% - 32px)}.trust-strip__items{grid-template-columns:1fr 1fr;gap:26px 0}.trust-item:nth-child(odd){border-left:0;padding-left:0}.service-grid{grid-template-columns:1fr}.service-card{min-height:280px}.platform-visual{padding:12px}.platform-visual__metrics{grid-template-columns:1fr}.statistics-header{grid-template-columns:1fr;gap:22px}.statistics-grid{grid-template-columns:1fr 1fr}.statistics-grid article{padding:28px 18px;border-bottom:1px solid rgba(255,255,255,.14)}.statistics-grid article:nth-child(odd){border-left:0;padding-left:0}.industries-layout{display:block}.industries-layout .text-link{margin-top:28px}.industry-grid>a{grid-template-columns:50px 1fr}.industry-grid>a>b{display:none}.homepage-cta{padding:38px 25px}.homepage-cta__actions{grid-template-columns:1fr}.homepage-cta h2{font-size:2.25rem}}
@media (prefers-reduced-motion:reduce){.service-card,.industry-grid>a,.marketing-button,.service-card__link span{transition:none}}

/* W2 exceptional homepage polish */
.service-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: radial-gradient(circle at 18% 0%, rgba(37, 99, 235, .10), transparent 34%);
    opacity: 0;
    transition: opacity .25s ease;
    pointer-events: none;
}
.service-card:hover::before { opacity: 1; }
.service-card__icon svg { width: 27px; height: 27px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.service-card__content,.service-card__link,.service-card__icon { position: relative; z-index: 1; }

.partnership-section { overflow: visible; }
.partnership-layout { display:grid; grid-template-columns:minmax(300px,.72fr) minmax(540px,1.28fr); gap:clamp(64px,9vw,136px); align-items:start; }
.partnership-copy { position:sticky; top:128px; }
.partnership-copy .text-link { margin-top:32px; }
.partnership-steps { position:relative; display:grid; gap:0; }
.partnership-steps::before { content:""; position:absolute; left:27px; top:32px; bottom:32px; width:1px; background:linear-gradient(#a9c8ff,#dbe7f8); }
.partnership-steps article { position:relative; display:grid; grid-template-columns:56px 1fr; gap:24px; padding:0 0 46px; }
.partnership-steps article:last-child { padding-bottom:0; }
.partnership-steps article>span { position:relative; z-index:1; display:grid; width:56px; height:56px; place-items:center; border:1px solid #cfe0fa; border-radius:18px; color:var(--marketing-blue); background:#fff; box-shadow:0 12px 30px rgba(22,63,127,.10); font-size:.76rem; font-weight:850; letter-spacing:.08em; }
.partnership-steps article div { padding:5px 0 0; }
.partnership-steps h3 { margin:0 0 10px; color:var(--marketing-ink); font-size:1.25rem; letter-spacing:-.025em; }
.partnership-steps p { max-width:620px; margin:0; color:var(--marketing-muted); line-height:1.72; }

.marketing-section--white + .marketing-section--white { border-top:1px solid rgba(226,233,244,.72); }
.industry-grid>a, .service-card { isolation:isolate; }
.industry-grid>a::after { content:""; position:absolute; inset:auto 20px 0; height:3px; border-radius:3px 3px 0 0; background:linear-gradient(90deg,var(--marketing-blue),#64a4ff); transform:scaleX(0); transform-origin:left; transition:transform .25s ease; }
.industry-grid>a { position:relative; overflow:hidden; }
.industry-grid>a:hover::after { transform:scaleX(1); }

@media (max-width:1050px){
    .partnership-layout{grid-template-columns:1fr;gap:52px}
    .partnership-copy{position:static}
}
@media (max-width:720px){
    .partnership-steps article{grid-template-columns:48px 1fr;gap:18px;padding-bottom:36px}
    .partnership-steps article>span{width:48px;height:48px;border-radius:15px}
    .partnership-steps::before{left:23px}
}
