/* =============================
   for-insured.css — For Insured 전용
============================= */


/* =========================================

    ⭐ Hero Section
    
========================================= */


/* 3장 전체 래퍼 */
.hero--insured .hero__visual--triplet {
  max-width: 1120px;
  margin: 40px auto 0;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 24px;
}

/* 개별 폰 이미지 – 기본(PC) 값
   ※ 전역 img 스타일을 덮기 위해 셀렉터를 더 구체적으로 + !important */
.hero--insured .hero__visual--triplet .hero__image--phone {
  display: block;
  width: 260px !important;
  max-width: 260px !important;
  height: auto;
}


/* ============ PC(1024~) ============ */
@media (min-width: 1024px) {

  .hero--insured {
    position: relative;
    overflow: visible;
    background: #f5fafc;
  }

  /* 폰 3장을 살짝 아래로 내려 BG 하단에 걸치기 */
  .hero--insured .hero__visual--triplet {
    transform: translateY(20px);
  }

  /* 바로 다음 섹션만 위로 당겨서 걸쳐 보이게 (page--insured 안에서만 동작) */
  .page--insured .hero--insured + .section {
    margin-top: -80px;
    padding-top: calc(80px + 80px);
  }
}


/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {

  .hero--insured {
    position: relative;
    overflow: visible;
    background: #f5fafc;
  }

  .hero--insured .hero__visual--triplet {
    max-width: 960px;
    margin-top: 32px;
    gap: 8px;
  }

  .hero--insured .hero__visual--triplet .hero__image--phone {
    width: 28vw !important;      /* 화면 너비 기준 */
    max-width: 180px !important; /* 너무 커지지 않도록 상한 */
  }
}




/* =========================================

    ⭐ Summary Section
    
========================================= */


.section--insured-summary {
  width: 100%;
  max-width: none;
  margin-top: 0;
  background: #f5fafc;
  padding: 0 0 120px;
}

.insured-summary__inner {
  max-width: 860px;
  margin: 0 auto;
  padding: 0 20px; /* 시작 본문 높이*/
  text-align: center;
}

/* 타이틀 / 서브타이틀 / 본문 */
.insured-summary__title {
  margin: 0 0 16px;
} 

.insured-summary__subtitle {
  margin: 0 0 20px;
  font-size: 22px;
  font-weight: 600;
  color: #54707f;
}

.insured-summary__description {
  margin: 0 0 48px;
  color: #3c4f57;
} 

/* 버튼들을 배치하는 영역 */
.insured-summary__actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}

/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {
  .section--insured-summary {
    padding: 0px 0 96px;
  }

  .insured-summary__title {
  margin: 0 0 16px;
} 

  .insured-summary__subtitle {
    font-size: 18px;
  }

  .insured-summary__description {
  margin: 0 0 48px;
  color: #3c4f57;
} 

  .insured-summary__actions {
    flex-direction: column;
    gap: 12px;
  }

  .section--insured-summary .btn {
    width: 100%;        /* 모바일에서 섹션 기준 꽉 채우기 */
  }
}





/* =========================================

    ⭐ Pain Point Section
    
========================================= */


.section--insured-pain {
  width: 100%;
  padding: 120px 0;
  background: #ffffff;
}

.section-block--insured-pain {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 48px;
}

/* eyebrow & title 정렬 */
.section--insured-pain .section-block__eyebrow {
  text-align: left;
  margin-bottom: 16px;
}

.section--insured-pain .section-block__eyebrow-icon {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

.section--insured-pain .section-block__title {
  text-align: left;
  margin-bottom: 32px;
}

/* ================================
   Hero 일러스트
================================ */

.insured-pain__hero {
  margin-top: 8px;
  margin-bottom: 56px;
}

.insured-pain__hero-img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 32px;
}

/* ================================
   이슈 리스트 + CTA 카드 (PC 기본)
================================ */

.insured-pain__grid {
  display: flex;
  gap: 40px;
  align-items: stretch;
  margin-bottom: 56px;
}

/* 왼쪽 컬럼을 CTA 카드 높이에 맞추기 */
.insured-pain__issues {
  flex: 1.4;
  display: flex;
}

.insured-pain__issue-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between; /* PC에서 위→아래로 고르게 분배 */
  flex: 1;
}

