/* Solutions: an editorial label column and a quiet, expanding list. */
.bleu-solutions{--solution-ink:#111;--solution-muted:#666;--solution-line:#dedede;--solution-blue:#2162e8;--solution-duration:320ms;box-sizing:border-box;padding:clamp(80px,8vw,128px) clamp(64px,8vw,128px) 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:grid;grid-template-columns:31% minmax(0,1fr);align-items:start;gap:0}
.bleu-solutions .bleu-solutions-label{margin:0;padding-top:5px;font-size:clamp(48px,4.5vw,64px);font-weight:700;line-height:1.06;letter-spacing:-.035em}
.bleu-solutions h2{margin:0;font-size:clamp(28px,2.65vw,38px);font-weight:600;line-height:1.4;letter-spacing:-.035em;white-space:pre-line;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-runway{position:relative;margin:64px 0 0 31%;overflow:visible}
.bleu-solutions-frame{position:relative}
.bleu-solutions-runway.is-scroll-sequence .bleu-solutions-frame{position:sticky;top:var(--solution-pin-top);min-height:var(--solution-frame-height)}
.bleu-solutions-list{margin:0;padding:0;list-style:none}
.bleu-solution{position:relative;margin:0;border-bottom:1px solid var(--solution-line);background:transparent}
.bleu-solution h3{margin:0;padding:0}
.bleu-solution-trigger{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;min-height:88px;margin:0;padding:22px 0;border:0;border-radius:0;background:transparent;color:var(--solution-ink);font:inherit;font-size:clamp(28px,2.36vw,34px);font-weight:600;line-height:1.3;letter-spacing:-.035em;text-align:left;cursor:pointer;transition:color 180ms}
.bleu-solution-trigger>span{min-width:0;word-break:keep-all;overflow-wrap:break-word}
.bleu-solution-trigger>svg{width:32px;height:32px;flex:0 0 32px;margin:0 14px;color:var(--solution-muted);transition:transform var(--solution-duration) cubic-bezier(.22,1,.36,1),color 180ms}
.bleu-solution.is-open .bleu-solution-trigger>svg{transform:rotate(180deg);color:var(--solution-ink)}
.bleu-solution-trigger:focus-visible{outline:2px solid var(--solution-blue);outline-offset:5px;border-radius:4px}
.bleu-solution-panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--solution-duration) cubic-bezier(.22,1,.36,1),opacity 180ms}
.bleu-solution.is-open .bleu-solution-panel{grid-template-rows:1fr;opacity:1}
.bleu-solution-panel-clip{min-height:0;overflow:hidden}
.bleu-solution-detail{display:grid;grid-template-columns:minmax(0,1fr) 296px;align-items:center;gap:40px;min-height:320px;padding:0 32px 24px 0}
.bleu-solution-copy>p{max-width:45ch;margin:0;color:var(--solution-ink);font-size:20px;font-weight:400;line-height:1.65;letter-spacing:-.02em;word-break:keep-all;overflow-wrap:break-word;text-wrap:pretty}
.bleu-solution-copy>ul{display:flex;flex-wrap:wrap;gap:8px 0;max-width:44ch;margin:20px 0 0;padding:0;list-style:none;color:var(--solution-muted);font-size:15px;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:'·';display:inline-block;margin:0 9px;color:#aaa}
.bleu-solution-visual{width:296px;height:296px;overflow:hidden;background:#edf2fa;border-radius:10px;opacity:0;transform:translateY(9px) scale(.97);transition:transform var(--solution-duration) cubic-bezier(.22,1,.36,1),opacity 220ms}
.bleu-solution.is-open .bleu-solution-visual{opacity:1;transform:none}
.bleu-solution-visual :is(img,video){display:block;width:100%;height:100%;object-fit:contain}
.bleu-solution-visual.is-custom :is(img,video){object-fit:cover}
@media(min-width:761px) and (max-width:1100px){.bleu-solutions-heading{grid-template-columns:25% minmax(0,1fr)}.bleu-solutions-runway{margin-left:25%}.bleu-solution-detail{grid-template-columns:minmax(0,1fr) 240px;gap:24px;padding-right:0;min-height:264px}.bleu-solution-visual{width:240px;height:240px}.bleu-solution-copy>p{font-size:18px}.bleu-solution-trigger{font-size:28px}.bleu-solution-trigger>svg{margin-right:6px}}
@media(max-width:760px){.bleu-solutions{padding:68px 24px 88px}.bleu-solutions-heading{grid-template-columns:1fr;gap:26px}.bleu-solutions .bleu-solutions-label{font-size:46px;padding:0}.bleu-solutions h2{font-size:28px;line-height:1.4;letter-spacing:-.035em}.bleu-solutions-runway{margin:36px 0 0}.bleu-solution-trigger{min-height:72px;padding:20px 0;gap:16px;font-size:24px;line-height:1.3}.bleu-solution-trigger>svg{width:24px;height:24px;flex-basis:24px;margin:0}.bleu-solution-detail{grid-template-columns:1fr;gap:18px;padding:0 0 24px;min-height:0}.bleu-solution-visual{grid-row:1;width:100%;height:240px;border-radius:12px}.bleu-solution-copy>p{font-size:18px;line-height:1.7}.bleu-solution-copy>ul{margin-top:18px;font-size:14px}.bleu-solution-copy>ul>li:not(:last-child):after{margin:0 7px}}
@media(prefers-reduced-motion:reduce){.bleu-solutions{--solution-duration:0ms}.bleu-solution-panel,.bleu-solution-trigger,.bleu-solution-trigger>svg,.bleu-solution-visual{transition:none;transform:none}}

.bleu-solutions-pin-label{position:absolute;top:24px;left:-44.9275%;width:40%;margin:0;font-size:clamp(48px,4.5vw,64px);font-weight:700;line-height:1.06;letter-spacing:-.035em;opacity:0;pointer-events:none;transition:opacity 180ms}
.bleu-solutions-frame.is-pinned .bleu-solutions-pin-label{opacity:1}
@media(min-width:761px) and (max-width:1100px){.bleu-solutions-pin-label{left:-33.3333%;width:30%}}
@media(max-width:760px){.bleu-solutions-pin-label{display:none}}
@media(prefers-reduced-motion:reduce){.bleu-solutions-pin-label{transition:none}}

@media(min-width:761px) and (max-width:900px){.bleu-solutions .bleu-solutions-label,.bleu-solutions-pin-label{font-size:clamp(30px,4vw,36px)}}

/* 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}}
