/* #LP-A ポイント3 内定実績 */
#point3 {
    background: url("../../assets/images/lp-a/point3_bg_new.webp") center / cover no-repeat;
    position: relative;
    overflow: hidden;
    z-index: 1;
    /* Common .point-detail defaults (grid, gap) will handle stacking */
}

/* Remove text width constraints */
#point3 .point-detail__head,
#point3 .offer-text {
    position: relative;
    z-index: 2;
    max-width: 100%;
    width: 100%;
}

/* Image box: Standard block flow */
/* Image box: Extended to right with fade */
.point3-insert-box {
    position: relative;
    width: 104vw;
    max-width: none;
    margin: 0 -4vw 0 auto;
    /* Align right, negate parent padding */
    z-index: 1;
    opacity: 0.8;

    /* Fade Top, Bottom, Left */
    -webkit-mask-image:
        linear-gradient(to right, transparent 0%, black 10%),
        linear-gradient(to bottom, transparent 0%, black 10%, black 90%, transparent 100%);
    mask-image:
        linear-gradient(to right, transparent 0%, black 10%),
        linear-gradient(to bottom, transparent 0%, black 10%, black 90%, transparent 100%);
    -webkit-mask-composite: source-in;
    mask-composite: intersect;
}

.point3-insert-box img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 2.13vw 0 0 2.13vw;
    /* Remove rounding on right edge */
    box-shadow: none;
    /* Remove shadow as it gets cut by mask */
}

.offer-box {
    border-radius: 5.33vw;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
    max-width: 100%;
}

.offer-box img {
    display: block;
    width: 100%;
    height: auto;
}

.offer-text {
    max-width: 100%;
    width: 100%;
    margin: 0 auto;
    font-size: 4vw;
    line-height: 1.8;
    color: var(--text);
    text-align: center;
}

.offer-text p {
    margin-bottom: 2em;
}

/* Separated styles for mixed usage */
.offer-line {
    background: linear-gradient(transparent 60%, rgba(197, 160, 89, 0.4) 60%);
}

.offer-strong {
    font-weight: 700;
    color: var(--text);
    font-size: 1.2em;
}