/* DS INFORMÁTICA - PÁGINA SOBRE */

.ds-about-page { background:#fff; color:#172033; }

.about-hero {
    padding:64px 0;
    overflow:hidden;
    background:radial-gradient(circle at 84% 15%,rgba(21,94,239,.10),transparent 30%),
               linear-gradient(135deg,#f8fbff 0%,#fff 58%,#f4f8ff 100%);
    border-bottom:1px solid #e8edf4;
}
.about-hero-inner {
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(320px,.75fr);
    gap:clamp(40px,7vw,90px);
    align-items:center;
}
.about-eyebrow {
    display:inline-block; margin-bottom:14px; color:#155eef;
    font-size:12px; line-height:1; font-weight:900; letter-spacing:.12em;
}
.about-hero-copy h1 {
    max-width:760px; margin:0; color:#0f172a;
    font-size:clamp(38px,5vw,66px); line-height:1.04; letter-spacing:-.045em;
}
.about-hero-copy h1 span { color:#155eef; }
.about-hero-copy>p {
    max-width:680px; margin:24px 0 0; color:#5c667a;
    font-size:17px; line-height:1.75;
}
.about-hero-actions,.about-cta-actions { display:flex; flex-wrap:wrap; gap:12px; }
.about-hero-actions { margin-top:30px; }
.about-btn {
    min-height:48px; padding:0 22px; display:inline-flex; align-items:center;
    justify-content:center; border:1px solid transparent; border-radius:10px;
    font-size:14px; font-weight:800; text-decoration:none;
    transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
.about-btn:hover { transform:translateY(-1px); }
.about-btn-primary { background:#155eef; color:#fff; box-shadow:0 10px 24px rgba(21,94,239,.18); }
.about-btn-primary:hover { background:#0f50d8; }
.about-btn-secondary { border-color:#d8e0ea; background:#fff; color:#172033; }
.about-btn-secondary:hover { border-color:#b9c9e8; background:#f8fbff; }

.about-hero-panel {
    padding:34px; border:1px solid #e1e8f2; border-radius:22px;
    background:rgba(255,255,255,.92); box-shadow:0 24px 60px rgba(15,23,42,.10);
}
.about-panel-mark {
    width:62px; height:62px; margin-bottom:24px; display:grid; place-items:center;
    border-radius:16px; background:#edf4ff; color:#155eef;
}
.about-panel-mark svg { width:36px; height:36px; }
.about-hero-panel>strong { display:block; color:#0f172a; font-size:23px; line-height:1.25; }
.about-hero-panel>p { margin:13px 0 24px; color:#687286; line-height:1.7; }
.about-panel-points { display:grid; gap:10px; }
.about-panel-points span {
    position:relative; padding-left:24px; color:#354055; font-size:14px; font-weight:700;
}
.about-panel-points span:before {
    content:"✓"; position:absolute; left:0; color:#155eef; font-weight:900;
}

.about-section { padding:76px 0; }
.about-section-soft {
    background:#f7f9fc; border-top:1px solid #edf0f5; border-bottom:1px solid #edf0f5;
}
.about-story-grid {
    display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
    gap:clamp(36px,8vw,110px); align-items:start;
}
.about-section-heading h2,.about-section-title h2,.about-cta h2 {
    margin:0; color:#0f172a; letter-spacing:-.03em;
}
.about-section-heading h2 {
    max-width:470px; font-size:clamp(30px,4vw,44px); line-height:1.12;
}
.about-story-text { padding-top:25px; }
.about-story-text p {
    margin:0 0 18px; color:#5c667a; font-size:16px; line-height:1.8;
}
.about-story-text p:last-child { margin-bottom:0; }

.about-section-title { max-width:680px; margin:0 auto 38px; text-align:center; }
.about-section-title h2 { font-size:clamp(30px,4vw,42px); line-height:1.15; }
.about-section-title p { margin:13px 0 0; color:#687286; font-size:16px; }

.about-category-grid {
    display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px;
}
.about-category-card {
    min-height:230px; padding:28px 24px; border:1px solid #e2e8f0;
    border-radius:16px; background:#fff; box-shadow:0 8px 24px rgba(15,23,42,.035);
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.about-category-card:hover {
    transform:translateY(-3px); border-color:#cbd9f4; box-shadow:0 14px 34px rgba(15,23,42,.07);
}
.about-card-icon {
    width:48px; height:48px; margin-bottom:22px; display:grid; place-items:center;
    border-radius:12px; background:#edf4ff; color:#155eef; font-size:24px; font-weight:900;
}
.about-category-card h3,.about-commitment h3 { margin:0; color:#172033; font-size:18px; }
.about-category-card p {
    margin:11px 0 0; color:#6a7486; font-size:14px; line-height:1.65;
}

.about-commitment-grid {
    display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
    border-top:1px solid #e3e8ef; border-bottom:1px solid #e3e8ef;
}
.about-commitment {
    padding:30px 30px 30px 0; display:grid; grid-template-columns:52px 1fr; gap:18px;
}
.about-commitment+.about-commitment { padding-left:30px; border-left:1px solid #e3e8ef; }
.about-number { color:#155eef; font-size:13px; font-weight:900; letter-spacing:.08em; }
.about-commitment p { margin:10px 0 0; color:#687286; font-size:14px; line-height:1.7; }

.about-cta-section { padding:10px 0 78px; }
.about-cta {
    padding:clamp(34px,5vw,56px); display:grid; grid-template-columns:minmax(0,1fr) auto;
    gap:40px; align-items:center; border-radius:22px;
    background:linear-gradient(135deg,#0f172a 0%,#172d57 55%,#155eef 145%);
    box-shadow:0 22px 50px rgba(15,23,42,.14);
}
.about-eyebrow-light { color:#9fc0ff; }
.about-cta h2 {
    max-width:670px; color:#fff; font-size:clamp(28px,3.5vw,40px); line-height:1.15;
}
.about-cta p { max-width:650px; margin:13px 0 0; color:#cbd5e1; line-height:1.65; }
.about-cta-actions { justify-content:flex-end; }
.about-btn-white { background:#fff; color:#155eef; }
.about-btn-white:hover { background:#f7f9fc; }
.about-btn-outline-light {
    border-color:rgba(255,255,255,.38); color:#fff; background:rgba(255,255,255,.04);
}
.about-btn-outline-light:hover {
    border-color:rgba(255,255,255,.7); background:rgba(255,255,255,.09);
}

@media(max-width:980px) {
    .about-hero-inner { grid-template-columns:1fr; }
    .about-hero-copy { max-width:760px; }
    .about-hero-panel { max-width:720px; }
    .about-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .about-commitment-grid { grid-template-columns:1fr; }
    .about-commitment,.about-commitment+.about-commitment {
        padding:24px 0; border-left:0;
    }
    .about-commitment+.about-commitment { border-top:1px solid #e3e8ef; }
    .about-cta { grid-template-columns:1fr; }
    .about-cta-actions { justify-content:flex-start; }
}

@media(max-width:700px) {
    .about-hero { padding:42px 0 48px; }
    .about-hero-inner { gap:30px; }
    .about-hero-copy h1 { font-size:clamp(35px,10vw,48px); }
    .about-hero-copy>p { margin-top:19px; font-size:15px; }
    .about-hero-actions { display:grid; grid-template-columns:1fr; }
    .about-btn { width:100%; }
    .about-hero-panel { padding:26px 22px; border-radius:17px; }
    .about-section { padding:56px 0; }
    .about-story-grid { grid-template-columns:1fr; gap:10px; }
    .about-story-text { padding-top:12px; }
    .about-section-title { margin-bottom:28px; text-align:left; }
    .about-category-grid { grid-template-columns:1fr; }
    .about-category-card { min-height:0; }
    .about-commitment { grid-template-columns:42px 1fr; }
    .about-cta-section { padding:0 0 56px; }
    .about-cta { padding:30px 22px; gap:28px; border-radius:17px; }
    .about-cta-actions { display:grid; grid-template-columns:1fr; }
}
