/* Solutions: one reading row at full opacity, with a sliding sticky visual. */
.bleu-solutions{--solution-ink:#1c1f25;--solution-muted:#727780;--solution-line:rgba(3,31,63,.09);--solution-blue:#2162e8;--solution-item-size:28px;box-sizing:border-box;width:100%;max-width:none;margin-inline:0;padding:clamp(80px,8vw,128px) max(clamp(64px,8.4375vw,108px),calc((100% - 1704px)/2)) clamp(88px,9vw,144px);background:#fff;color:var(--solution-ink);font-family:BleuPublic,'Pretendard Variable',Pretendard,sans-serif}
.bleu-solutions *{box-sizing:border-box}
.bleu-solutions-heading{display:block}
.bleu-solutions #bleu-solutions-title{max-width:1000px;margin:0;font-size:clamp(34px,3.3vw,44px);font-weight:700;line-height:1.4;letter-spacing:-.035em;white-space:normal;word-break:keep-all;overflow-wrap:break-word;text-transform:none}
.bleu-solutions .bleu-solutions-intro{margin:22px 0 0;max-width:45ch;font-size:16px;line-height:1.65;color:var(--solution-muted);word-break:keep-all}
.bleu-solutions-flow{display:grid;grid-template-columns:min(38%,440px) minmax(0,1fr);gap:40px;align-items:stretch;margin-top:48px;border-top:1px solid var(--solution-line)}
.bleu-solutions-media-rail{min-width:0;padding:32px 0 48px}
.bleu-solutions-media-sticky{position:sticky;top:32px;width:100%;max-width:440px}
.bleu-solutions-media-stage{position:relative;display:block;width:100%;aspect-ratio:3/2;overflow:hidden;border-radius:24px;background:#eef3f8}
.bleu-solutions-media-track{position:absolute;inset:0;display:flex;flex-direction:column;transition:transform 650ms cubic-bezier(.22,1,.36,1);will-change:transform}
.bleu-solutions-media-layer{position:relative;flex:0 0 100%;width:100%;height:100%;overflow:hidden;pointer-events:none}
.bleu-solutions-media-layer :is(img,video),.bleu-solution-mobile-media :is(img,video){display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.bleu-solutions-rows{min-width:0;padding-top:32px}
.bleu-solution-row{position:relative;display:grid;grid-template-columns:44px minmax(0,.79fr) minmax(0,1fr);align-items:start;gap:24px;margin:0;padding:28px 0 76px;border-top:1px solid var(--solution-line);color:var(--solution-ink);opacity:.3;cursor:pointer;transition:opacity 300ms ease}
.bleu-solution-row:first-child{padding-top:0;border-top:0}
.bleu-solution-row.is-current{opacity:1}
.bleu-solution-number{display:flex;align-items:center;min-height:44px;padding-top:0;color:#8f959e;font-family:Poppins,BleuPublic,sans-serif;font-size:var(--solution-item-size);font-weight:600;line-height:1.45;font-variant-numeric:tabular-nums}
.bleu-solutions .bleu-solution-row-title{margin:0;padding:0;color:var(--solution-ink);font-family:inherit;font-size:var(--solution-item-size);font-weight:600;line-height:1.45;letter-spacing:-.025em;word-break:keep-all;overflow-wrap:break-word;text-transform:none}
.bleu-solution-select{appearance:none;display:block;width:100%;min-height:44px;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;line-height:inherit;text-align:left;cursor:pointer}
.bleu-solution-chevron{display:none}
.bleu-solution-panel{display:contents}
.bleu-solution-panel[hidden]{display:none}
.bleu-solution-copy{display:block;min-width:0;color:inherit;text-decoration:none;cursor:pointer}
.bleu-solution-copy>p{max-width:38ch;margin:0;color:var(--solution-muted);font-size:18px;font-weight:400;line-height:1.7;letter-spacing:-.02em;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty;transition:color 180ms}
.bleu-solution-copy:hover>p{color:var(--solution-ink)}
.bleu-solution-copy>ul{display:flex;flex-wrap:wrap;gap:6px 0;max-width:38ch;margin:18px 0 0;padding:0;list-style:none;color:var(--solution-muted);font-size:14px;font-weight:400;line-height:1.6;letter-spacing:-.01em}
.bleu-solution-copy>ul>li{display:inline-flex;align-items:baseline;margin:0;padding:0;word-break:keep-all}
.bleu-solution-copy>ul>li:not(:last-child):after{content:'·';margin:0 9px;color:#a0a4ab}
.bleu-solution-select:focus-visible,.bleu-solution-copy:focus-visible,.bleu-solution-mobile-media:focus-visible{outline:2px solid var(--solution-ink);outline-offset:5px}
.bleu-solution-select:focus-visible,.bleu-solution-copy:focus-visible{border-radius:4px}
.bleu-solution-mobile-media{display:none}
@media(min-width:761px) and (max-width:1100px){
  .bleu-solutions{--solution-item-size:26px}
  .bleu-solutions-flow{grid-template-columns:minmax(240px,38%) minmax(0,1fr);gap:28px}
  .bleu-solution-row{grid-template-columns:36px minmax(0,1fr);column-gap:20px;row-gap:12px;padding:24px 0 56px}
  .bleu-solution-row .bleu-solution-copy{grid-column:2}
  .bleu-solution-copy>p{max-width:44ch;font-size:18px}
}
@media(max-width:760px){
  html.bleu-solutions-mobile-reading .site-global-project-cta{opacity:0;visibility:hidden;pointer-events:none}
  .bleu-solutions{--solution-item-size:clamp(20px,5.5vw,22px);padding:68px 20px 80px}
  html[data-bleu-public-language] main.about-page .bleu-solutions .bleu-solutions-heading #bleu-solutions-title{font-family:Poppins,BleuAboutMedium,BleuPublic,'Pretendard Variable',Pretendard,sans-serif;font-size:clamp(25px,6.7vw,28px);font-weight:500;line-height:1.45;letter-spacing:-.035em}
  .bleu-solutions-flow{display:block;margin-top:32px}
  .bleu-solutions-rows{padding-top:0;overflow-anchor:none}
  .bleu-solutions-media-rail{display:none}
  .bleu-solution-row{grid-template-columns:22px minmax(0,1fr);column-gap:12px;row-gap:0;min-height:0;padding:0;color:var(--solution-ink);opacity:1;cursor:default;overflow-anchor:none}
  .bleu-solution-row:first-child{padding-top:0}
  .bleu-solution-row:last-child{border-bottom:1px solid var(--solution-line)}
  .bleu-solution-number{align-items:flex-start;min-height:0;padding-top:29px;color:#69717b;font-size:13px;font-weight:500;line-height:1.4;letter-spacing:.025em}
  html[data-bleu-public-language] main.about-page .bleu-solutions :is(.bleu-solution-row-title,.bleu-solution-select){font-family:Poppins,BleuAboutMedium,BleuPublic,'Pretendard Variable',Pretendard,sans-serif;font-size:var(--solution-item-size);font-weight:500;line-height:1.45;letter-spacing:-.025em}
  .bleu-solution-select{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:76px;padding:22px 0;color:#59616c}
  .bleu-solution-row.is-current .bleu-solution-select{color:var(--solution-ink)}
  .bleu-solution-chevron{display:block;flex:0 0 20px;width:20px;height:20px;color:#737b85;transition:transform 240ms ease}
  .bleu-solution-select[aria-expanded="true"] .bleu-solution-chevron{transform:rotate(180deg);color:var(--solution-ink)}
  .bleu-solution-panel{display:grid;grid-column:1/-1;gap:20px;padding:0 0 28px}
  [data-mobile-accordion="true"] .bleu-solution-panel:not([hidden]){animation:bleu-solution-open 280ms cubic-bezier(.22,1,.36,1) both}
  .bleu-solution-mobile-media{display:block;width:100%;height:auto;aspect-ratio:3/2;margin:0;padding:0;border:0;overflow:hidden;border-radius:16px;background:#eef3f8}
  .bleu-solution-row .bleu-solution-copy{grid-column:auto}
  html[data-bleu-public-language] main.about-page .bleu-solutions .bleu-solution-copy>p{max-width:none;color:#4b5159;font-size:16px;font-weight:400;line-height:1.75;letter-spacing:-.015em}
  .bleu-solution-copy>ul{max-width:none;margin-top:14px;color:#616772;font-size:13px;font-weight:400;line-height:1.65}
  .bleu-solution-copy>ul>li:not(:last-child):after{margin:0 7px}
}
@keyframes bleu-solution-open{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.bleu-solutions-media-track,.bleu-solution-row,.bleu-solution-chevron{transition:none}[data-mobile-accordion="true"] .bleu-solution-panel:not([hidden]){animation:none}}

/* FAQ follows the same label/content grid as Solutions. */
.bleu-solutions-faq{box-sizing:border-box;display:grid;grid-template-columns:31% minmax(0,1fr);align-items:start;padding:clamp(80px,8vw,128px) clamp(64px,8vw,128px);background:#fff;color:#111;font-family:BleuPublic,'Pretendard Variable',Pretendard,sans-serif}
.bleu-solutions-faq *{box-sizing:border-box}
html .bleu-solutions-faq .bleu-faq-label{margin:0;padding-top:5px;font-family:Poppins,BleuPublic,sans-serif;font-size:clamp(48px,4.5vw,64px);font-weight:700;line-height:1.06;letter-spacing:-.035em}
.bleu-faq-content{min-width:0}
.bleu-solutions-faq .bleu-faq-heading h2{margin:0;font-size:clamp(30px,2.65vw,38px);font-weight:700;line-height:1.4;letter-spacing:-.035em;text-transform:none;word-break:keep-all}
.bleu-solutions-faq .bleu-faq-heading p{margin:16px 0 0;color:#666;font-size:18px;font-weight:400;line-height:1.7;letter-spacing:-.02em;word-break:keep-all}
.bleu-faq-list{margin-top:40px;border-top:1px solid #dfe1e5}
.bleu-faq-item{border-bottom:1px solid #dfe1e5;overflow-anchor:none}
.bleu-faq-item[data-animating]{overflow:clip}
.bleu-faq-item[data-animating] summary:focus-visible{outline-offset:-3px}
.bleu-faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:80px;padding:24px 0;list-style:none;cursor:pointer;font-size:24px;font-weight:600;line-height:1.5;letter-spacing:-.025em;word-break:keep-all;overflow-wrap:break-word}
.bleu-faq-item summary::-webkit-details-marker{display:none}
.bleu-faq-item summary>svg{width:24px;height:24px;flex:0 0 24px;color:#666;transition:transform 400ms cubic-bezier(.22,1,.36,1),color 220ms ease}
.bleu-faq-item[data-expanded="true"] summary>svg,.bleu-faq-item[open]:not([data-expanded]) summary>svg{transform:rotate(180deg);color:#111}
.bleu-faq-item[data-expanded="false"] summary>svg{transition-duration:280ms,220ms}
.bleu-faq-item summary:focus-visible{outline:2px solid #2162e8;outline-offset:6px;border-radius:4px}
.bleu-solutions-faq .bleu-faq-answer>p{max-width:60ch;margin:0;padding:0 48px 28px 0;color:#555;font-size:18px;font-weight:400;line-height:1.8;letter-spacing:-.02em;word-break:keep-all;overflow-wrap:break-word}
.bleu-faq-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:36px}
.bleu-solutions-faq .bleu-faq-footer>p{margin:0;color:#666;font-size:16px;font-weight:400;line-height:1.7;word-break:keep-all}
.bleu-faq-footer>a{flex-shrink:0}
@media(min-width:761px) and (max-width:1100px){.bleu-solutions-faq{grid-template-columns:25% minmax(0,1fr)}.bleu-faq-footer{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.bleu-solutions-faq{grid-template-columns:1fr;gap:26px;padding:68px 24px 88px}html .bleu-solutions-faq .bleu-faq-label{padding:0;font-size:46px}.bleu-solutions-faq .bleu-faq-heading h2{font-size:28px}.bleu-solutions-faq .bleu-faq-heading p{font-size:17px}.bleu-faq-list{margin-top:28px}.bleu-faq-item summary{gap:18px;min-height:72px;padding:22px 0;font-size:21px}.bleu-solutions-faq .bleu-faq-answer>p{padding:0 0 24px;font-size:17px}.bleu-faq-footer{align-items:flex-start;flex-direction:column;gap:20px;margin-top:28px}}
@media(prefers-reduced-motion:reduce){.bleu-faq-item summary>svg{transition:none}}