.insured-pain__issue-list li {
  padding: 10px 18px;
  border-radius: 16px;
  background: #eef3f7;
  color: #222;
  font-weight: 600;
  text-align: center;   /* ✅ 텍스트 가운데 정렬 */
}

/* CTA 카드 */
.insured-pain__cta-card {
  flex: 1;
  background: #13a5d3;
  border-radius: 32px;
  padding: 60px 24px;
  color: #ffffff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.insured-pain__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 14px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.36);
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 18px;
}

.insured-pain__cta-icon {
  width: 56px;
  height: 56px;
  margin-bottom: 18px;
  background-image: url("../../images/for-insured/icon-insured-bot.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.insured-pain__cta-text {
  margin: 0;
  line-height: 1.5;
}

/* ================================
   Body copy
================================ */

.insured-pain__body {
  margin-top: 24px;
  margin-left: 0;
  margin-right: auto;
  text-align: left;
}

.insured-pain__body:first-of-type {
  margin-top: 0;
}

.insured-pain__body strong {
  font-weight: 700;
}


/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {
  .section--insured-pain {
    padding: 80px 0;
  }

  .section-block--insured-pain {
    padding: 0 24px;
  }

  .section--insured-pain .section-block__title {
    margin-bottom: 24px;
    font-size: 26px;
  }

  .insured-pain__hero {
    margin-bottom: 40px;
  }

  .insured-pain__hero-img {
    border-radius: 24px;
  }

  /* ▶ 세로 스택 + 양옆 꽉 채우기 */
  .insured-pain__grid {
    flex-direction: column;
    align-items: stretch; 
    gap: 24px;
    margin-bottom: 40px;
  }

  .insured-pain__issues {
    flex: 1;
    display: block; 
  }

  .insured-pain__issue-list {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 12px;
    align-items: stretch; 
  }

  .insured-pain__issue-list li {
    width: 100%; 
    max-width: none;
  }

  .insured-pain__cta-card {
    width: 100%;  
    max-width: none;
    padding: 60px 24px;
    border-radius: 24px;
  }

  .insured-pain__body {
    max-width: 100%;
    margin-top: 16px;
  }
}

@media (max-width: 480px) {
  .insured-pain__issue-list li {
    border-radius: 14px;
    padding: 9px 14px;
  }

  .insured-pain__cta-icon {
    width: 48px;
    height: 48px;
  }
}




/* =========================================

    ⭐ Benefit Section
    
========================================= */


.section--insured-benefits {
  background: #303D42;
  color: #ffffff;
}

.section-block--insured-benefits {
  padding-top: 80px;
  padding-bottom: 80px;
}

/* eyebrow 아이콘 크기 재사용 */
.section--insured-benefits .section-block__eyebrow-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

.insured-benefits__eyebrow span {
  color: #c6e7f4;
}

.insured-benefits__title {
  color: #ffffff;
  margin-top: 12px;
  margin-bottom: 20px;
}

/* 가운데 원형 그리드 */
.insured-benefits {
  margin-top: 80px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 36px;
}

.insured-benefits__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  flex: 1 1 200px;
  max-width: 220px;
}

