/* Insurance industry page – styles moved out of inline style="" attributes.
   Every rule is scoped under .ind26 so it keeps priority over general theme rules. */

/* ---------- Hero ---------- */
.ind26 .ins-hero-img-pos {
    object-position:55% center;
}

/* ---------- Shared section styles ---------- */
.ind26 .ins-sec-white {
    background:#fff;
    padding:88px 24px;
    position:relative;
    overflow:hidden;
}

.ind26 .ins-sec-tint {
    background:#F4F7FB;
    padding:88px 24px;
    position:relative;
    overflow:hidden;
}

.ind26 .ins-sec-eyebrow {
    display:flex;
    align-items:center;
    gap:12px;
}

.ind26 .ins-sec-eyebrow-line {
    width:28px;
    height:3px;
    background:#23a58b;
    border-radius:2px;
}

.ind26 .ins-sec-eyebrow-text {
    font-family:'Archivo',sans-serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:.16em;
    color:#1c8d76;
}

.ind26 .ins-sec-title {
    font-family:'Archivo',sans-serif;
    font-size:clamp(28px,3.4vw,40px);
    line-height:1.15;
    font-weight:800;
    letter-spacing:-.02em;
    color:#14243F;
    text-wrap:balance;
}

.ind26 .ins-sec-text {
    font-size:16px;
    line-height:1.7;
    color:#3F4E68;
    text-wrap:pretty;
}

.ind26 .ins-sec-strong {
    color:#14243F;
}

.ind26 .ins-col-18 {
    display:flex;
    flex-direction:column;
    gap:18px;
}

.ind26 .ins-sec-lead {
    font-family:'Archivo',sans-serif;
    font-size:15px;
    font-weight:700;
    color:#14243F;
}

.ind26 .ins-card-text {
    font-size:15px;
    line-height:1.55;
    color:#3F4E68;
}

.ind26 .ins-dots {
    display:flex;
    gap:6px;
}

.ind26 .ins-dot-1 {
    width:8px;
    height:8px;
    border-radius:50%;
    background:#23a58b;
}

.ind26 .ins-dot-2 {
    width:8px;
    height:8px;
    border-radius:50%;
    background:#46c5ab;
}

.ind26 .ins-dot-3 {
    width:8px;
    height:8px;
    border-radius:50%;
    background:#7FD9C4;
}

/* ---------- Why 360factors for insurers ---------- */
.ind26 .ins-why-glow {
    position:absolute;
    top:-120px;
    right:-120px;
    width:420px;
    height:420px;
    border-radius:50%;
    background:radial-gradient(circle,#E3F4EF 0%,rgba(227,244,239,0) 70%);
}

.ind26 .ins-why-grid {
    max-width:1200px;
    margin:0 auto;
    position:relative;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));
    gap:56px;
    align-items:start;
}

.ind26 .ins-why-copy {
    display:flex;
    flex-direction:column;
    gap:20px;
}

.ind26 .ins-why-pull {
    border-left:3px solid #23a58b;
    padding:4px 0 4px 18px;
    font-family:'Archivo',sans-serif;
    font-size:18px;
    line-height:1.5;
    font-weight:600;
    color:#14243F;
    text-wrap:pretty;
}

.ind26 .ins-why-card {
    background:#14243F;
    border-radius:20px;
    padding:36px 32px;
    display:flex;
    flex-direction:column;
    gap:6px;
    box-shadow:0 24px 60px -24px rgba(20,36,63,.45);
    position:relative;
}

.ind26 .ins-why-card-head {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding-bottom:18px;
    border-bottom:1px solid rgba(255,255,255,.12);
    margin-bottom:6px;
}

.ind26 .ins-why-card-label {
    font-family:'Archivo',sans-serif;
    font-size:12px;
    font-weight:700;
    letter-spacing:.16em;
    color:#7FD9C4;
}

.ind26 .ins-why-item {
    display:flex;
    gap:16px;
    align-items:flex-start;
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.08);
}

.ind26 .ins-why-item-last {
    display:flex;
    gap:16px;
    align-items:flex-start;
    padding:18px 0 0;
}

.ind26 .ins-why-check {
    width:36px;
    height:36px;
    border-radius:10px;
    background:#23a58b;
    color:#fff;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    font-weight:700;
}

.ind26 .ins-why-item-body {
    display:flex;
    flex-direction:column;
    gap:6px;
}

.ind26 .ins-why-item-title {
    font-family:'Archivo',sans-serif;
    font-size:18px;
    font-weight:700;
    color:#fff;
}

.ind26 .ins-why-item-text {
    font-size:15px;
    line-height:1.6;
    color:#C6D1E2;
}

/* ---------- Industry challenges ---------- */
.ind26 .ins-chal-glow {
    position:absolute;
    top:-140px;
    right:-140px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:radial-gradient(circle,#E3F4EF 0%,rgba(227,244,239,0) 70%);
}

.ind26 .ins-chal-ring {
    position:absolute;
    bottom:-40px;
    left:-40px;
    width:140px;
    height:140px;
    border-radius:50%;
    border:2px dashed #46c5ab;
    opacity:.5;
}

.ind26 .ins-chal-inner {
    max-width:1200px;
    margin:0 auto;
    position:relative;
    display:flex;
    flex-direction:column;
    gap:40px;
}

.ind26 .ins-chal-head {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));
    gap:24px 56px;
    align-items:end;
}

.ind26 .ins-chal-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));
    gap:16px;
}

