/* Dedicated industry product pages — styled to match the Travel Booking Portal */
.oi-industry-hero {
    overflow: hidden;
    background: #eaf0e9;
    color: #1b3029;
}
.oi-industry-hero-grid {
    display: grid;
    grid-template-columns: 1.02fr .98fr;
    align-items: center;
    gap: 65px;
    padding-top: 58px;
    padding-bottom: 65px;
}
.oi-industry-hero-copy { max-width: 650px; }
.oi-industry-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 30px;
    color: #64796d;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}
.oi-industry-back:hover { color: #254d38; }
.oi-industry-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #5d8069;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}
.oi-industry-eyebrow-dark { color: #5b8067; }
.oi-industry-hero h1,
.oi-industry-intro-grid h2,
.oi-industry-section-heading h2,
.oi-industry-approach-grid h2,
.oi-industry-cta h2,
.oi-industry-related-heading h2 {
    font-family: var(--oi-display, 'Manrope', sans-serif);
    font-weight: 750;
    letter-spacing: -.065em;
    line-height: 1.08;
}
.oi-industry-hero h1 {
    max-width: 650px;
    margin: 22px 0 20px;
    font-size: clamp(44px, 5.2vw, 68px);
    color: #1b3029;
}
.oi-industry-hero-copy > p,
.oi-industry-intro-copy > p,
.oi-industry-approach-grid > div > p,
.oi-industry-cta p {
    color: #64766d;
    font-size: 13px;
    line-height: 1.9;
}
.oi-industry-hero-copy > p { max-width: 610px; font-size: 15px; }
.oi-industry-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.oi-industry-btn {
    display: inline-flex;
    min-height: 46px;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 13px 18px;
    border-radius: 7px;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none;
    transition: transform .2s, background .2s;
}
.oi-industry-btn:hover { transform: translateY(-2px); }
.oi-industry-btn-primary { background: #203b30; color: #fff; }
.oi-industry-btn-primary:hover { background: #315b45; color: #fff; }
.oi-industry-btn-outline { border: 1px solid #b7c8ba; color: #314b3d; }
.oi-industry-btn-outline:hover { background: #fff; color: #203b30; }
.oi-industry-proof { display: flex; gap: 8px; align-items: center; margin-top: 25px; color: #64766d; font-size: 11px; }
.oi-industry-proof i { color: #658b6b; font-size: 16px; }
.oi-industry-hero-visual { position: relative; min-width: 0; padding: 0 15px 15px 0; }
.oi-industry-hero-visual > img {
    display: block;
    width: 100%;
    height: 520px;
    object-fit: cover;
    border-radius: 180px 180px 18px 18px;
    box-shadow: 0 25px 65px #1c382b25;
}
.oi-industry-image-caption {
    position: absolute;
    right: -10px;
    bottom: 38px;
    display: flex;
    align-items: center;
    gap: 11px;
    max-width: calc(100% - 5px);
    padding: 13px 16px;
    border: 1px solid #e5ebe4;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 15px 35px #20392b18;
}
.oi-industry-image-caption > span { display: grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border-radius: 10px; background: #eaf1e8; color: #4f795b; font-size: 17px; }
.oi-industry-image-caption small, .oi-industry-image-caption strong { display: block; }
.oi-industry-image-caption small { color: #839187; font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.oi-industry-image-caption strong { margin-top: 4px; color: #253b30; font-size: 12px; }
.oi-industry-intro-section, .oi-industry-capabilities-section, .oi-industry-approach-section, .oi-industry-related-section { padding: 95px 0; }
.oi-industry-intro-grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 85px; align-items: start; }
.oi-industry-intro-grid h2, .oi-industry-approach-grid h2 { margin: 18px 0 0; color: #20362b; font-size: clamp(34px, 4vw, 49px); }
.oi-industry-intro-grid h2 em, .oi-industry-approach-grid h2 em { color: #668c6c; font-style: normal; }
.oi-industry-intro-copy > p { margin: 0 0 24px; }
.oi-industry-audience { display: flex; align-items: center; gap: 13px; padding: 15px; border: 1px solid #e1e8df; border-radius: 10px; background: #f4f6f1; }
.oi-industry-audience > i { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 10px; background: #e2ecdf; color: #52775b; font-size: 19px; }
.oi-industry-audience small, .oi-industry-audience strong { display: block; }
.oi-industry-audience small { color: #7a8b80; font-size: 9px; font-weight: 800; letter-spacing: .12em; }
.oi-industry-audience strong { margin-top: 4px; color: #293f32; font-size: 12px; }
.oi-industry-outcomes-section { padding: 90px 0 100px; background: #f4f6f1; }
.oi-industry-section-heading { max-width: 720px; margin: 0 auto 42px; text-align: center; }
.oi-industry-section-heading h2 { margin: 17px 0 13px; color: #20362b; font-size: clamp(36px, 4vw, 51px); }
.oi-industry-section-heading > p { margin: 0; color: #6b7a71; font-size: 13px; line-height: 1.8; }
.oi-industry-outcomes-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.oi-industry-outcome-card { position: relative; min-width: 0; padding: 27px; border: 1px solid #e0e7df; border-radius: 14px; background: #fff; }
.oi-industry-outcome-icon { display: grid; width: 44px; height: 44px; place-items: center; margin-bottom: 25px; border-radius: 11px; background: #eaf1e8; color: #52775b; font-size: 18px; }
.oi-industry-outcome-number { position: absolute; top: 30px; right: 25px; color: #a1b3a1; font-size: 11px; font-weight: 800; }
.oi-industry-outcome-card h3 { margin: 0 0 10px; color: #263d30; font-family: var(--oi-display, 'Manrope', sans-serif); font-size: 19px; font-weight: 750; }
.oi-industry-outcome-card p { margin: 0; color: #718078; font-size: 12px; line-height: 1.8; }
.oi-industry-section-heading-wide { max-width: 800px; margin-bottom: 55px; }
.oi-industry-capabilities { display: grid; gap: 70px; }
.oi-industry-capability { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 70px; }
.oi-industry-capability-reverse .oi-industry-capability-image { order: 2; }
.oi-industry-capability-image { position: relative; min-width: 0; }
.oi-industry-capability-image img { display: block; width: 100%; height: 360px; object-fit: cover; border-radius: 16px; }
.oi-industry-capability-image > span { position: absolute; bottom: 15px; left: 15px; display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid #ffffff50; border-radius: 12px; background: #20372e; color: #fff; font-size: 11px; font-weight: 800; }
.oi-industry-capability-copy { min-width: 0; }
.oi-industry-capability-kicker { color: #68896c; font-size: 9px; font-weight: 850; letter-spacing: .15em; }
.oi-industry-capability-copy h3 { margin: 13px 0 13px; color: #20362b; font-family: var(--oi-display, 'Manrope', sans-serif); font-size: clamp(25px, 2.5vw, 32px); font-weight: 750; letter-spacing: -.04em; line-height: 1.15; }
.oi-industry-capability-copy > p { margin: 0 0 17px; color: #6b7a71; font-size: 12px; line-height: 1.9; }
.oi-industry-capability-copy ul { margin: 0; padding: 0; list-style: none; }
.oi-industry-capability-copy li { display: flex; gap: 10px; padding: 10px 0; border-top: 1px solid #e7ece5; color: #64756b; font-size: 11px; line-height: 1.7; }
.oi-industry-capability-copy li i { flex: 0 0 auto; color: #658b6b; font-size: 15px; }
.oi-industry-approach-section { background: #1b3029; color: #fff; }
.oi-industry-approach-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; align-items: start; }
.oi-industry-approach-grid .oi-industry-eyebrow, .oi-industry-cta .oi-industry-eyebrow { color: #b8cdb7; }
.oi-industry-approach-grid h2 { color: #fff; }
.oi-industry-approach-grid h2 em { color: #c5dda9; }
.oi-industry-approach-grid > div > p { margin: 20px 0 0; color: #bdcbc1; }
.oi-industry-text-link { display: inline-flex; align-items: center; gap: 10px; margin-top: 15px; color: #c5dda9; font-size: 11px; font-weight: 800; text-decoration: none; }
.oi-industry-text-link:hover { color: #fff; }
.oi-industry-approach-steps { border-top: 1px solid #ffffff25; }
.oi-industry-approach-steps article { display: flex; gap: 18px; padding: 22px 0; border-bottom: 1px solid #ffffff25; }
.oi-industry-approach-steps article > span { display: grid; width: 43px; height: 43px; flex: 0 0 43px; place-items: center; border: 1px solid #ffffff30; border-radius: 11px; color: #c5dda9; font-size: 11px; font-weight: 800; }
.oi-industry-approach-steps h3 { margin: 2px 0 6px; color: #fff; font-family: var(--oi-display, 'Manrope', sans-serif); font-size: 17px; font-weight: 750; }
.oi-industry-approach-steps p { margin: 0; color: #c1cec5; font-size: 12px; line-height: 1.75; }
.oi-industry-cta-section { padding: 65px 0; background: #f4f6f1; }
.oi-industry-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; padding: 35px; border: 1px solid #e0e7df; border-radius: 15px; background: #fff; }
.oi-industry-cta h2 { margin: 13px 0 10px; color: #20362b; font-size: clamp(28px, 3vw, 38px); }
.oi-industry-cta p { max-width: 700px; margin: 0; }
.oi-industry-related-heading { display: flex; align-items: end; justify-content: space-between; gap: 25px; margin-bottom: 25px; }
.oi-industry-related-heading h2 { margin: 10px 0 0; color: #20362b; font-size: clamp(29px, 3vw, 40px); }
.oi-industry-related-heading > a { color: #456f52; font-size: 11px; font-weight: 800; text-decoration: none; }
.oi-industry-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 17px; }
.oi-industry-related-card { display: flex; min-width: 0; gap: 13px; align-items: center; padding: 12px; border: 1px solid #e1e8df; border-radius: 12px; background: #fff; text-decoration: none; }
.oi-industry-related-card > img { width: 84px; height: 84px; flex: 0 0 84px; object-fit: cover; border-radius: 8px; }
.oi-industry-related-card > span, .oi-industry-related-card small, .oi-industry-related-card strong, .oi-industry-related-card b { display: block; }
.oi-industry-related-card small { color: #728276; font-size: 9px; }
.oi-industry-related-card strong { margin: 5px 0 8px; color: #243b2e; font-size: 12px; line-height: 1.45; }
.oi-industry-related-card b { color: #54795c; font-size: 10px; }
@media (max-width: 991px) {
    .oi-industry-hero-grid { grid-template-columns: 1fr 1fr; gap: 35px; }
    .oi-industry-hero-visual > img { height: 430px; }
    .oi-industry-intro-grid, .oi-industry-approach-grid { gap: 45px; }
    .oi-industry-capability { gap: 35px; }
    .oi-industry-capability-image img { height: 320px; }
    .oi-industry-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .oi-industry-hero-grid, .oi-industry-intro-grid, .oi-industry-capability, .oi-industry-approach-grid { grid-template-columns: 1fr; gap: 30px; }
    .oi-industry-hero-grid { padding-top: 35px; padding-bottom: 45px; }
    .oi-industry-hero h1 { font-size: clamp(38px, 11vw, 52px); }
    .oi-industry-hero-visual { padding-right: 7px; }
    .oi-industry-hero-visual > img { height: 390px; border-radius: 145px 145px 16px 16px; }
    .oi-industry-image-caption { right: 0; bottom: 25px; }
    .oi-industry-intro-section, .oi-industry-capabilities-section, .oi-industry-approach-section, .oi-industry-related-section { padding: 65px 0; }
    .oi-industry-outcomes-section { padding: 65px 0; }
    .oi-industry-outcomes-grid { grid-template-columns: 1fr; gap: 13px; }
    .oi-industry-capabilities { gap: 45px; }
    .oi-industry-capability-reverse .oi-industry-capability-image { order: 0; }
    .oi-industry-capability-image img { height: 280px; }
    .oi-industry-cta { align-items: flex-start; flex-direction: column; padding: 25px; }
    .oi-industry-related-heading { align-items: flex-start; flex-direction: column; }
    .oi-industry-related-grid { grid-template-columns: 1fr; }
}