/* 원형 버블 */
.insured-benefits__bubble {
  width: 210px;
  height: 210px;
  padding: 8px;
  background: #f8f9fd;
  border-radius: 999px;
  outline: 2px #303D42 solid;
  outline-offset: -2px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.insured-benefits__bubble-text {
  margin: 0;
  text-align: center;
  color: #424242;
  font-size: 24px;
  line-height: 1.2;
  font-weight: 600;
}

/* 아래 캡션 텍스트 */
.insured-benefits__caption {
  margin: 0;
  text-align: center;
  color: #98e3ff;
  font-size: 24px;
  line-height: 1.4;
  font-weight: 700;
}

/* 설명 문구 (원 아래 본문) */
.insured-benefits__desc {
  margin: 60px 0 0;       /* 원 전체와의 간격 */
  color: #e1f4ff;
}


/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {
  .section-block--insured-benefits {
    padding-top: 56px;
    padding-bottom: 64px;
  }

  .section--insured-benefits .section-block__title {
    margin-bottom: 16px;
  }

  .insured-benefits__desc {
    margin-top: 32px;
  }

  .insured-benefits {
    margin-top: 60px;
    gap: 24px;
  }

  .insured-benefits__item {
    flex: 1 1 45%;   /* 모바일/태블릿에서 2열 → 줄바뀜 */
    max-width: none;
  }

  .insured-benefits__bubble {
    width: 190px;
    height: 190px;
  }

  .insured-benefits__bubble-text {
    font-size: 22px;
  }

  .insured-benefits__caption {
    font-size: 20px;
  }
}




/* =========================================

    ⭐ App function Section
    
========================================= */


.section--insured-app {
  background: #ffffff;
}

.section--insured-app .section-block--insured-app {
  padding-top: 80px;
  padding-bottom: 80px;
}

.section--insured-app .section-block__eyebrow-icon {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

.section--insured-app .section-block__title {
  margin-top: 12px;
  margin-bottom: 40px;
}

/* 그리드 */

.insured-app {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
  grid-template-rows: auto auto auto;
  gap: 24px;
}

/* 공통 카드 */

.insured-app__card {
  position: relative;
  border-radius: 16px;
  padding: 24px;
  overflow: hidden;
}

/* 각 카드 배경색 */

.insured-app__card--ai {
  background-color: #F8F9FD;
  display: flex;
  flex-direction: column;
  gap: 32px;
  grid-row: 1 / span 2; /* 왼쪽 큰 카드 */
  padding: 24px 24px 0; 
}

.insured-app__card--analysis {
  background-color: #f7f4fe;
}

.insured-app__card--convenience {
  background-color: #e9f9f5;
}

.insured-app__card--records {
  background-color: #fff6e4;
  grid-column: 1 / span 2; /* 하단 풀 너비 */
}

/* 내용 공통 */

.insured-app__text,
.insured-app__content {
  max-width: 560px;
}

.insured-app__title {
  font-size: 28px;
  line-height: 1.3;
  font-weight: 700;
  color: #424242;
  margin: 12px 0 12px;
}

/* 라벨 pill – 글자만 감싸는 형태 */

.insured-app__label {
  font-size: 14px;
}

/* 배경색만 카드별로 살짝 다르게 */

.insured-app__label--white {
  background-color: #ffffff;
}

.insured-app__label--lavender {
  background-color: #e7e2f4;
}

.insured-app__label--mint {
  background-color: #d2f3e7;
}

.insured-app__label--beige {
  background-color: #ffe5bd;
}

/* 칩(증상 태그) */

.insured-app__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

/* 리스트 */

.insured-app__list {
  margin: 0;
  padding-left: 20px;
  list-style: disc;
  font-size: 17px;
  line-height: 1.7;
  color: #424242;
}

.insured-app__list li + li {
  margin-top: 4px;
}

/* ========= 이미지 레이아웃 ========= */

/* AI 예측 – 카드 하단에 2장 나란히 */

.insured-app__shots {
  display: flex;
  gap: 16px;
  align-items: flex-end;
  justify-content: center;
  margin-top: auto;      
  margin-bottom: 0;     
}

.insured-app__shot {
  width: 195px;
  max-width: 40%;
  height: auto;
}

/* 보장·분석 / 편의성 – 오른쪽 상단 아이콘 */

.insured-app__illust {
  position: absolute;
  right: 24px;
  top: 24px;
}

.insured-app__illust img {
  display: block;
  width: 80px;
  height: 80px;
}

/* 하단 카피 */

.insured-app__summary {
  margin-top: 32px;
}


/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {
  .section--insured-app .section-block--insured-app {
    padding-top: 56px;
    padding-bottom: 64px;
  }

  .section--insured-app .section-block__title {
    margin-bottom: 32px;
  }

  .insured-app {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    gap: 16px;
  }

  .insured-app__card--ai {
    grid-row: auto;
    padding: 22px 18px 0;
  }

  .insured-app__card--records {
    grid-column: auto;
  }

  .insured-app__card {
    padding: 22px 18px;
    border-radius: 16px;
  }

  .insured-app__title {
    font-size: 22px;
  }


  .insured-app__shots {
    justify-content: center;
    margin-top: 0;    
    margin-bottom: -24px; /* 카드 하단 패딩 상쇄 */
  }

  .insured-app__shot {
    width: 150px;
  }

  /* 요약문 여백 */
  .insured-app__summary {
    margin-top: 24px;
  }

  /* 보장·분석 / 편의성 아이콘 – 모바일 레이아웃 */
  .insured-app__illust img {
    width: 60px;
    height: 60px;
  }
}



/* =========================================

    ⭐ Product Section
    
========================================= */


.section--insured-product {
  width: 100%;
  padding: 120px 0;
  background: #F9FBFC;
}

.section-block--insured-product {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 48px;
}

/* Eyebrow & Title LEFT ALIGN */
.section--insured-product .section-block__eyebrow {
  text-align: left;
  margin-bottom: 16px;
}

.section--insured-product .section-block__title {
  text-align: left;
  margin-bottom: 64px;
}

.section--insured-product .section-block__eyebrow-icon {
  width: 18px;
  height: 18px;
  object-fit: contain;
}

/* =========================================
   Product Content
========================================= */

.insured-product__content {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.insured-product__block {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.insured-product__block:first-of-type {
  margin-bottom: 64px;
}

.insured-product__block + .insured-product__block {
  margin-top: 80px;
}

/* =========================================
   어긋난 배치 (첫 번째 블록 - top)
========================================= */

.insured-product__media--pair {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: 40px;
  padding: 40px 0;
}

.insured-product__media--pair .insured-product__img {
  width: 280px;
  height: auto;
  border-radius: 32px;
  filter: drop-shadow(-15px 15px 15px rgba(0, 0, 0, 0.1));
  flex-shrink: 0;
}

.insured-product__media--pair .insred-product__img--left {
  margin-top: 60px; /* 아래로 내리기 */
}

.insured-product__media--pair .insured-product__img--right {
  margin-top: 0; /* 위에서 시작 */
}

/* =========================================
   일렬 배치 (두 번째, 세 번째 블록 - mid, bottom)
========================================= */

.insured-product__media--row {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  padding: 60px 0;
}

.insured-product__media--row .insured-product__img {
  width: 280px;
  height: auto;
  border-radius: 32px;
  filter: drop-shadow(-15px 15px 15px rgba(0, 0, 0, 0.1));
  flex-shrink: 0;
}

/* 설명문 텍스트 */
.insured-product__text {
  margin: 48px auto 0;
  font-size: 18px;
  line-height: 1.7;
  color: #444;
  max-width: 760px;
  text-align: center;
}

.insured-product__text strong {
  color: #0e6a85;
  font-weight: 700;
}

/* =========================================
   Tag Row
========================================= */

.insured-product__tag-row {
  margin-top: 0;
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: center;
}

.insured-product__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  background: #24a3d6;
  color: #ffffff;
}

.insured-product__tag--outline {
  background: transparent;
  color: #24a3d6;
  border: 1px solid rgba(36, 163, 214, 0.4);
}

.insured-product__tag-caption {
  margin: 16px auto 0;
  font-size: 18px;
  line-height: 1.6;
  color: #555;
  text-align: center;
  max-width: 600px;
}


/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {
  .section--insured-product {
    padding: 80px 0;
  }

  .section-block--insured-product {
    padding: 0 24px;
  }

  .section--insured-product .section-block__title {
    margin-bottom: 40px;
    font-size: 26px;
  }

  .insured-product__block:first-of-type {
    margin-bottom: 56px;
  }

  .insured-product__block + .insured-product__block {
    margin-top: 64px;
  }

  /* 어긋난 배치 - 모바일 */
  .insured-product__media--pair {
    max-width: 100%;
    gap: 24px;
    padding: 30px 0;
  }

  .insured-product__media--pair .insured-product__img {
    width: 190px;
    border-radius: 24px;
  }

  .insured-product__media--pair .insured-product__img--left {
    margin-top: 40px; /* 모바일에서는 조금만 내리기 */
  }

  .insured-product__media--pair .insured-product__img--right {
    margin-top: 0;
  }

  /* 일렬 배치 - 모바일 */
  .insured-product__media--row {
    gap: 24px;
    padding: 15px 0;
  }

  .insured-product__media--row .insured-product__img {
    width: 190px;
    border-radius: 24px;
  }

  .insured-product__text {
    margin-top: 32px;
    font-size: 15px;
    line-height: 1.65;
  }

  .insured-product__text br {
    display: none;
  }

  .insured-product__tag {
    padding: 6px 14px;
    font-size: 13px;
  }

  .insured-product__tag-caption {
    font-size: 14px;
  }
}

/* =========================================
   Extra Small Mobile (~480px)
========================================= */

@media (max-width: 480px) {
  .insured-product__media--pair .insured-product__img {
    width: 155px;
  }

  .insured-product__media--pair .insured-product__img--left {
    margin-top: 30px;
  }

  .insured-product__media--pair .insured-product__img--right {
    margin-top: 0;
  }

  .insured-product__media--row {
    gap: 16px;
  }

  .insured-product__media--row .insured-product__img {
    width: 155px;
  }
}



/* =========================================

    ⭐ Core function Section
    
========================================= */

.section--insured-core {
  background-color: #ffffff;
}

.section--insured-core .section-block--insured-core {
  padding-top: 80px;
  padding-bottom: 80px;
}

/* eyebrow 아이콘 크기 */
.section--insured-core .section-block__eyebrow-icon {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

/* 제목 여백만 조정 */
.section--insured-core .section-block__title {
  margin-top: 12px;
  margin-bottom: 40px;
}

/* =========================
   카드 레이아웃
========================= */

.insured-core {
  margin-top: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.insured-core__row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

/* 개별 카드 기본 스타일 */
.insured-feature {
  border-radius: 12px;
  padding: 20px 24px;
}

/* 카드 내 태그는 왼쪽 상단에만 살짝 위치 */
.insured-feature__tag {
  margin-bottom: 12px;
}

.insured-feature__title {
  font-size: 20px;
  font-weight: 600;
  color: #33373d;
}

/* 색상 variation – 카드 배경 (칩 색이랑 톤만 살짝 다르게) */
.insured-feature--lavender {
  background-color: #f7f2ff;
}

.insured-feature--peach {
  background-color: #fff3ea;
}

.insured-feature--sky {
  background-color: #f0fbff;
}

.insured-feature--butter {
  background-color: #fff8e3;
}

.insured-feature--mint {
  background-color: #f2ffea;
}

/* 마지막 카드는 한 줄 전체 사용 */
.insured-feature--full {
  margin-top: 4px;
}

/* Summary */
.insured-core__summary {
  margin-top: 32px;
}


/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {
  .section--insured-core .section-block--insured-core {
    padding-top: 64px;
    padding-bottom: 72px;
  }

  .section--insured-core .section-block__title {
    margin-bottom: 32px;
  }

  .insured-core {
    margin-top: 24px;
    gap: 12px;
  }

  .insured-core__row {
    grid-template-columns: 1fr; /* 태블릿/모바일에선 1열로 */
  }

  .insured-feature {
    padding: 18px 20px;
  }

  .insured-feature__title {
    font-size: 18px;
  }

  .insured-core__summary {
    margin-top: 28px;
  }
}

@media (max-width: 600px) {
  .section--insured-core .section-block--insured-core {
    padding-top: 56px;
    padding-bottom: 64px;
  }

  .insured-feature {
    border-radius: 12px;
  }

  .insured-feature__title {
    font-size: 17px;
  }
}




/* =========================================

    ⭐ Persona Section
    
========================================= */

.section--insured-persona {
  background: #f7fafc;
}

.section--insured-persona .section-block--insured-persona {
  padding-top: 80px;
  padding-bottom: 80px;
}

/* eyebrow 아이콘 크기만 조정 */
.section--insured-persona .section-block__eyebrow-icon {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

/* 제목은 base 타이포 그대로 쓰고 여백만 */
.section--insured-persona .section-block__title {
  margin-top: 12px;
  margin-bottom: 60px;
}

/* ========================================
   카드 래퍼
======================================== */

.insured-persona {
  padding: 24px;
  border-radius: 8px;
  background-color: #ffffff;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  gap: 20px;
}

/* 개별 카드 */
.insured-persona__item {
  flex: 1 1 0;
  min-width: 248px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
}

/* 아바타 영역 (정사각형, 가운데 정렬) */
.insured-persona__avatar {
  width: 160px;
  height: 160px;
  position: relative;
  overflow: hidden;
}

.insured-persona__avatar img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* 이름 / 정보 */
.insured-persona__meta {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}

.insured-persona__name {
  font-weight: 700;
  font-size: 24px;
  color: #181818;
}

.insured-persona__info {
  font-size: 18px;
  color: #586472;
}

/* 설명 말풍선 */
.insured-persona__bubble {
  width: 100%;
  min-height: 140px;  /* 너가 맞춰둔 값 그대로 */
  padding: 16px;
  border-radius: 8px;
  background-color: #ecf5f7;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.insured-persona__bubble p {
  font-size: 17px;
  line-height: 1.6;
  color: #586472;
}

.insured-persona__bubble strong {
  font-weight: 700;
}


/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {
  .section--insured-persona .section-block--insured-persona {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .section--insured-persona .section-block__title {
    margin-bottom: 48px;
  }

  .insured-persona {
    padding: 20px;
    gap: 16px;
  }

  .insured-persona__name {
    font-size: 22px;
  }

  .insured-persona__info {
    font-size: 16px;
  }

  .insured-persona__bubble p {
    font-size: 16px;
  }
}



/* =========================================

    ⭐ Final CTA Section
    
========================================= */


.section--insured-cta {
  width: 100%;
  background: #28465a;
  color: #ffffff;
  padding-top: 0;
  padding-bottom: 0;
}

.section-block--insured-cta {
  max-width: 1200px;
  margin: 0 auto;
  padding: 56px 48px 72px;
}

/* eyebrow */
.section--insured-cta .section-block__eyebrow {
  margin-bottom: 16px;
}

.section--insured-cta .section-block__eyebrow span {
  color: rgba(255, 255, 255, 0.9);
}

/* eyebrow 아이콘 살짝 작게 */
.section-block__eyebrow-icon {
  width: 16px;
  height: 16px;
  object-fit: contain;
  flex-shrink: 0;
}

/* 타이틀 */
.insured-cta__title {
  margin: 0 0 20px;
}

/* 스토어 배지 */
.insured-cta__stores {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}

.store-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.88), rgba(245, 248, 255, 0.9));
  border: 1px solid rgba(255, 255, 255, 0.7);
  box-shadow: 0 14px 26px rgba(32, 60, 94, 0.12);
  font-size: 13px;
  color: #0f172a;
  text-decoration: none;
  transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.store-badge--link:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 30px rgba(32, 60, 94, 0.18);
  border-color: rgba(255, 255, 255, 0.95);
}

.store-badge--link:active {
  transform: translateY(0);
  box-shadow: 0 10px 20px rgba(32, 60, 94, 0.16);
}

.store-badge__icon {
  width: 28px;
  height: 28px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  flex-shrink: 0;
}

.store-badge__icon--apple {
  background-image: url("../../images/common/icon-apple.svg");
}

.store-badge__icon--google {
  background-image: url("../../images/common/icon-google.svg");
}

.store-badge__text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.store-badge__eyebrow {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #64748b;
}

.store-badge__label {
  font-size: 15px;
  font-weight: 700;
  color: #0f172a;
}

.store-badge__arrow {
  margin-left: auto;
  font-size: 18px;
  font-weight: 700;
  color: #2f6fed;
}

.store-badge__hint {
  grid-column: 1 / -1;
  font-size: 12px;
  color: rgba(15, 23, 42, 0.7);
  letter-spacing: 0.02em;
}

/* CTA 버튼 */
.insured-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.insured-cta__btn-primary,
.insured-cta__btn-secondary {
  border-radius: 8px;
  padding: 14px 28px;
  font-size: 15px;
  font-weight: 500;
}

.insured-cta__btn-primary {
  flex: 1 1 0;
  text-align: center;
}

/* 흰색 버튼 */
.insured-cta__btn-secondary {
  flex: 1 1 0;
  text-align: center;
  background: #ffffff;
  color: #28465a;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.18);
}

/* hover  */
.insured-cta__btn-secondary:hover {
  opacity: 0.96;
}


/* ======== Mobile(~1023) ============ */
@media (max-width: 1023px) {
  .section-block--insured-cta {
    padding: 40px 24px 48px;
  }

  .insured-cta__actions {
    flex-direction: column;
  }

  .section--insured-cta .insured-cta__title {
    font-size: 24px; 
    line-height: 1.5;
  }

  .insured-cta__btn-primary,
  .insured-cta__btn-secondary {
    width: 100%;
  }
}