.ind26 .ins-chal-card {
    position:relative;
    display:flex;
    flex-direction:column;
    gap:16px;
    background:#fff;
    border:1px solid #E1E8F0;
    border-radius:16px;
    padding:24px 20px;
    box-shadow:0 18px 40px -28px rgba(20,36,63,.35);
    overflow:hidden;
}

.ind26 .ins-chal-card-bar {
    position:absolute;
    top:0;
    left:20px;
    right:20px;
    height:3px;
    background:linear-gradient(90deg,#23a58b 0%,#46c5ab 100%);
    border-radius:0 0 3px 3px;
}

.ind26 .ins-chal-icon {
    width:44px;
    height:44px;
    border-radius:12px;
    background:#E3F4EF;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
}

/* ---------- Predict360 for insurers ---------- */
.ind26 .ins-p360-glow {
    position:absolute;
    bottom:-160px;
    left:-140px;
    width:460px;
    height:460px;
    border-radius:50%;
    background:radial-gradient(circle,#E3F4EF 0%,rgba(227,244,239,0) 70%);
}

.ind26 .ins-p360-grid {
    max-width:1200px;
    margin:0 auto;
    position:relative;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr));
    gap:56px;
    align-items:start;
}

.ind26 .ins-p360-lead {
    font-family:'Archivo',sans-serif;
    font-size:15px;
    font-weight:700;
    color:#14243F;
    margin-top:4px;
}

.ind26 .ins-p360-list {
    display:flex;
    flex-direction:column;
    border-top:1px solid #E1E8F0;
}

.ind26 .ins-p360-item {
    display:flex;
    gap:16px;
    align-items:flex-start;
    padding:16px 0;
    border-bottom:1px solid #E1E8F0;
}

.ind26 .ins-p360-check {
    width:28px;
    height:28px;
    border-radius:50%;
    background:#23a58b;
    color:#fff;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:800;
}

.ind26 .ins-p360-item-text {
    font-size:15px;
    line-height:1.6;
    color:#3F4E68;
}

.ind26 .ins-p360-visual {
    position:relative;
    padding:28px 0 28px 28px;
    align-self:center;
}

.ind26 .ins-p360-visual-bg {
    position:absolute;
    top:0;
    right:28px;
    bottom:0;
    left:0;
    background:#14243F;
    border-radius:24px;
}

.ind26 .ins-p360-visual-dots {
    position:absolute;
    top:18px;
    right:46px;
    display:flex;
    gap:6px;
}

.ind26 .ins-p360-img {
    position:relative;
    display:block;
    width:100%;
    height:auto;
    border-radius:18px;
    margin-top:20px;
    box-shadow:0 30px 60px -24px rgba(20,36,63,.55);
}

/* ---------- Ask Kaia for insurers ---------- */
.ind26 .ins-kaia-inner {
    max-width:1200px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    gap:48px;
}

.ind26 .ins-kaia-top {
    display:flex;
    flex-wrap:wrap;
    gap:56px;
    align-items:flex-start;
}

.ind26 .ins-kaia-copy {
    flex:1 1 360px;
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:18px;
}

.ind26 .ins-kaia-list-col {
    flex:1.3 1 480px;
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:14px;
}

.ind26 .ins-kaia-list {
    display:flex;
    flex-direction:column;
    gap:10px;
}

.ind26 .ins-kaia-item {
    display:flex;
    gap:14px;
    align-items:flex-start;
    background:#fff;
    border:1px solid #E1E8F0;
    border-radius:12px;
    padding:14px 16px;
}

.ind26 .ins-kaia-check {
    width:26px;
    height:26px;
    border-radius:8px;
    background:#E3F4EF;
    color:#1c8d76;
    flex-shrink:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:14px;
    font-weight:800;
}

.ind26 .ins-kaia-visual {
    position:relative;
    padding:28px 28px 0;
}

.ind26 .ins-kaia-visual-bg {
    position:absolute;
    top:0;
    right:0;
    bottom:48px;
    left:0;
    background:linear-gradient(135deg,#23a58b 0%,#46c5ab 100%);
    border-radius:24px;
    opacity:.14;
}

.ind26 .ins-kaia-ring {
    position:absolute;
    top:-10px;
    right:-10px;
    width:90px;
    height:90px;
    border-radius:50%;
    border:2px dashed #46c5ab;
    opacity:.6;
}

.ind26 .ins-kaia-img {
    position:relative;
    display:block;
    width:100%;
    height:auto;
    border-radius:18px;
    box-shadow:0 30px 60px -24px rgba(20,36,63,.55);
}

/* ---------- Sticky CTA bar (matches the ERM page layout) ---------- */
.ind26 .ind26-sticky {
    background:#13294B;
    padding:14px 24px;
}

.ind26 .ind26-sticky-inner {
    width:100%;
    max-width:1200px;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}

.ind26 .ind26-sticky-copy {
    display:flex;
    flex-direction:column;
    gap:4px;
    min-width:0;
}

.ind26 .ind26-sticky-copy strong {
    font-family:'Archivo',sans-serif;
    font-size:20px;
    font-weight:700;
    line-height:1.25;
    color:#fff;
}

.ind26 .ind26-sticky-copy span {
    font-size:13px;
    line-height:1.5;
    color:#A9B8CF;
}

.ind26 .ind26-sticky-actions {
    flex-shrink:0;
}

@media (max-width:640px) {
    .ind26 .ind26-sticky-copy strong {
        font-size:16px;
    }
    .ind26 .ind26-sticky-copy span {
        display:none;
    }
}