/* ============================================================
   Lunamé — Brand Positioning (Part 3 of 3)
   case-study-luname-brand-positioning.css  (loads last)
   ============================================================ */
.lcs { color: #1a1a1a; overflow-x: clip; }
.lcs .container-fluid {
    width: 100%; max-width: 1440px; margin: 0 auto;
    padding-left: clamp(20px, 6.94vw, 100px); padding-right: clamp(20px, 6.94vw, 100px);
}
.lcs img { max-width: 100%; }
.lcs .ttc-em { font-family: 'Source Serif 4', serif !important; font-style: italic !important; font-weight: 400; }
.lcs .lcs-orange { color: #f96815; }
.lcs .lcs-cyan { color: #59cbe8; }
.lcs .lcs-label { font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 600; letter-spacing: 2.5px; text-transform: uppercase; color: #8a8a8a; margin: 0 0 18px; }

/* ---------------- HERO ---------------- */
.lcs-hero { background: #120d0d; }
.lcs-hero .container-fluid { padding-top: 120px; padding-bottom: 84px; }
.lcs-hero__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 52px; align-items: center; }
.lcs-hero__title { display: block; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 52px; line-height: 1.12; color: #fff; margin: 0; }
.lcs-hero__accent { display: block; font-family: 'Source Serif 4', serif; font-style: italic; font-weight: 400; font-size: 44px; line-height: 1.2; color: #ead7a0; margin-top: 8px; }
.lcs-hero__tags { font-family: 'Poppins', sans-serif; font-size: 15px; color: #cfc9c3; margin: 28px 0 0; }
.bp-hero__panel { background: #191617; border: 1px solid rgba(255,255,255,.06); border-radius: 10px; height: 430px; display: flex; align-items: center; justify-content: center; }
.bp-hero__panel img { width: min(48%, 300px); height: auto; }

/* ---------------- INTRO ---------------- */
.bp-intro { background: #fff; }
.bp-intro .container-fluid { padding: 80px clamp(20px,6.94vw,100px); }
.bp-intro__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 52px; align-items: start; }
.bp-intro__title { display: block; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 40px; line-height: 1.2; color: #120d0d; margin: 0; }
.bp-intro__body { font-size: 18px; line-height: 1.65; color: #333; margin: 0; }

/* ---------------- THE IDEA / POSITIONING (dark) ---------------- */
.bp-idea { background: #191617; color: #fff; }
.bp-idea .container-fluid { padding: 84px clamp(20px,6.94vw,100px); }
.bp-idea__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 56px; align-items: start; }
.bp-idea__title { display: block; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 40px; line-height: 1.2; color: #fff; margin: 0 0 22px; }
.bp-idea__text > p { font-size: 16px; line-height: 1.65; color: #cbc6c2; margin: 0 0 22px; }
.bp-idea__sub { display: block; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 26px; color: #fff; margin: 6px 0 16px; }
.bp-idea__italic { font-family: 'Source Serif 4', serif; font-style: italic; font-size: 18px !important; color: #d7d3cf !important; }
.bp-idea__q { color: #cbc6c2; }
.bp-idea__media img { width: 100%; border-radius: 10px; display: block; }

.bp-quad { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; border-top: 1px solid rgba(255,255,255,.14); margin-top: 44px; }
.bp-q { display: flex; flex-direction: column; min-height: 340px; padding: 30px 26px; border-left: 1px solid rgba(255,255,255,.14); }
.bp-q:first-child { border-left: 0; }
.bp-q__num { font-family: 'Poppins', sans-serif; font-size: 14px; color: #8f8a86; margin-bottom: 14px; }
.bp-q__title { font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 22px; color: #fff; margin-bottom: 14px; }
.bp-q__desc { font-size: 15px; line-height: 1.55; color: #b7b2ad; }
.bp-q__icon { position: relative; width: 58px; height: 58px; margin-top: auto; align-self: flex-end; }
.bp-q__icon img { position: absolute; inset: 0; width: 100%; height: 100%; }

/* ---------------- BRAND PROMISE + TABLE ---------------- */
.bp-promise { background: #fff; }
.bp-promise .container-fluid { padding: 80px clamp(20px,6.94vw,100px); text-align: center; }
.bp-promise__label { text-align: center; }
.bp-promise__title { display: block; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 40px; line-height: 1.2; color: #120d0d; margin: 0 0 34px; }
.bp-promise__box { display: inline-block; background: #26211f; color: #e4ca97; font-family: 'Source Serif 4', serif; font-style: italic; font-size: 42px; line-height: 1.2; padding: 26px 56px; border-radius: 2px; margin: 0 0 44px; }
.bp-promise__tests { font-size: 17px; color: #666; margin: 0 0 18px; }
.bp-table { border: 1px solid #e6e6e6; border-radius: 4px; overflow: hidden; text-align: left; }
.bp-table__head { display: grid; grid-template-columns: 230px 1fr 1fr; background: #005eb8; color: #fff; }
.bp-table__head span { padding: 16px 22px; font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 16px; }
.bp-table__head span:first-child, .bp-table__head span:nth-child(2) { text-align: center; }
.bp-table__row { display: grid; grid-template-columns: 230px 1fr 1fr; border-top: 1px solid #ececec; }
.bp-table__row span { padding: 24px 22px; font-size: 15px; line-height: 1.55; color: #333; }
.bp-table__test { font-family: 'Poppins', sans-serif; font-weight: 600; text-align: center; align-self: center; color: #120d0d !important; }
.bp-table__q { font-style: italic; text-align: center; align-self: center; border-left: 1px solid #ececec; border-right: 1px solid #ececec; }

/* ---------------- IMAGE BAND ---------------- */
.bp-band { position: relative; background-size: cover; background-position: center; padding: 96px clamp(20px,6.94vw,100px); }
.bp-band__overlay { position: absolute; inset: 0; background: rgba(14,11,12,.5); }
.bp-band__text { position: relative; max-width: 1000px; margin: 0 auto; text-align: center; padding: 30px 12px; border-top: 1px solid rgba(255,255,255,.45); border-bottom: 1px solid rgba(255,255,255,.45); }
.bp-band__lead { font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 20px; color: #fff; margin: 0 0 8px; }
.bp-band__big { font-family: 'Source Serif 4', serif; font-style: italic; font-size: 38px; line-height: 1.25; color: #e4ca97; margin: 0; }

/* ---------------- SERIES NAV ---------------- */
.lcs-series { background: #fff; }
.lcs-series .container-fluid { padding: 24px clamp(20px,6.94vw,100px) 28px; display: flex; justify-content: flex-start; }
.lcs-series__card { display: flex; align-items: center; gap: 22px; width: 400px; max-width: 100%; padding: 22px 24px; border: 1px solid #e3e3e3; border-radius: 12px; text-decoration: none; transition: box-shadow .2s ease, transform .2s ease; }
.lcs-series__card:hover { box-shadow: 0 8px 26px rgba(0,0,0,.08); transform: translateY(-2px); }
.lcs-series__meta { display: flex; flex-direction: column; gap: 3px; }
.lcs-series__part { font-family: 'Poppins', sans-serif; font-size: 13px; color: #8a8a8a; }
.lcs-series__title { font-family: 'Poppins', sans-serif; font-weight: 600; font-size: 19px; color: #120d0d; }
.lcs-series__sub { font-family: 'Poppins', sans-serif; font-size: 14px; color: #555; }
.lcs-series__arrow { color: #120d0d; flex: 0 0 auto; display: flex; }

/* ---------------- RESPONSIVE ---------------- */
@media (max-width: 991px) {
    .lcs-hero .container-fluid { padding-top: 100px; padding-bottom: 56px; }
    .lcs-hero__grid, .bp-intro__grid, .bp-idea__grid { grid-template-columns: 1fr; gap: 28px; }
    .lcs-hero__title { font-size: 38px; }
    .lcs-hero__accent { font-size: 32px; }
    .bp-hero__panel { height: 240px; }
    .bp-intro__title, .bp-idea__title, .bp-promise__title { font-size: 30px; }
    .bp-quad { grid-template-columns: 1fr 1fr; border-top: 0; }
    .bp-q { border-left: 0; border-top: 1px solid rgba(255,255,255,.14); min-height: 0; padding: 26px 4px; }
    .bp-q:nth-child(even) { padding-left: 26px; border-left: 1px solid rgba(255,255,255,.14); }
    .bp-promise__box { font-size: 30px; padding: 22px 30px; }
    /* table -> stacked cards */
    .bp-table__head { display: none; }
    .bp-table__row { grid-template-columns: 1fr; }
    .bp-table__row span { padding: 10px 20px; }
    .bp-table__test { text-align: left; align-self: start; font-size: 18px; padding-top: 20px; }
    .bp-table__q { text-align: left; border: 0; padding-top: 2px; }
    .bp-band__big { font-size: 27px; }
    .bp-band__lead { font-size: 17px; }
}
@media (max-width: 520px) {
    .lcs-hero__title { font-size: 31px; }
    .lcs-hero__accent { font-size: 26px; }
    .bp-quad { grid-template-columns: 1fr; }
    .bp-q:nth-child(even) { padding-left: 4px; border-left: 0; }
    .bp-promise__box { font-size: 24px; }
}

/* luname-task-20260727: CTA mobile overflow fix */
@media (max-width: 991px){
  .lcs .cta-section .cta-image{ max-width:100% !important; height:auto !important; }
  .lcs .cta-section .cta-image-wrapper{ text-align:center !important; padding:0; }
}
.bp-hero__video{ width:100%; height:100%; object-fit:contain; background:#191617; border-radius:10px; display:block; }
