
/* ===== bx-lite-brand.css ===== */

      /* ============================================================
         preflight: false 補完 (2026-05-29 再復活)
         Tailwind preflight 無効化で露出する以下を最小限のreset で抑える:
          - a タグがブラウザデフォルトの青/紫下線
          - img の inline 表示で max-width 効かず
          - body のフォントカラーが弱まり「薄い灰色」に見える
         ※ テーマ既存スタイル(main.css/front-page.css)を破壊しない最小範囲
         ============================================================ */
      a { color: inherit; text-decoration: none; }
      img, picture { max-width: 100%; height: auto; }
      .nav-glass img { display: block; }
      /* body color 指定は撤回 (2026-05-29 /reasons/ ヒーロー等の色変化が真因と判明) */

      /* input.css の @layer components 手書き複写 (Tailwind compile 不在のため独自展開) */
      .nav-glass { background: rgba(255,255,255,0.95); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); border-bottom: 1px solid rgba(0,0,0,0.06); transition: all 0.3s; }

      /* ============================================================
         BoostX Mega Menu — 美しい4列wide配置 (2026-05-29)
         画面センター・1200px幅・4列グリッド・CTAボックス右端
         既存 bxp-mega-css の defaults を上書きして見栄え改善
         ============================================================ */
      .bxp-mega-trigger { position: relative !important; }
      .bxp-mega-panel {
        position: fixed !important;
        top: 72px !important; /* nav-glass の高さ */
        left: 50% !important;
        transform: translateX(-50%) translateY(-6px) !important;
        width: min(1040px, 94vw) !important;  /* 1200→1040: コンパクト化 */
        max-width: 94vw !important;
        background: #ffffff !important;
        border-radius: 0 0 16px 16px !important;
        box-shadow: 0 28px 56px -20px rgba(11,21,36,0.26),
                    0 0 0 1px rgba(11,21,36,0.06) !important;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity 0.18s ease-out, transform 0.18s ease-out, visibility 0.18s !important;
        z-index: 60 !important;
        overflow: hidden;
      }
      .bxp-mega-trigger.bxp-mega-open .bxp-mega-panel {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateX(-50%) translateY(0) !important;
      }
      .bxp-mega-inner {
        display: grid !important;
        grid-template-columns: 1fr 1.3fr 1.3fr 0.95fr !important;
        gap: 24px !important;
        padding: 22px 26px !important;
        background: linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%) !important;
      }
      /* カラムタイトル (コンパクト化) */
      .bxp-mega-col-title {
        font-family: 'Inter', sans-serif !important;
        font-size: 10.5px !important;
        font-weight: 800 !important;
        letter-spacing: 0.18em !important;
        text-transform: uppercase !important;
        color: #1E4FC7 !important;
        margin: 0 0 10px !important;
        padding: 0 0 7px !important;
        border-bottom: 2px solid rgba(30,79,199,0.12) !important;
        cursor: default !important;
      }
      .bxp-mega-col-title-plain { color: #6B7385 !important; }
      /* リスト共通 */
      .bxp-mega-list {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 2px !important;
      }
      .bxp-mega-list-2col {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 2px 10px !important;
      }
      .bxp-mega-list li { margin: 0 !important; padding: 0 !important; }
      .bxp-mega-list a {
        display: block !important;
        padding: 5px 8px !important;
        font-size: 12.5px !important;
        font-weight: 600 !important;
        color: #1a1a1a !important;
        border-radius: 6px !important;
        transition: background 0.18s, color 0.18s, transform 0.18s !important;
        text-decoration: none !important;
        line-height: 1.35 !important;
      }
      .bxp-mega-list a:hover {
        background: rgba(30,79,199,0.07) !important;
        color: #1E4FC7 !important;
        transform: translateX(2px);
      }
      /* SERVICE 列のサブ説明 */
      .bxp-mega-svc-desc {
        display: block !important;
        font-size: 10.5px !important;
        color: #6B7385 !important;
        font-weight: 500 !important;
        letter-spacing: 0 !important;
        margin-top: 3px !important;
        line-height: 1.4 !important;
      }
      /* CTA Box (右端の最終列) */
      .bxp-mega-cta-box {
        background: linear-gradient(135deg, #f0f6ff 0%, #ffffff 60%, #eef3fb 100%) !important;
        border: 1px solid rgba(30,79,199,0.16) !important;
        border-radius: 14px !important;
        padding: 16px 14px !important;
        margin: 0 !important;
        box-shadow: 0 8px 20px -8px rgba(30,79,199,0.18);
      }
      .bxp-mega-cta-text {
        font-size: 12px !important;
        color: #3F4A60 !important;
        line-height: 1.65 !important;
        margin: 0 0 12px !important;
      }
      .bxp-mega-cta-btn {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        background: linear-gradient(135deg, #2660DB, #1E4FC7) !important;
        color: #ffffff !important;
        padding: 11px 18px !important;
        border-radius: 999px !important;
        font-size: 13px !important;
        font-weight: 800 !important;
        text-decoration: none !important;
        transition: transform 0.2s, box-shadow 0.2s !important;
        box-shadow: 0 8px 18px -4px rgba(30,79,199,0.40);
        width: 100%;
        box-sizing: border-box;
      }
      .bxp-mega-cta-btn:hover {
        transform: translateY(-2px);
        box-shadow: 0 14px 28px -6px rgba(30,79,199,0.50);
      }
      .bxp-arrow {
        display: inline-block !important;
        transition: transform 0.2s !important;
      }
      .bxp-mega-cta-btn:hover .bxp-arrow { transform: translateX(3px); }

      /* メガメニュー外の余計な要素を非表示 (業種別自動化等の旧スニペット残骸) */
      .bxp-mega-panel > *:not(.bxp-mega-inner) { display: none !important; }
      .bxp-mega-panel .bxp-mega-svc-row,
      .bxp-mega-panel .bxp-mega-bottom,
      .bxp-mega-panel .bxp-mega-pills,
      .bxp-mega-panel .bxp-mega-footer,
      .bxp-mega-inner ~ * { display: none !important; }

      /* レスポンシブ (タブレット) */
      @media (max-width: 1100px) {
        .bxp-mega-inner {
          grid-template-columns: 1fr 1fr !important;
          gap: 24px !important;
          padding: 24px !important;
        }
      }
      /* モバイル: メガメニュー無効化 + モバイルメニュー is-open 切替制御 */
      @media (max-width: 767px) {
        .bxp-mega-trigger .bxp-mega-panel { display: none !important; }
        /* 初期状態 (閉じている) */
        #mobile-menu {
          position: fixed !important;
          inset: 0 !important;
          background: #ffffff !important;
          z-index: 60 !important;
          display: flex !important;
          flex-direction: column !important;
          padding: 80px 24px 40px !important;
          overflow-y: auto !important;
          opacity: 0 !important;
          visibility: hidden !important;
          pointer-events: none !important;
          transform: translateY(-8px) !important;
          transition: opacity 0.22s ease-out, visibility 0.22s ease-out, transform 0.22s ease-out !important;
        }
        /* 開いている状態 */
        #mobile-menu.is-open {
          opacity: 1 !important;
          visibility: visible !important;
          pointer-events: auto !important;
          transform: translateY(0) !important;
        }
        /* mobile-menu-btn は最前面 */
        #mobile-menu-btn { z-index: 70 !important; position: relative; }
      }

      /* ============================================================
         Claude Code 構築支援ページ (/claude-code-setup/ page-id-2805)
         03 ABOUT セクション バランス&収まり最適化 v3 (2026-05-29)
         社長指示: アニメよりサイズ・収まり・バランス優先・PC/モバイル両対応
         ============================================================ */
      /* セクション見出し「そもそも、Claude Codeとは何か」が画面幅からはみ出ないように */
      body.page-id-2805 h2 {
        font-size: clamp(28px, 4.2vw, 48px) !important;
        line-height: 1.35 !important;
        letter-spacing: -0.01em !important;
        word-break: keep-all !important;
        overflow-wrap: anywhere !important;
      }
      /* 2カラム: 左右の高さを揃えるため stretch + minmax */
      body.page-id-2805 .about-wrap {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
        gap: 40px !important;
        align-items: stretch !important;
        max-width: 100%;
        overflow: hidden;
      }
      body.page-id-2805 .about-text {
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important; /* 短いテキストでも縦中央で高さを揃える */
      }
      @media (max-width: 980px) {
        body.page-id-2805 .about-wrap {
          grid-template-columns: 1fr !important;
          gap: 24px !important;
        }
        body.page-id-2805 .about-text { justify-content: flex-start !important; }
      }
      /* 左カラム: テキスト見出しを brand-blue アクセントで派手に */
      body.page-id-2805 .about-text h3 {
        font-size: 26px !important;
        font-weight: 800 !important;
        color: #0B1524 !important;
        line-height: 1.45 !important;
        letter-spacing: -0.008em !important;
        position: relative;
        padding-left: 18px;
        margin: 0 0 24px !important;
      }
      body.page-id-2805 .about-text h3::before {
        content: "";
        position: absolute; left: 0; top: 8px; bottom: 8px;
        width: 4px;
        background: linear-gradient(180deg, #2660DB, #5C82E8);
        border-radius: 2px;
        box-shadow: 0 0 12px rgba(30,79,199,0.35);
      }
      body.page-id-2805 .about-text p {
        font-size: 15px !important;
        line-height: 1.95 !important;
        color: #3F4A60 !important;
        margin: 0 0 16px !important;
      }
      body.page-id-2805 .about-text p b {
        background: linear-gradient(180deg, transparent 60%, rgba(30,79,199,0.18) 60%);
        color: #0B1524 !important;
        font-weight: 700 !important;
        padding: 0 2px;
      }
      body.page-id-2805 .about-card {
        background:
          radial-gradient(ellipse 100% 80% at 50% -20%, rgba(92,130,232,0.55), transparent 60%),
          linear-gradient(160deg, #050B1F 0%, #0B1524 25%, #142036 55%, #163E9C 100%) !important;
        border-radius: 24px !important;
        padding: 38px 32px 32px !important;
        position: relative;
        overflow: hidden;
        box-shadow: 0 40px 80px -24px rgba(11,21,36,0.55),
                    0 0 0 1px rgba(124,160,240,0.18) inset,
                    0 0 0 6px rgba(30,79,199,0.04);
      }
      /* 上部のスキャンライン: 左→右に流れる光 (劇的な変化を演出) */
      body.page-id-2805 .about-card::before {
        content: ""; position: absolute; top: 0; left: -100%;
        width: 100%; height: 100%;
        background:
          linear-gradient(90deg, transparent, rgba(124,160,240,0.18), transparent),
          radial-gradient(ellipse 60% 50% at 0% 0%, rgba(124,160,240,0.22), transparent 60%);
        pointer-events: none;
        animation: bxCcAboutScan 7s cubic-bezier(.4,0,.6,1) infinite;
      }
      @keyframes bxCcAboutScan {
        0%   { left: -100%; opacity: 0; }
        20%  { opacity: 1; }
        60%  { left: 100%; opacity: 1; }
        100% { left: 100%; opacity: 0; }
      }
      /* 下のラジアルグロー */
      body.page-id-2805 .about-card::after {
        content: ""; position: absolute; inset: 0;
        background:
          radial-gradient(ellipse 70% 55% at 100% 100%, rgba(46,100,235,0.28), transparent 65%),
          radial-gradient(ellipse 45% 35% at 50% 50%, rgba(124,160,240,0.10), transparent 70%);
        pointer-events: none;
        animation: bxCcAboutGlow 14s ease-in-out infinite alternate;
      }
      @keyframes bxCcAboutGlow {
        0%   { opacity: 0.85; transform: scale(1); }
        100% { opacity: 1; transform: scale(1.06); }
      }
      body.page-id-2805 .about-card .label {
        position: relative; z-index: 1;
        font-family: 'Inter', sans-serif;
        font-size: 11.5px;
        font-weight: 800;
        letter-spacing: 0.20em;
        color: #7CA0F0 !important;
        text-transform: uppercase;
        margin-bottom: 12px;
      }
      body.page-id-2805 .about-card > h4 {
        position: relative; z-index: 1;
        font-size: 22px !important;
        font-weight: 800 !important;
        color: #ffffff !important;
        margin: 0 0 24px !important;
        letter-spacing: -0.005em;
        line-height: 1.4;
      }
      body.page-id-2805 .feat-grid {
        position: relative; z-index: 1;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;  /* 12→8: カード間余白詰め */
      }
      body.page-id-2805 .feat-grid .feat {
        background: rgba(255,255,255,0.05) !important;
        border: 1px solid rgba(255,255,255,0.12) !important;
        border-radius: 12px !important;
        padding: 13px 12px 12px !important;  /* 20/16/18→13/12/12 余白タイト */
        display: flex !important; flex-direction: column !important;
        gap: 3px !important;  /* 6→3 内部詰め */
        transition: background 0.4s cubic-bezier(.2,.7,.2,1),
                    border-color 0.4s,
                    transform 0.4s cubic-bezier(.2,.7,.2,1),
                    box-shadow 0.4s !important;
        position: relative;
        overflow: hidden;
        opacity: 0;
        animation: bxCcFeatEntry 0.7s cubic-bezier(.2,.7,.2,1) both;
      }
      body.page-id-2805 .feat-grid .feat:nth-child(1) { animation-delay: 0.05s; }
      body.page-id-2805 .feat-grid .feat:nth-child(2) { animation-delay: 0.12s; }
      body.page-id-2805 .feat-grid .feat:nth-child(3) { animation-delay: 0.19s; }
      body.page-id-2805 .feat-grid .feat:nth-child(4) { animation-delay: 0.26s; }
      body.page-id-2805 .feat-grid .feat:nth-child(5) { animation-delay: 0.33s; }
      body.page-id-2805 .feat-grid .feat:nth-child(6) { animation-delay: 0.40s; }
      @keyframes bxCcFeatEntry {
        0%   { opacity: 0; transform: translateY(16px) scale(0.96); }
        100% { opacity: 1; transform: translateY(0) scale(1); }
      }
      body.page-id-2805 .feat-grid .feat::before {
        content: ""; position: absolute; top: 0; left: 0; right: 0; height: 1px;
        background: linear-gradient(90deg, transparent, rgba(124,160,240,0.6), transparent);
        opacity: 0;
        transition: opacity 0.4s;
      }
      body.page-id-2805 .feat-grid .feat:hover {
        background: linear-gradient(180deg, rgba(124,160,240,0.16), rgba(46,100,235,0.10)) !important;
        border-color: rgba(124,160,240,0.45) !important;
        transform: translateY(-4px) !important;
        box-shadow: 0 16px 32px -10px rgba(30,79,199,0.40),
                    0 0 0 1px rgba(124,160,240,0.25) inset !important;
      }
      body.page-id-2805 .feat-grid .feat:hover::before { opacity: 1; }
      body.page-id-2805 .feat-grid .feat .ic {
        width: 30px; height: 30px;  /* 38→30: アイコン小型化 */
        border-radius: 9px;
        display: inline-flex; align-items: center; justify-content: center;
        background: linear-gradient(135deg, #2660DB, #1E4FC7);
        color: #ffffff;
        margin-bottom: 2px;  /* 6→2: アイコン下余白詰め */
        box-shadow: 0 6px 14px -4px rgba(30,79,199,0.55),
                    0 0 0 1px rgba(255,255,255,0.10) inset;
        transition: transform 0.4s cubic-bezier(.34,1.4,.64,1), box-shadow 0.4s;
      }
      body.page-id-2805 .feat-grid .feat .ic svg { width: 16px !important; height: 16px !important; }
      body.page-id-2805 .feat-grid .feat:hover .ic {
        transform: scale(1.08) rotate(-3deg);
        box-shadow: 0 12px 26px -4px rgba(30,79,199,0.70),
                    0 0 0 1px rgba(255,255,255,0.18) inset;
      }
      body.page-id-2805 .feat-grid .feat .ic svg { width: 18px; height: 18px; stroke: currentColor; }
      body.page-id-2805 .feat-grid .feat b {
        color: #ffffff !important;
        font-size: 12.5px !important;
        font-weight: 800 !important;
        line-height: 1.3;
        letter-spacing: -0.005em;
        margin: 0;
      }
      body.page-id-2805 .feat-grid .feat span {
        color: rgba(255,255,255,0.70) !important;
        font-size: 10.5px !important;
        line-height: 1.4;
        font-weight: 500;
        margin: 0;
      }

      /* ChatGPT vs Claude Code 比較ブロック */
      body.page-id-2805 .compare-diagram {
        margin-top: 36px;
        background: linear-gradient(180deg, #ffffff 0%, #f5f8ff 100%);
        border: 1px solid rgba(30,79,199,0.10);
        border-radius: 22px;
        padding: 36px 28px;
        box-shadow: 0 12px 30px -10px rgba(11,21,36,0.10);
      }
      body.page-id-2805 .compare-diagram > h4 {
        font-size: 22px !important;
        font-weight: 800 !important;
        color: #0B1524 !important;
        text-align: center;
        margin: 0 0 28px !important;
        line-height: 1.4;
      }
      body.page-id-2805 .compare-diagram > h4 span {
        color: #1E4FC7 !important;
      }
      body.page-id-2805 .compare-diagram .vs-grid {
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        gap: 22px;
        align-items: stretch;
      }
      body.page-id-2805 .compare-diagram .side {
        background: #ffffff;
        border-radius: 18px;
        padding: 26px 22px;
        border: 1px solid rgba(11,21,36,0.08);
        box-shadow: 0 6px 16px -8px rgba(11,21,36,0.10);
      }
      body.page-id-2805 .compare-diagram .side.left  { border-top: 4px solid #9AA4B5; }
      body.page-id-2805 .compare-diagram .side.right { border-top: 4px solid #1E4FC7; box-shadow: 0 16px 36px -12px rgba(30,79,199,0.25); }
      body.page-id-2805 .compare-diagram .side .stitle {
        font-family: 'Inter', sans-serif;
        font-size: 10.5px;
        font-weight: 800;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        margin-bottom: 8px;
      }
      body.page-id-2805 .compare-diagram .side.left  .stitle { color: #6B7385; }
      body.page-id-2805 .compare-diagram .side.right .stitle { color: #1E4FC7; }
      body.page-id-2805 .compare-diagram .side h5 {
        font-size: 22px !important;
        font-weight: 800 !important;
        margin: 0 0 16px !important;
        letter-spacing: -0.005em;
      }
      body.page-id-2805 .compare-diagram .side.left  h5 { color: #3F4A60 !important; }
      body.page-id-2805 .compare-diagram .side.right h5 { color: #0B1524 !important; }
      body.page-id-2805 .compare-diagram .side ul {
        list-style: none; padding: 0; margin: 0;
        display: flex; flex-direction: column; gap: 10px;
      }
      body.page-id-2805 .compare-diagram .side li {
        font-size: 13px;
        line-height: 1.7;
        color: #4B5563;
        padding-left: 22px;
        position: relative;
      }
      body.page-id-2805 .compare-diagram .side.left li::before {
        content: "—";
        position: absolute; left: 0; top: 0;
        color: #9AA4B5; font-weight: 700;
      }
      body.page-id-2805 .compare-diagram .side.right li::before {
        content: "✓";
        position: absolute; left: 0; top: 0;
        color: #1E4FC7; font-weight: 800;
      }
      body.page-id-2805 .compare-diagram .side.right li b {
        color: #0B1524; font-weight: 700;
      }
      body.page-id-2805 .compare-diagram .vs-mark {
        align-self: center;
        font-family: 'Inter', sans-serif;
        font-size: 18px;
        font-weight: 900;
        letter-spacing: 0.06em;
        color: #ffffff;
        background: linear-gradient(135deg, #0B1524, #1E4FC7);
        padding: 14px 16px;
        border-radius: 999px;
        box-shadow: 0 10px 22px -6px rgba(30,79,199,0.45);
        min-width: 56px; text-align: center;
      }
      /* レスポンシブ */
      @media (max-width: 900px) {
        body.page-id-2805 .compare-diagram .vs-grid {
          grid-template-columns: 1fr;
        }
        body.page-id-2805 .compare-diagram .vs-mark { justify-self: center; }
        body.page-id-2805 .feat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
      }
      @media (max-width: 480px) {
        body.page-id-2805 .feat-grid { grid-template-columns: 1fr !important; }
      }
      .marquee-wrapper { display: flex; width: 100%; overflow: hidden; -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent); mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent); }
      .marquee-content { display: flex; width: max-content; flex-shrink: 0; gap: 2rem; }
      .bg-grid-pattern { background-image: radial-gradient(#0057D9 1px, transparent 1px); background-size: 32px 32px; opacity: 0.03; }
      .text-gradient-blue { background: linear-gradient(90deg, #0057D9 0%, #0085FF 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
      .btn-conversion-hero { background: linear-gradient(180deg, #0057D9 0%, #0041A3 100%); position: relative; overflow: hidden; transition: all 0.3s; color: #fff; }
      .btn-conversion-hero:hover { transform: translateY(-4px) scale(1.02); box-shadow: 0 8px 24px -8px rgba(0,87,217,0.35); }
      .badge-orange-strong { background: linear-gradient(135deg, #FFAA00 0%, #FF5500 100%); box-shadow: 0 2px 8px rgba(255,85,0,0.3); color: #fff; }
      .btn-service { background: linear-gradient(90deg, #0057D9 0%, #0041A3 100%); color: #fff; transition: all 0.2s; box-shadow: 0 8px 24px -8px rgba(0,87,217,0.35); }
      .btn-service:hover { transform: translateY(-2px); box-shadow: 0 16px 32px -8px rgba(0,87,217,0.45); }
      .reveal-base { opacity: 0; transform: translateY(2rem); transition: all 0.7s ease-out; }
      .reveal-active { opacity: 1; transform: translateY(0); }
    
/* ===== main.css ===== */
/* =====================================================
   BoostX Theme - Main Stylesheet
   TailwindCSS は tailwind.min.css として別途読み込み
   ===================================================== */

/* =====================================================
   CSS Variables
   ===================================================== */
:root {
    --brand-blue: #2563EB;
    --brand-darkBlue: #1D4ED8;
    --brand-navy: #0F172A;
    --brand-black: #1E293B;
    --brand-gray: #F8FAFC;
    --brand-accent: #F97316;
}

/* =====================================================
   Base Styles
   ===================================================== */
html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Noto Sans JP', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: var(--brand-black);
    line-height: 1.8;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* =====================================================
   Typography
   ===================================================== */
.font-eng {
    font-family: 'Inter', 'SF Pro Display', system-ui, sans-serif;
    font-feature-settings: 'cv01', 'cv02', 'ss01';
}

.text-gradient-blue {
    background: linear-gradient(135deg, #2563EB 0%, #3B82F6 50%, #60A5FA 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* =====================================================
   Color Classes
   ===================================================== */
.bg-brand-blue { background-color: var(--brand-blue); }
.bg-brand-darkBlue { background-color: var(--brand-darkBlue); }
.bg-brand-navy { background-color: var(--brand-navy); }
.bg-brand-black { background-color: var(--brand-black); }
.bg-brand-gray { background-color: var(--brand-gray); }
.bg-brand-accent { background-color: var(--brand-accent); }

.text-brand-blue { color: var(--brand-blue); }
.text-brand-darkBlue { color: var(--brand-darkBlue); }
.text-brand-navy { color: var(--brand-navy); }
.text-brand-black { color: var(--brand-black); }
.text-brand-accent { color: var(--brand-accent); }

.border-brand-blue { border-color: var(--brand-blue); }

/* =====================================================
   Navigation
   ===================================================== */
.nav-glass {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

/* デスクトップメニュー - 横並び (header.phpから移動) */
.desktop-nav ul {
    display: flex;
    align-items: center;
    gap: 24px;
    list-style: none;
    margin: 0;
    padding: 0;
}
.desktop-nav > ul > li {
    position: relative;
}
.desktop-nav > ul > li > a {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 24px 0;
    color: #4B5563;
    font-size: 13px;
    font-weight: 700;
    transition: color 0.2s ease;
    white-space: nowrap;
}
.desktop-nav > ul > li > a:hover {
    color: #2563EB;
}

/* デスクトップ ドロップダウン (header.phpから移動) */
.desktop-nav .menu-item-has-children > a::after {
    content: '';
    width: 0;
    height: 0;
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-top: 4px solid currentColor;
    transition: transform 0.2s ease;
    margin-left: 4px;
}
.desktop-nav .menu-item-has-children:hover > a::after {
    transform: rotate(180deg);
}
.desktop-nav .sub-menu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(10px);
    min-width: 220px;
    background: white;
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
    padding: 12px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 100;
    display: block;
}
.desktop-nav .sub-menu::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid white;
}
.desktop-nav .menu-item-has-children:hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}
.desktop-nav .sub-menu li {
    list-style: none;
}
.desktop-nav .sub-menu li a {
    display: block;
    padding: 12px 16px;
    color: #1E293B;
    font-size: 14px;
    font-weight: 600;
    border-radius: 10px;
    transition: all 0.15s ease;
}
.desktop-nav .sub-menu li a:hover {
    background: #F8FAFC;
    color: #2563EB;
}

/* モバイルメニュー (header.phpから移動) */
.mobile-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}
.mobile-menu li {
    list-style: none;
}
.mobile-menu .menu-item-has-children > a {
    display: none;
}
.mobile-dropdown-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 16px 20px;
    border-radius: 16px;
    transition: all 0.2s ease;
    font-size: 18px;
    font-weight: 700;
    color: #1E293B;
    background: none;
    border: none;
    cursor: pointer;
    text-align: left;
}
.mobile-dropdown-toggle:hover {
    background: #F8FAFC;
}
.mobile-dropdown-icon {
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    font-size: 14px;
    color: #9CA3AF;
}
.mobile-menu .menu-item-has-children.is-open .mobile-dropdown-icon {
    transform: rotate(180deg);
}
.mobile-menu .sub-menu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    list-style: none;
    padding: 0;
    margin: 0;
}
.mobile-menu .menu-item-has-children.is-open > .sub-menu {
    max-height: 500px;
}
.mobile-menu .sub-menu li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px 14px 36px;
    color: #64748B;
    font-size: 15px;
    font-weight: 500;
    border-radius: 12px;
    transition: all 0.15s ease;
}
.mobile-menu .sub-menu li a:hover {
    background: #F8FAFC;
    color: #2563EB;
}
.mobile-menu > li > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-radius: 16px;
    transition: all 0.2s ease;
    font-size: 18px;
    font-weight: 700;
    color: #1E293B;
}
.mobile-menu > li > a:hover {
    background: #F8FAFC;
}

/* =====================================================
   Buttons
   ===================================================== */
.btn-conversion-hero {
    background: linear-gradient(135deg, #2563EB 0%, #1D4ED8 100%);
    transition: all 0.3s ease;
}

.btn-conversion-hero:hover {
    background: linear-gradient(135deg, #1D4ED8 0%, #1E40AF 100%);
}

.btn-service {
    background: linear-gradient(135deg, #2563EB 0%, #3B82F6 100%);
    transition: all 0.3s ease;
}

.btn-service:hover {
    background: linear-gradient(135deg, #1D4ED8 0%, #2563EB 100%);
}

.badge-orange-strong {
    background: linear-gradient(135deg, #FF7A00 0%, #FF9500 100%);
    color: white;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

/* =====================================================
   Shadows
   ===================================================== */
.shadow-card {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
}

.shadow-card-hover {
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
}

.shadow-btn-primary {
    box-shadow: 0 8px 30px rgba(37, 99, 235, 0.35);
}

.shadow-float-cta {
    box-shadow: 0 12px 40px rgba(37, 99, 235, 0.4);
}

/* =====================================================
   Animations
   ===================================================== */
@keyframes float-slow {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-20px); }
}

.animate-float-slow {
    animation: float-slow 6s ease-in-out infinite;
}

@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.animate-marquee {
    animation: marquee 30s linear infinite;
}

@keyframes marquee-reverse {
    0% { transform: translateX(-50%); }
    100% { transform: translateX(0); }
}

.animate-marquee-reverse {
    animation: marquee-reverse 30s linear infinite;
}

/* Reveal Animation */
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}

.reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

/* =====================================================
   Marquee
   ===================================================== */
.marquee-wrapper {
    overflow: hidden;
    width: 100%;
}

.marquee-content {
    display: flex;
    width: fit-content;
    gap: 1.5rem;
}

/* =====================================================
   Floating CTA
   ===================================================== */
.visible-cta {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.hidden-cta {
    opacity: 0;
    visibility: hidden;
    transform: translateY(20px);
}

/* =====================================================
   Grid Pattern
   ===================================================== */
.bg-grid-pattern {
    background-image: 
        linear-gradient(rgba(0, 0, 0, 0.02) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0, 0, 0, 0.02) 1px, transparent 1px);
    background-size: 40px 40px;
}

/* =====================================================
   Section Label
   ===================================================== */
.section-label {
    display: inline-block;
    color: var(--brand-blue);
    font-weight: 700;
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

/* =====================================================
   Prose Styles (Article Content)
   ===================================================== */
.prose {
    color: #374151;
    line-height: 1.9;
}

/* max-w-none がTailwindで指定されている場合はそちらを優先 */
.prose:not(.max-w-none) {
    max-width: 65ch;
}

.prose h2 {
    color: var(--brand-black);
    font-weight: 700;
    font-size: 1.5rem;
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    padding-left: 1.5rem;
    border-left: 4px solid var(--brand-blue);
}

.prose h3 {
    color: var(--brand-black);
    font-weight: 700;
    font-size: 1.25rem;
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.prose p {
    margin-bottom: 1.5rem;
}

.prose ul {
    list-style: disc;
    padding-left: 1.5rem;
    margin-bottom: 1.5rem;
}

.prose li {
    margin-bottom: 0.5rem;
}

.prose a {
    color: var(--brand-blue);
    text-decoration: underline;
}

.prose a:hover {
    color: var(--brand-darkBlue);
}

.prose blockquote {
    border-left: 4px solid var(--brand-blue);
    padding-left: 1.5rem;
    color: #6B7280;
    font-style: italic;
    margin: 1.5rem 0;
}

/* =====================================================
   Blog Layout - サイドバー幅固定
   ===================================================== */
.blog-layout {
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

@media (min-width: 1024px) {
    .blog-layout {
        flex-direction: row;
        gap: 3rem;
    }
    .blog-layout > .blog-main {
        flex: 1;
        min-width: 0;
    }
    .blog-layout > .blog-sidebar {
        width: 280px;
        flex-shrink: 0;
    }
}

/* =====================================================
   Line Clamp
   ===================================================== */
.line-clamp-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-3 {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* =====================================================
   Form Styles
   ===================================================== */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
textarea,
select {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid #E5E7EB;
    border-radius: 0.5rem;
    font-size: 1rem;
    transition: border-color 0.2s, box-shadow 0.2s;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
textarea:focus,
select:focus {
    outline: none;
    border-color: var(--brand-blue);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

/* =====================================================
   Pagination
   ===================================================== */
.page-numbers {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.page-numbers li {
    list-style: none;
}

.page-numbers a,
.page-numbers span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 9999px;
    font-weight: 600;
    transition: all 0.2s;
}

.page-numbers a {
    background: white;
    border: 1px solid #E5E7EB;
    color: #6B7280;
}

.page-numbers a:hover {
    background: var(--brand-blue);
    border-color: var(--brand-blue);
    color: white;
}

.page-numbers .current {
    background: var(--brand-navy);
    border: 1px solid var(--brand-navy);
    color: white;
}

/* =====================================================
   Mobile Menu Transition
   ===================================================== */
#mobile-menu.is-open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* =====================================================
   Details/Summary (FAQ)
   ===================================================== */
details summary::-webkit-details-marker {
    display: none;
}

details[open] summary {
    border-bottom: 1px solid #F3F4F6;
}

/* =====================================================
   Responsive Utilities
   ===================================================== */
@media (max-width: 768px) {
    .hero-title {
        font-size: 3rem;
    }
    
    .marquee-content > div > div {
        min-width: 220px;
        padding: 1rem 1.5rem;
        font-size: 1rem;
    }
}

/* =====================================================
   Print Styles
   ===================================================== */
@media print {
    nav, footer, .floating-cta {
        display: none !important;
    }
    
    body {
        font-size: 12pt;
    }
    
    a {
        text-decoration: none;
        color: inherit;
    }
}

/* =====================================================
   WordPress Specific
   ===================================================== */
.wp-block-image img {
    max-width: 100%;
    height: auto;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.alignleft {
    float: left;
    margin-right: 1.5rem;
    margin-bottom: 1rem;
}

.alignright {
    float: right;
    margin-left: 1.5rem;
    margin-bottom: 1rem;
}

/* Editor Styles */
.editor-styles-wrapper {
    font-family: 'Noto Sans JP', sans-serif;
}
/* ===== tailwind-compiled.css ===== */
*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.nav-glass{border-bottom-width:1px;--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1));background-color:hsla(0,0%,100%,.95);--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.text-gradient-blue{background:linear-gradient(90deg,#0057d9,#0085ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 4px 8px rgba(0,87,217,.3))}.reveal-base{--tw-translate-y:2rem;opacity:0;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.7s;transition-timing-function:cubic-bezier(0,0,.2,1)}.reveal-active,.reveal-base{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.reveal-active{--tw-translate-y:0px;opacity:1}.btn-conversion-hero{background:linear-gradient(180deg,#0057d9,#0041a3);position:relative;overflow:hidden;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.3s}.btn-conversion-hero:hover{--tw-translate-y:-0.25rem;--tw-scale-x:1.02;--tw-scale-y:1.02;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 4px 15px rgba(0,87,217,.3);--tw-shadow-colored:0 4px 15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.badge-orange-strong{background:linear-gradient(135deg,#fa0,#f50);box-shadow:0 2px 8px rgba(255,85,0,.3)}.badge-orange-strong,.btn-service{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.btn-service{background:linear-gradient(90deg,#0057d9,#0041a3);--tw-shadow:0 4px 15px rgba(0,87,217,.3);--tw-shadow-colored:0 4px 15px var(--tw-shadow-color);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.2s}.btn-service,.btn-service:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.btn-service:hover{--tw-translate-y:-0.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.-bottom-10{bottom:-2.5rem}.-bottom-12{bottom:-3rem}.-bottom-20{bottom:-5rem}.-bottom-32{bottom:-8rem}.-bottom-48{bottom:-12rem}.-left-10{left:-2.5rem}.-left-12{left:-3rem}.-left-20{left:-5rem}.-left-32{left:-8rem}.-left-6{left:-1.5rem}.-left-\[7px\]{left:-7px}.-right-16{right:-4rem}.-right-20{right:-5rem}.-right-32{right:-8rem}.-right-4{right:-1rem}.-top-10{top:-2.5rem}.-top-16{top:-4rem}.-top-20{top:-5rem}.-top-32{top:-8rem}.-top-4{top:-1rem}.-top-40{top:-10rem}.bottom-0{bottom:0}.bottom-\[-120px\]{bottom:-120px}.left-0{left:0}.left-1\/2{left:50%}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-\[-10\%\]{right:-10%}.right-\[-2vw\]{right:-2vw}.right-\[-80px\]{right:-80px}.top-0{top:0}.top-1\/2{top:50%}.top-10{top:2.5rem}.top-2\.5{top:.625rem}.top-20{top:5rem}.top-24{top:6rem}.top-3{top:.75rem}.top-4{top:1rem}.-z-10{z-index:-10}.z-0{z-index:0}.z-10{z-index:10}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.col-span-3{grid-column:span 3/span 3}.m-0{margin:0}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-14{margin-bottom:3.5rem}.mb-16{margin-bottom:4rem}.mb-2{margin-bottom:.5rem}.mb-20{margin-bottom:5rem}.mb-24{margin-bottom:6rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-7{margin-bottom:1.75rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-3{margin-left:.75rem}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-16{margin-top:4rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-\[16\/10\]{aspect-ratio:16/10}.aspect-\[16\/9\]{aspect-ratio:16/9}.aspect-\[3\/4\]{aspect-ratio:3/4}.aspect-\[4\/3\]{aspect-ratio:4/3}.aspect-video{aspect-ratio:16/9}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-20{height:5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-36{height:9rem}.h-4{height:1rem}.h-40{height:10rem}.h-48{height:12rem}.h-5{height:1.25rem}.h-56{height:14rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[300px\]{height:300px}.h-\[400px\]{height:400px}.h-\[420px\]{height:420px}.h-\[460px\]{height:460px}.h-\[46px\]{height:46px}.h-\[500px\]{height:500px}.h-\[520px\]{height:520px}.h-\[60vh\]{height:60vh}.h-\[640px\]{height:640px}.h-\[720px\]{height:720px}.h-\[72px\]{height:72px}.h-\[820px\]{height:820px}.h-full{height:100%}.h-px{height:1px}.min-h-\[60vh\]{min-height:60vh}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-1\/4{width:25%}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-32{width:8rem}.w-36{width:9rem}.w-4{width:1rem}.w-40{width:10rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[300px\]{width:300px}.w-\[400px\]{width:400px}.w-\[420px\]{width:420px}.w-\[460px\]{width:460px}.w-\[500px\]{width:500px}.w-\[520px\]{width:520px}.w-\[640px\]{width:640px}.w-\[720px\]{width:720px}.w-\[72px\]{width:72px}.w-\[820px\]{width:820px}.w-auto{width:auto}.w-full{width:100%}.w-px{width:1px}.min-w-0{min-width:0}.min-w-\[800px\]{min-width:800px}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-\[1000px\]{max-width:1000px}.max-w-\[1100px\]{max-width:1100px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[280px\]{max-width:280px}.max-w-\[640px\]{max-width:640px}.max-w-\[700px\]{max-width:700px}.max-w-\[760px\]{max-width:760px}.max-w-\[800px\]{max-width:800px}.max-w-\[820px\]{max-width:820px}.max-w-\[860px\]{max-width:860px}.max-w-\[880px\]{max-width:880px}.max-w-\[900px\]{max-width:900px}.max-w-\[960px\]{max-width:960px}.max-w-lg{max-width:32rem}.max-w-md{max-width:28rem}.max-w-none{max-width:none}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow{flex-grow:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%}.-translate-x-1\/2,.-translate-x-1\/4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\/4{--tw-translate-x:-25%}.-translate-y-1\/2{--tw-translate-y:-50%}.-translate-y-1\/2,.-translate-y-1\/4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/4{--tw-translate-y:-25%}.translate-x-1\/2{--tw-translate-x:50%}.translate-x-1\/2,.translate-x-1\/3{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\/3{--tw-translate-x:33.333333%}.translate-y-1\/4{--tw-translate-y:25%}.transform,.translate-y-1\/4{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-10{gap:2.5rem}.gap-12{gap:3rem}.gap-16{gap:4rem}.gap-2{gap:.5rem}.gap-20{gap:5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.gap-x-6{-moz-column-gap:1.5rem;column-gap:1.5rem}.gap-x-8{-moz-column-gap:2rem;column-gap:2rem}.gap-y-12{row-gap:3rem}.gap-y-3{row-gap:.75rem}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(0px*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px*var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem*var(--tw-space-y-reverse))}.space-y-10>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem*var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem*var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem*var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem*var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem*var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(2rem*(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem*var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px*(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px*var(--tw-divide-y-reverse))}.divide-gray-100>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(243 244 246/var(--tw-divide-opacity,1))}.divide-gray-200>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(229 231 235/var(--tw-divide-opacity,1))}.divide-gray-50>:not([hidden])~:not([hidden]){--tw-divide-opacity:1;border-color:rgb(249 250 251/var(--tw-divide-opacity,1))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-3xl{border-radius:1.5rem}.rounded-\[32px\]{border-radius:32px}.rounded-\[40px\]{border-radius:40px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-t-xl{border-top-left-radius:.75rem;border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-l-4{border-left-width:4px}.border-l-\[3px\]{border-left-width:3px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-blue-100{--tw-border-opacity:1;border-color:rgb(219 234 254/var(--tw-border-opacity,1))}.border-blue-300\/20{border-color:rgba(147,197,253,.2)}.border-blue-400{--tw-border-opacity:1;border-color:rgb(96 165 250/var(--tw-border-opacity,1))}.border-blue-400\/20{border-color:rgba(96,165,250,.2)}.border-blue-500\/10{border-color:rgba(59,130,246,.1)}.border-blue-500\/20{border-color:rgba(59,130,246,.2)}.border-brand-accent\/10{border-color:rgba(249,115,22,.1)}.border-brand-blue{--tw-border-opacity:1;border-color:rgb(0 87 217/var(--tw-border-opacity,1))}.border-brand-blue\/10{border-color:rgba(0,87,217,.1)}.border-brand-blue\/20{border-color:rgba(0,87,217,.2)}.border-brand-blue\/30{border-color:rgba(0,87,217,.3)}.border-brand-navy{--tw-border-opacity:1;border-color:rgb(11 21 36/var(--tw-border-opacity,1))}.border-gray-100{--tw-border-opacity:1;border-color:rgb(243 244 246/var(--tw-border-opacity,1))}.border-gray-200{--tw-border-opacity:1;border-color:rgb(229 231 235/var(--tw-border-opacity,1))}.border-gray-300{--tw-border-opacity:1;border-color:rgb(209 213 219/var(--tw-border-opacity,1))}.border-gray-50{--tw-border-opacity:1;border-color:rgb(249 250 251/var(--tw-border-opacity,1))}.border-gray-600{--tw-border-opacity:1;border-color:rgb(75 85 99/var(--tw-border-opacity,1))}.border-gray-700{--tw-border-opacity:1;border-color:rgb(55 65 81/var(--tw-border-opacity,1))}.border-gray-800{--tw-border-opacity:1;border-color:rgb(31 41 55/var(--tw-border-opacity,1))}.border-green-100{--tw-border-opacity:1;border-color:rgb(220 252 231/var(--tw-border-opacity,1))}.border-purple-100{--tw-border-opacity:1;border-color:rgb(243 232 255/var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.border-white\/20{border-color:hsla(0,0%,100%,.2)}.border-white\/40{border-color:hsla(0,0%,100%,.4)}.border-white\/5{border-color:hsla(0,0%,100%,.05)}.bg-\[\#0a192f\]{--tw-bg-opacity:1;background-color:rgb(10 25 47/var(--tw-bg-opacity,1))}.bg-\[\#FAFAFC\]{--tw-bg-opacity:1;background-color:rgb(250 250 252/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-600{--tw-bg-opacity:1;background-color:rgb(217 119 6/var(--tw-bg-opacity,1))}.bg-blue-100{--tw-bg-opacity:1;background-color:rgb(219 234 254/var(--tw-bg-opacity,1))}.bg-blue-400\/10{background-color:rgba(96,165,250,.1)}.bg-blue-50{--tw-bg-opacity:1;background-color:rgb(239 246 255/var(--tw-bg-opacity,1))}.bg-blue-500\/10{background-color:rgba(59,130,246,.1)}.bg-blue-500\/15{background-color:rgba(59,130,246,.15)}.bg-blue-500\/20{background-color:rgba(59,130,246,.2)}.bg-blue-600{--tw-bg-opacity:1;background-color:rgb(37 99 235/var(--tw-bg-opacity,1))}.bg-blue-600\/10{background-color:rgba(37,99,235,.1)}.bg-brand-accent{--tw-bg-opacity:1;background-color:rgb(249 115 22/var(--tw-bg-opacity,1))}.bg-brand-black{--tw-bg-opacity:1;background-color:rgb(30 41 59/var(--tw-bg-opacity,1))}.bg-brand-blue{--tw-bg-opacity:1;background-color:rgb(0 87 217/var(--tw-bg-opacity,1))}.bg-brand-blue\/10{background-color:rgba(0,87,217,.1)}.bg-brand-blue\/90{background-color:rgba(0,87,217,.9)}.bg-brand-gray{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-brand-navy{--tw-bg-opacity:1;background-color:rgb(11 21 36/var(--tw-bg-opacity,1))}.bg-brand-navy\/60{background-color:rgba(11,21,36,.6)}.bg-current{background-color:currentColor}.bg-emerald-400\/80{background-color:rgba(52,211,153,.8)}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-gray-100{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.bg-gray-200{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.bg-gray-300{--tw-bg-opacity:1;background-color:rgb(209 213 219/var(--tw-bg-opacity,1))}.bg-gray-50{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.bg-green-100{--tw-bg-opacity:1;background-color:rgb(220 252 231/var(--tw-bg-opacity,1))}.bg-green-50{--tw-bg-opacity:1;background-color:rgb(240 253 244/var(--tw-bg-opacity,1))}.bg-orange-50{--tw-bg-opacity:1;background-color:rgb(255 247 237/var(--tw-bg-opacity,1))}.bg-purple-50{--tw-bg-opacity:1;background-color:rgb(250 245 255/var(--tw-bg-opacity,1))}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-rose-50{--tw-bg-opacity:1;background-color:rgb(255 241 242/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-teal-50{--tw-bg-opacity:1;background-color:rgb(240 253 250/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-violet-50{--tw-bg-opacity:1;background-color:rgb(245 243 255/var(--tw-bg-opacity,1))}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/10{background-color:hsla(0,0%,100%,.1)}.bg-white\/20{background-color:hsla(0,0%,100%,.2)}.bg-white\/5{background-color:hsla(0,0%,100%,.05)}.bg-white\/95{background-color:hsla(0,0%,100%,.95)}.bg-white\/\[0\.03\]{background-color:hsla(0,0%,100%,.03)}.bg-white\/\[0\.06\]{background-color:hsla(0,0%,100%,.06)}.bg-yellow-100{--tw-bg-opacity:1;background-color:rgb(254 249 195/var(--tw-bg-opacity,1))}.bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.bg-\[url\(\'https\:\/\/www\.transparenttextures\.com\/patterns\/cubes\.png\'\)\]{background-image:url(https://www.transparenttextures.com/patterns/cubes.png)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right,var(--tw-gradient-stops))}.from-\[\#0a192f\]{--tw-gradient-from:#0a192f var(--tw-gradient-from-position);--tw-gradient-to:rgba(10,25,47,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-100{--tw-gradient-from:#dbeafe var(--tw-gradient-from-position);--tw-gradient-to:rgba(219,234,254,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-50{--tw-gradient-from:#eff6ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(239,246,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-blue-600{--tw-gradient-from:#2563eb var(--tw-gradient-from-position);--tw-gradient-to:rgba(37,99,235,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-accent\/20{--tw-gradient-from:rgba(249,115,22,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(249,115,22,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-brand-blue\/20{--tw-gradient-from:rgba(0,87,217,.2) var(--tw-gradient-from-position);--tw-gradient-to:rgba(0,87,217,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-cyan-50{--tw-gradient-from:#ecfeff var(--tw-gradient-from-position);--tw-gradient-to:rgba(236,254,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-green-400\/30{--tw-gradient-from:rgba(74,222,128,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(74,222,128,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-indigo-50{--tw-gradient-from:#eef2ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(238,242,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-400\/30{--tw-gradient-from:rgba(192,132,252,.3) var(--tw-gradient-from-position);--tw-gradient-to:rgba(192,132,252,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.from-purple-50{--tw-gradient-from:#faf5ff var(--tw-gradient-from-position);--tw-gradient-to:rgba(250,245,255,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.via-\[\#0d2347\]{--tw-gradient-to:rgba(13,35,71,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),#0d2347 var(--tw-gradient-via-position),var(--tw-gradient-to)}.to-\[\#112d5e\]{--tw-gradient-to:#112d5e var(--tw-gradient-to-position)}.to-blue-50{--tw-gradient-to:#eff6ff var(--tw-gradient-to-position)}.to-blue-500{--tw-gradient-to:#3b82f6 var(--tw-gradient-to-position)}.to-cyan-50{--tw-gradient-to:#ecfeff var(--tw-gradient-to-position)}.to-green-50{--tw-gradient-to:#f0fdf4 var(--tw-gradient-to-position)}.to-indigo-50{--tw-gradient-to:#eef2ff var(--tw-gradient-to-position)}.to-purple-50{--tw-gradient-to:#faf5ff var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-10{padding:2.5rem}.p-12{padding:3rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-12{padding-left:3rem;padding-right:3rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-28{padding-top:7rem;padding-bottom:7rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-32{padding-top:8rem;padding-bottom:8rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:1.75rem;padding-bottom:1.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-12{padding-bottom:3rem}.pb-16{padding-bottom:4rem}.pb-2{padding-bottom:.5rem}.pb-20{padding-bottom:5rem}.pb-24{padding-bottom:6rem}.pb-3{padding-bottom:.75rem}.pb-32{padding-bottom:8rem}.pb-4{padding-bottom:1rem}.pb-6{padding-bottom:1.5rem}.pb-7{padding-bottom:1.75rem}.pb-8{padding-bottom:2rem}.pl-12{padding-left:3rem}.pl-14{padding-left:3.5rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pr-8{padding-right:2rem}.pt-0\.5{padding-top:.125rem}.pt-1{padding-top:.25rem}.pt-10{padding-top:2.5rem}.pt-12{padding-top:3rem}.pt-14{padding-top:3.5rem}.pt-16{padding-top:4rem}.pt-24{padding-top:6rem}.pt-28{padding-top:7rem}.pt-32{padding-top:8rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-8{padding-top:2rem}.pt-\[72px\]{padding-top:72px}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-justify{text-align:justify}.align-top{vertical-align:top}.font-eng{font-family:Inter,sans-serif}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-8xl{font-size:6rem;line-height:1}.text-9xl{font-size:8rem;line-height:1}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[9px\]{font-size:9px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.uppercase{text-transform:uppercase}.italic{font-style:italic}.leading-\[1\.05\]{line-height:1.05}.leading-\[1\.08\]{line-height:1.08}.leading-\[1\.1\]{line-height:1.1}.leading-\[1\.2\]{line-height:1.2}.leading-\[1\.6\]{line-height:1.6}.leading-\[1\.9\]{line-height:1.9}.leading-loose{line-height:2}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.1em\]{letter-spacing:.1em}.tracking-\[0\.25em\]{letter-spacing:.25em}.tracking-\[0\.2em\]{letter-spacing:.2em}.tracking-\[0\.35em\]{letter-spacing:.35em}.tracking-\[0\.3em\]{letter-spacing:.3em}.tracking-\[0\.4em\]{letter-spacing:.4em}.tracking-tight{letter-spacing:-.025em}.tracking-tighter{letter-spacing:-.05em}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-blue-100{--tw-text-opacity:1;color:rgb(219 234 254/var(--tw-text-opacity,1))}.text-blue-100\/60{color:rgba(219,234,254,.6)}.text-blue-200\/40{color:rgba(191,219,254,.4)}.text-blue-300{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.text-blue-300\/30{color:rgba(147,197,253,.3)}.text-blue-300\/40{color:rgba(147,197,253,.4)}.text-blue-300\/60{color:rgba(147,197,253,.6)}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-blue-700{--tw-text-opacity:1;color:rgb(29 78 216/var(--tw-text-opacity,1))}.text-brand-accent{--tw-text-opacity:1;color:rgb(249 115 22/var(--tw-text-opacity,1))}.text-brand-black{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-brand-blue{--tw-text-opacity:1;color:rgb(0 87 217/var(--tw-text-opacity,1))}.text-brand-blue\/10{color:rgba(0,87,217,.1)}.text-brand-navy{--tw-text-opacity:1;color:rgb(11 21 36/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-gray-200{--tw-text-opacity:1;color:rgb(229 231 235/var(--tw-text-opacity,1))}.text-gray-300{--tw-text-opacity:1;color:rgb(209 213 219/var(--tw-text-opacity,1))}.text-gray-400{--tw-text-opacity:1;color:rgb(156 163 175/var(--tw-text-opacity,1))}.text-gray-500{--tw-text-opacity:1;color:rgb(107 114 128/var(--tw-text-opacity,1))}.text-gray-600{--tw-text-opacity:1;color:rgb(75 85 99/var(--tw-text-opacity,1))}.text-gray-700{--tw-text-opacity:1;color:rgb(55 65 81/var(--tw-text-opacity,1))}.text-gray-800{--tw-text-opacity:1;color:rgb(31 41 55/var(--tw-text-opacity,1))}.text-gray-900{--tw-text-opacity:1;color:rgb(17 24 39/var(--tw-text-opacity,1))}.text-green-400{--tw-text-opacity:1;color:rgb(74 222 128/var(--tw-text-opacity,1))}.text-green-600{--tw-text-opacity:1;color:rgb(22 163 74/var(--tw-text-opacity,1))}.text-green-800{--tw-text-opacity:1;color:rgb(22 101 52/var(--tw-text-opacity,1))}.text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.text-purple-600{--tw-text-opacity:1;color:rgb(147 51 234/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-teal-700{--tw-text-opacity:1;color:rgb(15 118 110/var(--tw-text-opacity,1))}.text-transparent{color:transparent}.text-violet-700{--tw-text-opacity:1;color:rgb(109 40 217/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/20{color:hsla(0,0%,100%,.2)}.text-white\/45{color:hsla(0,0%,100%,.45)}.text-white\/55{color:hsla(0,0%,100%,.55)}.text-white\/70{color:hsla(0,0%,100%,.7)}.text-white\/75{color:hsla(0,0%,100%,.75)}.text-white\/85{color:hsla(0,0%,100%,.85)}.text-yellow-800{--tw-text-opacity:1;color:rgb(133 77 14/var(--tw-text-opacity,1))}.text-yellow-900{--tw-text-opacity:1;color:rgb(113 63 18/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.overline{text-decoration-line:overline}.line-through{text-decoration-line:line-through}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.opacity-\[0\.045\]{opacity:.045}.opacity-\[0\.06\]{opacity:.06}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgba(0,0,0,.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-2xl,.shadow-\[0_10px_30px_-10px_rgba\(0\2c 87\2c 217\2c 0\.55\)\]{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_10px_30px_-10px_rgba\(0\2c 87\2c 217\2c 0\.55\)\]{--tw-shadow:0 10px 30px -10px rgba(0,87,217,.55);--tw-shadow-colored:0 10px 30px -10px var(--tw-shadow-color)}.shadow-\[0_20px_50px_-15px_rgba\(0\2c 0\2c 0\2c 0\.4\)\]{--tw-shadow:0 20px 50px -15px rgba(0,0,0,.4);--tw-shadow-colored:0 20px 50px -15px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_20px_50px_-25px_rgba\(0\2c 87\2c 217\2c 0\.35\)\]{--tw-shadow:0 20px 50px -25px rgba(0,87,217,.35);--tw-shadow-colored:0 20px 50px -25px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_2px_12px_rgba\(11\2c 21\2c 36\2c 0\.04\)\]{--tw-shadow:0 2px 12px rgba(11,21,36,.04);--tw-shadow-colored:0 2px 12px var(--tw-shadow-color)}.shadow-\[0_2px_12px_rgba\(11\2c 21\2c 36\2c 0\.04\)\],.shadow-btn-primary{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-btn-primary{--tw-shadow:0 4px 15px rgba(0,87,217,.3);--tw-shadow-colored:0 4px 15px var(--tw-shadow-color)}.shadow-card{--tw-shadow:0 4px 24px rgba(0,0,0,.04);--tw-shadow-colored:0 4px 24px var(--tw-shadow-color)}.shadow-card,.shadow-lg{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgba(0,0,0,.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-blue-600\/20{--tw-shadow-color:rgba(37,99,235,.2);--tw-shadow:var(--tw-shadow-colored)}.shadow-blue-600\/30{--tw-shadow-color:rgba(37,99,235,.3);--tw-shadow:var(--tw-shadow-colored)}.shadow-brand-blue\/30{--tw-shadow-color:rgba(0,87,217,.3);--tw-shadow:var(--tw-shadow-colored)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring,.ring-1{box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color)}.ring-4{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-amber-100{--tw-ring-opacity:1;--tw-ring-color:rgb(254 243 199/var(--tw-ring-opacity,1))}.ring-blue-100{--tw-ring-opacity:1;--tw-ring-color:rgb(219 234 254/var(--tw-ring-opacity,1))}.ring-emerald-100{--tw-ring-opacity:1;--tw-ring-color:rgb(209 250 229/var(--tw-ring-opacity,1))}.ring-gray-100{--tw-ring-opacity:1;--tw-ring-color:rgb(243 244 246/var(--tw-ring-opacity,1))}.ring-rose-100{--tw-ring-opacity:1;--tw-ring-color:rgb(255 228 230/var(--tw-ring-opacity,1))}.ring-slate-200{--tw-ring-opacity:1;--tw-ring-color:rgb(226 232 240/var(--tw-ring-opacity,1))}.ring-teal-100{--tw-ring-opacity:1;--tw-ring-color:rgb(204 251 241/var(--tw-ring-opacity,1))}.ring-violet-100{--tw-ring-opacity:1;--tw-ring-color:rgb(237 233 254/var(--tw-ring-opacity,1))}.ring-white{--tw-ring-opacity:1;--tw-ring-color:rgb(255 255 255/var(--tw-ring-opacity,1))}.ring-white\/25{--tw-ring-color:hsla(0,0%,100%,.25)}.blur{--tw-blur:blur(8px)}.blur,.blur-2xl{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-2xl{--tw-blur:blur(40px)}.blur-3xl{--tw-blur:blur(64px)}.blur-3xl,.blur-\[120px\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[120px\]{--tw-blur:blur(120px)}.blur-\[140px\]{--tw-blur:blur(140px)}.blur-\[140px\],.drop-shadow{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px rgba(0,0,0,.1)) drop-shadow(0 1px 1px rgba(0,0,0,.06))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[2px\]{--tw-backdrop-blur:blur(2px)}.backdrop-blur-\[2px\],.backdrop-blur-md{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-md{--tw-backdrop-blur:blur(12px)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.backdrop-blur-sm,.backdrop-blur-xl{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.marquee-wrapper{display:flex;width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask-image:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.marquee-content{display:flex;width:-moz-max-content;width:max-content;flex-shrink:0;gap:2rem}details[open] summary~*{animation:slideDown .3s ease-in-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}#floating-cta{transition:all .5s cubic-bezier(.34,1.56,.64,1)}#floating-cta.hidden-cta{opacity:0;transform:translateY(20px) scale(.95);pointer-events:none}#floating-cta.visible-cta{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.bg-grid-pattern{background-image:radial-gradient(#0057d9 1px,transparent 0);background-size:32px 32px;opacity:.03}.section-label{font-family:Inter,sans-serif;font-weight:700;font-size:.75rem;letter-spacing:.1em;color:#0057d9;text-transform:uppercase;margin-bottom:1rem;display:block}.last\:border-b-0:last-child{border-bottom-width:0}.hover\:-translate-y-0\.5:hover{--tw-translate-y:-0.125rem}.hover\:-translate-y-0\.5:hover,.hover\:-translate-y-1:hover{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:-translate-y-1:hover{--tw-translate-y:-0.25rem}.hover\:border-brand-blue\/40:hover{border-color:rgba(0,87,217,.4)}.hover\:border-brand-navy\/40:hover{border-color:rgba(11,21,36,.4)}.hover\:border-white:hover{--tw-border-opacity:1;border-color:rgb(255 255 255/var(--tw-border-opacity,1))}.hover\:bg-\[\#0d2347\]:hover{--tw-bg-opacity:1;background-color:rgb(13 35 71/var(--tw-bg-opacity,1))}.hover\:bg-blue-500:hover{--tw-bg-opacity:1;background-color:rgb(59 130 246/var(--tw-bg-opacity,1))}.hover\:bg-brand-blue:hover{--tw-bg-opacity:1;background-color:rgb(0 87 217/var(--tw-bg-opacity,1))}.hover\:bg-brand-darkBlue:hover{--tw-bg-opacity:1;background-color:rgb(0 65 163/var(--tw-bg-opacity,1))}.hover\:bg-brand-navy:hover{--tw-bg-opacity:1;background-color:rgb(11 21 36/var(--tw-bg-opacity,1))}.hover\:bg-gray-100:hover{--tw-bg-opacity:1;background-color:rgb(243 244 246/var(--tw-bg-opacity,1))}.hover\:bg-gray-200:hover{--tw-bg-opacity:1;background-color:rgb(229 231 235/var(--tw-bg-opacity,1))}.hover\:bg-gray-50:hover{--tw-bg-opacity:1;background-color:rgb(249 250 251/var(--tw-bg-opacity,1))}.hover\:bg-white:hover{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.hover\:bg-white\/10:hover{background-color:hsla(0,0%,100%,.1)}.hover\:bg-white\/\[0\.12\]:hover{background-color:hsla(0,0%,100%,.12)}.hover\:from-blue-500:hover{--tw-gradient-from:#3b82f6 var(--tw-gradient-from-position);--tw-gradient-to:rgba(59,130,246,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.hover\:to-blue-400:hover{--tw-gradient-to:#60a5fa var(--tw-gradient-to-position)}.hover\:text-brand-blue:hover{--tw-text-opacity:1;color:rgb(0 87 217/var(--tw-text-opacity,1))}.hover\:text-brand-navy:hover{--tw-text-opacity:1;color:rgb(11 21 36/var(--tw-text-opacity,1))}.hover\:text-white:hover{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[0_18px_44px_rgba\(11\2c 21\2c 36\2c 0\.10\)\]:hover{--tw-shadow:0 18px 44px rgba(11,21,36,.1);--tw-shadow-colored:0 18px 44px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color),0 4px 6px -4px var(--tw-shadow-color)}.hover\:shadow-lg:hover,.hover\:shadow-md:hover{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:shadow-blue-500\/40:hover{--tw-shadow-color:rgba(59,130,246,.4);--tw-shadow:var(--tw-shadow-colored)}.hover\:shadow-blue-600\/40:hover{--tw-shadow-color:rgba(37,99,235,.4);--tw-shadow:var(--tw-shadow-colored)}.hover\:shadow-brand-blue\/40:hover{--tw-shadow-color:rgba(0,87,217,.4);--tw-shadow:var(--tw-shadow-colored)}.hover\:ring-blue-100:hover{--tw-ring-opacity:1;--tw-ring-color:rgb(219 234 254/var(--tw-ring-opacity,1))}.hover\:ring-white\/40:hover{--tw-ring-color:hsla(0,0%,100%,.4)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.active\:scale-95:active{--tw-scale-x:.95;--tw-scale-y:.95}.active\:scale-95:active,.group[open] .group-open\:rotate-45{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[open] .group-open\:rotate-45{--tw-rotate:45deg}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x:0.125rem}.group:hover .group-hover\:translate-x-0\.5,.group:hover .group-hover\:translate-x-1{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-1{--tw-translate-x:0.25rem}.group:hover .group-hover\:scale-105{--tw-scale-x:1.05;--tw-scale-y:1.05}.group:hover .group-hover\:scale-105,.group:hover .group-hover\:scale-\[1\.04\]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-\[1\.04\]{--tw-scale-x:1.04;--tw-scale-y:1.04}.group:hover .group-hover\:border-brand-blue{--tw-border-opacity:1;border-color:rgb(0 87 217/var(--tw-border-opacity,1))}.group:hover .group-hover\:bg-brand-blue{--tw-bg-opacity:1;background-color:rgb(0 87 217/var(--tw-bg-opacity,1))}.group:hover .group-hover\:text-brand-blue{--tw-text-opacity:1;color:rgb(0 87 217/var(--tw-text-opacity,1))}.group:hover .group-hover\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.group:hover .group-hover\:shadow-xl{--tw-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);--tw-shadow-colored:0 20px 25px -5px var(--tw-shadow-color),0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}@media (min-width:640px){.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:text-left{text-align:left}}@media (min-width:768px){.md\:sticky{position:sticky}.md\:top-32{top:8rem}.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:mb-14{margin-bottom:3.5rem}.md\:mb-16{margin-bottom:4rem}.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:hidden{display:none}.md\:w-1\/3{width:33.333333%}.md\:w-2\/3{width:66.666667%}.md\:w-2\/5{width:40%}.md\:w-3\/5{width:60%}.md\:-translate-y-4{--tw-translate-y:-1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[200px_1fr\]{grid-template-columns:200px 1fr}.md\:flex-row{flex-direction:row}.md\:items-center{align-items:center}.md\:gap-10{gap:2.5rem}.md\:border-b-0{border-bottom-width:0}.md\:border-r{border-right-width:1px}.md\:p-10{padding:2.5rem}.md\:p-12{padding:3rem}.md\:p-14{padding:3.5rem}.md\:p-16{padding:4rem}.md\:p-7{padding:1.75rem}.md\:px-10{padding-left:2.5rem;padding-right:2.5rem}.md\:px-12{padding-left:3rem;padding-right:3rem}.md\:px-7{padding-left:1.75rem;padding-right:1.75rem}.md\:py-24{padding-top:6rem;padding-bottom:6rem}.md\:py-28{padding-top:7rem;padding-bottom:7rem}.md\:py-32{padding-top:8rem;padding-bottom:8rem}.md\:py-36{padding-top:9rem;padding-bottom:9rem}.md\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.md\:pb-0{padding-bottom:0}.md\:pb-20{padding-bottom:5rem}.md\:pb-24{padding-bottom:6rem}.md\:pb-32{padding-bottom:8rem}.md\:pr-6{padding-right:1.5rem}.md\:pt-16{padding-top:4rem}.md\:pt-32{padding-top:8rem}.md\:pt-36{padding-top:9rem}.md\:text-left{text-align:left}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-4xl{font-size:2.25rem;line-height:2.5rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-6xl{font-size:3.75rem;line-height:1}.md\:text-base{font-size:1rem;line-height:1.5rem}.md\:text-lg{font-size:1.125rem;line-height:1.75rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}.md\:text-xs{font-size:.75rem;line-height:1rem}}@media (min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:gap-10{gap:2.5rem}.lg\:gap-8{gap:2rem}.lg\:p-12{padding:3rem}.lg\:py-40{padding-top:10rem;padding-bottom:10rem}.lg\:text-6xl{font-size:3.75rem;line-height:1}.lg\:text-7xl{font-size:4.5rem;line-height:1}}
/* ===== tailwind-essentials.css ===== */
/* ============================================================
   BoostX Tailwind Essentials (2026-05-29 CODEX指摘:CDN撤去)
   header.php / footer.php / 他テンプレートで使われている Tailwind utility
   classes だけを純CSSで複写。Play CDNを本番から外しても表示崩れしないように
   する代替ファイル。新規クラスを使う場合はここに追記すること。
   ============================================================ */

/* ----- レイアウト ----- */
.fixed { position: fixed; }
.absolute { position: absolute; }
.relative { position: relative; }
.sticky { position: sticky; }
.top-0 { top: 0; }
.left-0 { left: 0; }
.right-0 { right: 0; }
.inset-0 { top: 0; right: 0; bottom: 0; left: 0; }
.block { display: block; }
.inline-block { display: inline-block; }
.inline-flex { display: inline-flex; }
.flex { display: flex; }
.grid { display: grid; }
.hidden { display: none; }

.flex-col { flex-direction: column; }
.flex-row { flex-direction: row; }
.flex-wrap { flex-wrap: wrap; }
.flex-nowrap { flex-wrap: nowrap; }
.flex-shrink-0 { flex-shrink: 0; }
.flex-1 { flex: 1 1 0%; }

.items-center { align-items: center; }
.items-start { align-items: flex-start; }
.items-end { align-items: flex-end; }
.justify-center { justify-content: center; }
.justify-between { justify-content: space-between; }
.justify-around { justify-content: space-around; }
.justify-start { justify-content: flex-start; }
.justify-end { justify-content: flex-end; }

.gap-1 { gap: 0.25rem; }
.gap-2 { gap: 0.5rem; }
.gap-3 { gap: 0.75rem; }
.gap-4 { gap: 1rem; }
.gap-5 { gap: 1.25rem; }
.gap-6 { gap: 1.5rem; }
.gap-8 { gap: 2rem; }
.space-y-2 > * + * { margin-top: 0.5rem; }
.space-y-3 > * + * { margin-top: 0.75rem; }
.space-y-4 > * + * { margin-top: 1rem; }

.z-10 { z-index: 10; }
.z-20 { z-index: 20; }
.z-30 { z-index: 30; }
.z-40 { z-index: 40; }
.z-50 { z-index: 50; }

/* ----- サイズ ----- */
.w-full { width: 100%; }
.w-auto { width: auto; }
.w-screen { width: 100vw; }
.w-10 { width: 2.5rem; }
.w-12 { width: 3rem; }
.h-full { height: 100%; }
.h-screen { height: 100vh; }
.h-10 { height: 2.5rem; }
.h-12 { height: 3rem; }
.h-\[72px\] { height: 72px; }
.min-h-screen { min-height: 100vh; }
.max-w-\[1200px\] { max-width: 1200px; }
.max-w-\[1400px\] { max-width: 1400px; }
.max-w-screen-lg { max-width: 1024px; }
.max-w-screen-xl { max-width: 1280px; }
.max-w-7xl { max-width: 80rem; }

/* ----- Padding / Margin ----- */
.p-0 { padding: 0; }
.p-1 { padding: 0.25rem; }
.p-2 { padding: 0.5rem; }
.p-3 { padding: 0.75rem; }
.p-4 { padding: 1rem; }
.p-5 { padding: 1.25rem; }
.p-6 { padding: 1.5rem; }
.px-2 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
.px-4 { padding-left: 1rem; padding-right: 1rem; }
.px-5 { padding-left: 1.25rem; padding-right: 1.25rem; }
.px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
.px-8 { padding-left: 2rem; padding-right: 2rem; }
.py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
.py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-2\.5 { padding-top: 0.625rem; padding-bottom: 0.625rem; }
.py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
.py-4 { padding-top: 1rem; padding-bottom: 1rem; }
.py-5 { padding-top: 1.25rem; padding-bottom: 1.25rem; }
.py-6 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.py-8 { padding-top: 2rem; padding-bottom: 2rem; }
.pt-\[72px\] { padding-top: 72px; }
.pt-8 { padding-top: 2rem; }
.pb-8 { padding-bottom: 2rem; }
.pb-10 { padding-bottom: 2.5rem; }
.pl-4 { padding-left: 1rem; }
.pr-4 { padding-right: 1rem; }

.m-0 { margin: 0; }
.mx-auto { margin-left: auto; margin-right: auto; }
.mt-auto { margin-top: auto; }
.mt-1 { margin-top: 0.25rem; }
.mt-2 { margin-top: 0.5rem; }
.mt-3 { margin-top: 0.75rem; }
.mt-4 { margin-top: 1rem; }
.mt-8 { margin-top: 2rem; }
.mb-1 { margin-bottom: 0.25rem; }
.mb-2 { margin-bottom: 0.5rem; }
.mb-3 { margin-bottom: 0.75rem; }
.mb-4 { margin-bottom: 1rem; }
.ml-3 { margin-left: 0.75rem; }

/* ----- Typography ----- */
.text-xs { font-size: 0.75rem; line-height: 1rem; }
.text-sm { font-size: 0.875rem; line-height: 1.25rem; }
.text-base { font-size: 1rem; line-height: 1.5rem; }
.text-lg { font-size: 1.125rem; line-height: 1.75rem; }
.text-xl { font-size: 1.25rem; line-height: 1.75rem; }
.text-2xl { font-size: 1.5rem; line-height: 2rem; }
.text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
.text-\[10px\] { font-size: 10px; }
.text-\[11px\] { font-size: 11px; }
.text-\[12px\] { font-size: 12px; }
.text-\[13px\] { font-size: 13px; }
.text-\[14px\] { font-size: 14px; }
.text-\[15px\] { font-size: 15px; }

.font-normal { font-weight: 400; }
.font-medium { font-weight: 500; }
.font-semibold { font-weight: 600; }
.font-bold { font-weight: 700; }
.font-extrabold { font-weight: 800; }
.font-black { font-weight: 900; }
.font-eng { font-family: 'Inter', sans-serif; }

.tracking-tight { letter-spacing: -0.025em; }
.tracking-wide { letter-spacing: 0.025em; }
.tracking-wider { letter-spacing: 0.05em; }

.leading-tight { line-height: 1.25; }
.leading-snug { line-height: 1.375; }
.leading-normal { line-height: 1.5; }
.leading-relaxed { line-height: 1.625; }
.leading-loose { line-height: 2; }

.text-left { text-align: left; }
.text-center { text-align: center; }
.text-right { text-align: right; }

/* ----- 色: text (BoostX brand含む) ----- */
.text-white { color: #ffffff; }
.text-black { color: #000000; }
.text-brand-black { color: #1a1a1a; }
.text-brand-blue { color: #0057D9; }
.text-brand-darkBlue { color: #0041A3; }
.text-brand-accent { color: #0085FF; }
.text-brand-navy { color: #0B1524; }
.text-gray-100 { color: #f3f4f6; }
.text-gray-200 { color: #e5e7eb; }
.text-gray-300 { color: #d1d5db; }
.text-gray-400 { color: #9ca3af; }
.text-gray-500 { color: #6b7280; }
.text-gray-600 { color: #4b5563; }
.text-gray-700 { color: #374151; }
.text-gray-800 { color: #1f2937; }
.text-gray-900 { color: #111827; }

/* ----- 色: bg ----- */
.bg-white { background-color: #ffffff; }
.bg-black { background-color: #000000; }
.bg-transparent { background-color: transparent; }
.bg-brand-blue { background-color: #0057D9; }
.bg-brand-darkBlue { background-color: #0041A3; }
.bg-brand-accent { background-color: #0085FF; }
.bg-brand-navy { background-color: #0B1524; }
.bg-brand-gray { background-color: #6B7385; }
.bg-gray-50 { background-color: #f9fafb; }
.bg-gray-100 { background-color: #f3f4f6; }
.bg-gray-200 { background-color: #e5e7eb; }
.bg-gray-900 { background-color: #111827; }

/* ----- ボーダー ----- */
.border { border-width: 1px; border-style: solid; }
.border-t { border-top-width: 1px; border-top-style: solid; }
.border-b { border-bottom-width: 1px; border-bottom-style: solid; }
.border-l { border-left-width: 1px; border-left-style: solid; }
.border-r { border-right-width: 1px; border-right-style: solid; }
.border-gray-100 { border-color: #f3f4f6; }
.border-gray-200 { border-color: #e5e7eb; }
.border-gray-300 { border-color: #d1d5db; }
.border-brand-blue { border-color: #0057D9; }

/* ----- 角丸 ----- */
.rounded { border-radius: 0.25rem; }
.rounded-md { border-radius: 0.375rem; }
.rounded-lg { border-radius: 0.5rem; }
.rounded-xl { border-radius: 0.75rem; }
.rounded-2xl { border-radius: 1rem; }
.rounded-3xl { border-radius: 1.5rem; }
.rounded-full { border-radius: 9999px; }

/* ----- シャドウ ----- */
.shadow { box-shadow: 0 1px 3px 0 rgba(0,0,0,0.1), 0 1px 2px -1px rgba(0,0,0,0.1); }
.shadow-md { box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1); }
.shadow-lg { box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1); }
.shadow-xl { box-shadow: 0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1); }

/* ----- transitions ----- */
.transition { transition: all 0.15s cubic-bezier(0.4,0,0.2,1); }
.transition-colors { transition: color 0.2s, background-color 0.2s, border-color 0.2s; }
.transition-all { transition: all 0.2s; }
.transition-transform { transition: transform 0.2s; }
.duration-200 { transition-duration: 200ms; }
.duration-300 { transition-duration: 300ms; }
.ease-out { transition-timing-function: cubic-bezier(0, 0, 0.2, 1); }
.ease-in-out { transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); }

/* ----- transform ----- */
.transform { transform: translate(var(--tw-translate-x,0), var(--tw-translate-y,0)) rotate(var(--tw-rotate,0)) skewX(var(--tw-skew-x,0)) skewY(var(--tw-skew-y,0)) scaleX(var(--tw-scale-x,1)) scaleY(var(--tw-scale-y,1)); }
.translate-x-1 { transform: translateX(0.25rem); }
.scale-95 { transform: scale(0.95); }

/* ----- misc ----- */
.opacity-0 { opacity: 0; }
.opacity-50 { opacity: 0.5; }
.opacity-75 { opacity: 0.75; }
.opacity-90 { opacity: 0.9; }
.opacity-100 { opacity: 1; }
.visible { visibility: visible; }
.invisible { visibility: hidden; }
.pointer-events-none { pointer-events: none; }
.pointer-events-auto { pointer-events: auto; }
.overflow-hidden { overflow: hidden; }
.overflow-y-auto { overflow-y: auto; }
.cursor-pointer { cursor: pointer; }
.select-none { -webkit-user-select: none; user-select: none; }
.scroll-smooth { scroll-behavior: smooth; }
.antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.outline-none { outline: 2px solid transparent; outline-offset: 2px; }

/* ----- hover / focus / active ----- */
.hover\:bg-brand-blue:hover { background-color: #0057D9; }
.hover\:bg-brand-darkBlue:hover { background-color: #0041A3; }
.hover\:bg-white:hover { background-color: #ffffff; }
.hover\:bg-gray-50:hover { background-color: #f9fafb; }
.hover\:bg-gray-100:hover { background-color: #f3f4f6; }
.hover\:text-brand-blue:hover { color: #0057D9; }
.hover\:text-white:hover { color: #ffffff; }
.hover\:opacity-100:hover { opacity: 1; }
.focus\:outline-none:focus { outline: 2px solid transparent; outline-offset: 2px; }
.active\:scale-95:active { transform: scale(0.95); }

/* ----- group hover ----- */
.group:hover .group-hover\:translate-x-1 { transform: translateX(0.25rem); }
.group:hover .group-hover\:opacity-100 { opacity: 1; }
.group:hover .group-hover\:text-brand-blue { color: #0057D9; }

/* ----- responsive (md = 768px) ----- */
@media (min-width: 768px) {
  .md\:block { display: block; }
  .md\:inline-block { display: inline-block; }
  .md\:flex { display: flex; }
  .md\:hidden { display: none; }
  .md\:grid { display: grid; }
  .md\:flex-row { flex-direction: row; }
  .md\:items-center { align-items: center; }
  .md\:justify-between { justify-content: space-between; }
  .md\:text-sm { font-size: 0.875rem; }
  .md\:text-base { font-size: 1rem; }
  .md\:text-lg { font-size: 1.125rem; }
  .md\:text-xl { font-size: 1.25rem; }
}

/* ----- responsive (lg = 1024px) ----- */
@media (min-width: 1024px) {
  .lg\:block { display: block; }
  .lg\:flex { display: flex; }
  .lg\:hidden { display: none; }
}

/* ===== svc-pages.css ===== */
/* ============================================================
   Service LP - 2026-04-23 Renewal
   /ai-consulting/ と /automation/industry/* のデザイン言語を継承
   ============================================================ */
.svc-lp { font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN',-apple-system,sans-serif; color:#1E293B; line-height:1.8; font-feature-settings:"palt"; }
.svc-lp *, .svc-lp *::before, .svc-lp *::after { box-sizing:border-box; }
.svc-lp .wrap { max-width:1160px; margin:0 auto; padding:0 24px; }
.svc-lp .wrap-narrow { max-width:920px; margin:0 auto; padding:0 24px; }

/* HERO */
.svc-hero { position:relative; background:#0F172A; color:#fff; padding:120px 0 110px; overflow:hidden; }
.svc-hero::before { content:''; position:absolute; top:-200px; right:-200px; width:720px; height:720px; background:radial-gradient(circle,rgba(37,99,235,0.22) 0%,transparent 65%); border-radius:50%; pointer-events:none; }
.svc-hero::after { content:''; position:absolute; bottom:-260px; left:-180px; width:600px; height:600px; background:radial-gradient(circle,rgba(96,165,250,0.10) 0%,transparent 70%); border-radius:50%; pointer-events:none; }
.svc-hero__inner { position:relative; z-index:1; max-width:920px; }
.svc-hero__meta { display:inline-flex; align-items:center; gap:14px; margin-bottom:32px; font-family:'Inter',sans-serif; font-size:12px; font-weight:800; letter-spacing:0.28em; color:rgba(96,165,250,0.95); }
.svc-hero__meta-line { width:36px; height:1px; background:rgba(96,165,250,0.6); }
.svc-hero__quote { display:block; font-size:clamp(15px,1.7vw,18px); font-weight:600; color:rgba(255,255,255,0.78); margin-bottom:20px; line-height:1.85; letter-spacing:0.01em; }
.svc-hero__title { font-size:clamp(34px,5.4vw,60px); font-weight:900; line-height:1.22; letter-spacing:-0.03em; margin:0 0 28px; color:#fff; }
.svc-hero__title em { font-style:normal; color:#60A5FA; position:relative; }
.svc-hero__title em::after { content:''; position:absolute; left:0; right:0; bottom:-4px; height:8px; background:linear-gradient(90deg,transparent,rgba(96,165,250,0.5),transparent); filter:blur(8px); }
.svc-hero__lead { font-size:clamp(15.5px,1.8vw,18px); color:rgba(255,255,255,0.82); line-height:1.95; max-width:780px; margin:0 0 44px; font-weight:500; }
.svc-hero__lead strong { color:#fff; font-weight:800; }
.svc-hero__ctas { display:flex; flex-wrap:wrap; gap:16px; margin-bottom:56px; }
.svc-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:18px 40px; font-size:15px; font-weight:800; border-radius:12px; text-decoration:none; transition:all .3s cubic-bezier(.4,0,.2,1); letter-spacing:0.02em; cursor:pointer; border:none; white-space:nowrap; }
.svc-btn--primary { background:linear-gradient(135deg,#2563EB 0%,#1D4ED8 100%); color:#fff; box-shadow:0 10px 28px rgba(37,99,235,.28); }
.svc-btn--primary:hover { transform:translateY(-3px) scale(1.02); animation:none; box-shadow:0 18px 52px rgba(37,99,235,.6); color:#fff; }
.svc-btn--line { background:transparent; color:#fff; border:1px solid rgba(255,255,255,0.32); }
.svc-btn--line:hover { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.7); color:#fff; transform:translateY(-2px); }
.svc-btn__arrow { transition:transform .3s; }
.svc-btn:hover .svc-btn__arrow { transform:translateX(5px); }
.svc-hero__pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding-top:36px; border-top:1px solid rgba(255,255,255,0.14); max-width:820px; }
.svc-hero__pillar { display:flex; align-items:center; gap:14px; }
.svc-hero__pillar-num { flex-shrink:0; width:36px; height:36px; background:rgba(96,165,250,0.15); color:#60A5FA; border-radius:8px; display:inline-flex; align-items:center; justify-content:center; font-family:'Inter',sans-serif; font-size:13px; font-weight:900; letter-spacing:0; border:1px solid rgba(96,165,250,0.25); }
.svc-hero__pillar-text { font-size:14px; color:rgba(255,255,255,0.88); font-weight:600; line-height:1.55; letter-spacing:-0.005em; }
@media (max-width:640px) { .svc-hero__pillars { grid-template-columns:1fr; gap:14px; } }

/* SECTION 共通 */
.svc-section { padding:96px 0; position:relative; }
.svc-section--soft { background:#FAFBFD; }
.svc-section--ink { background:#0F172A; color:#fff; }
.svc-section__head { max-width:820px; margin:0 auto 60px; text-align:center; }
.svc-kicker { display:inline-flex; align-items:center; gap:10px; font-family:'Inter',sans-serif; font-size:12px; font-weight:800; letter-spacing:0.28em; text-transform:uppercase; color:#2563EB; margin-bottom:20px; }
.svc-kicker::before { content:''; width:32px; height:1px; background:#2563EB; }
.svc-section--ink .svc-kicker { color:#60A5FA; }
.svc-section--ink .svc-kicker::before { background:#60A5FA; }
.svc-title { font-size:clamp(26px,3.6vw,42px); font-weight:900; line-height:1.3; color:#0F172A; letter-spacing:-0.025em; margin:0 0 22px; }
.svc-section--ink .svc-title { color:#fff; }
.svc-title em { font-style:normal; color:#2563EB; }
.svc-section--ink .svc-title em { color:#60A5FA; }
.svc-lead { font-size:16px; color:#64748B; line-height:1.95; max-width:760px; margin:0 auto; }
.svc-section--ink .svc-lead { color:rgba(255,255,255,0.78); }

/* WHY: 3理由カード */
.svc-why-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:24px; margin-top:48px; }
.svc-why-card { background:#fff; padding:40px 32px; border-radius:16px; border:1px solid #E2E8F0; box-shadow:0 2px 12px rgba(15,23,42,.04); transition:all .3s cubic-bezier(.4,0,.2,1); position:relative; overflow:hidden; }
.svc-why-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:linear-gradient(90deg,#2563EB,#60A5FA); transform:scaleX(0); transform-origin:left; transition:transform .4s cubic-bezier(.4,0,.2,1); }
.svc-why-card:hover { transform:translateY(-6px); box-shadow:0 12px 36px rgba(15,23,42,.10); border-color:rgba(37,99,235,.3); }
.svc-why-card:hover::before { transform:scaleX(1); }
.svc-why-card__num { font-family:'Inter',sans-serif; font-size:13px; font-weight:800; color:#2563EB; letter-spacing:0.18em; margin-bottom:14px; }
.svc-why-card__title { font-size:19px; font-weight:900; color:#0F172A; line-height:1.5; margin:0 0 14px; letter-spacing:-0.01em; }
.svc-why-card__desc { font-size:14.5px; color:#64748B; line-height:1.9; margin:0; }

/* FROM CONSULTING -> ADVISOR (3-step vertical flow) */
.svc-flow-2 { display:flex; flex-direction:column; gap:0; margin-top:48px; }
.svc-flow-2__step { display:grid; grid-template-columns:80px 1fr; gap:24px; padding:32px 36px; background:#fff; border:1px solid #E2E8F0; border-radius:18px; align-items:center; box-shadow:0 4px 16px rgba(15,23,42,.05); transition:all .3s; }
.svc-flow-2__step:hover { transform:translateY(-2px); box-shadow:0 12px 32px rgba(15,23,42,.10); border-color:rgba(37,99,235,.3); }
.svc-flow-2__step--featured { border:2px solid #2563EB; background:linear-gradient(180deg,#fff 0%,#F0F7FF 100%); box-shadow:0 12px 36px rgba(37,99,235,.18); position:relative; }
.svc-flow-2__step--featured::before { content:'最も多い流れ'; position:absolute; top:-12px; left:24px; background:linear-gradient(135deg,#2563EB,#1D4ED8); color:#fff; font-size:11px; font-weight:800; padding:5px 14px; border-radius:6px; letter-spacing:.1em; box-shadow:0 4px 12px rgba(37,99,235,.3); }
.svc-flow-2__num { font-family:'Inter',sans-serif; font-size:36px; font-weight:900; color:#2563EB; line-height:1; letter-spacing:-0.04em; text-align:center; }
.svc-flow-2__step--featured .svc-flow-2__num { color:#1D4ED8; }
.svc-flow-2__title { font-size:18px; font-weight:900; color:#0F172A; margin:0 0 10px; letter-spacing:-0.01em; line-height:1.4; }
.svc-flow-2__desc { font-size:14.5px; color:#475569; line-height:1.85; margin:0; }
.svc-flow-2__desc strong { color:#1D4ED8; font-weight:800; }
.svc-flow-2__arrow { text-align:center; font-size:24px; color:#94A3B8; padding:8px 0; font-weight:300; }
.svc-flow-2-note { text-align:center; font-size:13px; color:#94A3B8; margin-top:24px; }
@media (max-width:640px) {
  .svc-flow-2__step { grid-template-columns:1fr; gap:8px; padding:24px 22px; text-align:center; }
  .svc-flow-2__num { font-size:28px; }
}

/* COMPARE CARDS (リッチな2カード比較) */
.svc-cmp-cards { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:48px; }
.svc-cmp-card { background:#fff; border:1px solid #E2E8F0; border-radius:20px; padding:36px 32px; box-shadow:0 4px 16px rgba(15,23,42,.05); transition:all .3s; position:relative; }
.svc-cmp-card:hover { transform:translateY(-4px); box-shadow:0 12px 36px rgba(15,23,42,.10); }
.svc-cmp-card--featured { border:2px solid #2563EB; background:linear-gradient(180deg,#fff 0%,#F0F7FF 100%); box-shadow:0 14px 40px rgba(37,99,235,.18); }
.svc-cmp-card__badge { position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg,#2563EB,#1D4ED8); color:#fff; font-size:11px; font-weight:800; padding:6px 16px; border-radius:100px; letter-spacing:.12em; box-shadow:0 6px 18px rgba(37,99,235,.4); white-space:nowrap; }
.svc-cmp-card__head { padding-bottom:24px; margin-bottom:24px; border-bottom:1px solid #E2E8F0; }
.svc-cmp-card__tag { display:inline-block; font-family:'Inter',sans-serif; font-size:11px; font-weight:800; color:#2563EB; letter-spacing:0.2em; margin-bottom:10px; }
.svc-cmp-card__title { font-size:22px; font-weight:900; color:#0F172A; margin:0 0 14px; letter-spacing:-0.01em; }
.svc-cmp-card__price { font-family:'Inter','Noto Sans JP',sans-serif; font-size:30px; font-weight:900; color:#0F172A; margin:0; line-height:1; letter-spacing:-0.02em; }
.svc-cmp-card__price span { font-size:13px; color:#64748B; font-weight:600; margin-left:4px; }
.svc-cmp-card__list { list-style:none; padding:0; margin:0 0 24px; display:flex; flex-direction:column; gap:14px; }
.svc-cmp-card__list li { font-size:14px; color:#1E293B; line-height:1.78; padding-left:18px; position:relative; }
.svc-cmp-card__list li::before { content:''; position:absolute; left:0; top:9px; width:6px; height:6px; background:#2563EB; border-radius:50%; }
.svc-cmp-card__list li strong { display:inline-block; min-width:64px; font-weight:800; color:#0F172A; }
.svc-cmp-card__verdict { padding:14px 18px; background:#FAFBFD; border-radius:10px; font-size:13.5px; font-weight:800; color:#475569; text-align:center; }
.svc-cmp-card--featured .svc-cmp-card__verdict { background:#fff; color:#1D4ED8; border:1px solid #DBEAFE; }
.svc-cmp-bottom { margin-top:36px; padding:24px 28px; background:#0F172A; color:#fff; border-radius:14px; text-align:center; }
.svc-cmp-bottom p { font-size:14.5px; line-height:1.85; margin:0; color:rgba(255,255,255,0.85); }
.svc-cmp-bottom strong { color:#60A5FA; font-weight:800; }
@media (max-width:900px) { .svc-cmp-cards { grid-template-columns:1fr; } }

/* PLAN GRID */
.svc-plans { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:48px; align-items:stretch; }
.svc-plan { background:#fff; border-radius:20px; border:1px solid #E2E8F0; padding:40px 32px; display:flex; flex-direction:column; box-shadow:0 2px 12px rgba(15,23,42,.04); transition:all .3s cubic-bezier(.4,0,.2,1); position:relative; }
.svc-plan:hover { transform:translateY(-6px); box-shadow:0 14px 40px rgba(15,23,42,.10); }
.svc-plan--featured { border:2px solid #2563EB; background:linear-gradient(180deg,#fff 0%,#F8FAFF 100%); box-shadow:0 14px 40px rgba(37,99,235,.18); transform:scale(1.02); }
.svc-plan--featured:hover { transform:scale(1.02) translateY(-6px); box-shadow:0 22px 56px rgba(37,99,235,.24); }
.svc-plan__badge { position:absolute; top:-14px; left:50%; transform:translateX(-50%); background:linear-gradient(135deg,#2563EB,#1D4ED8); color:#fff; font-size:11px; font-weight:800; padding:6px 18px; border-radius:100px; letter-spacing:0.12em; box-shadow:0 6px 20px rgba(37,99,235,.4); }
.svc-plan__tag { font-family:'Inter',sans-serif; font-size:12px; font-weight:800; color:#2563EB; letter-spacing:0.22em; margin-bottom:8px; }
.svc-plan__name { font-size:22px; font-weight:900; color:#0F172A; margin:0 0 10px; letter-spacing:-0.01em; }
.svc-plan__sub { font-size:13.5px; color:#64748B; margin:0 0 28px; line-height:1.7; }
.svc-plan__price { display:flex; align-items:baseline; gap:6px; padding-bottom:24px; margin-bottom:28px; border-bottom:1px solid #EEF2F7; }
.svc-plan__price-num { font-family:'Inter','Noto Sans JP',sans-serif; font-size:48px; font-weight:900; color:#0F172A; line-height:1; letter-spacing:-0.025em; }
.svc-plan__price-num small { font-size:.42em; color:#0F172A; font-weight:700; margin-left:2px; }
.svc-plan__price-unit { font-size:13px; color:#64748B; font-weight:600; }
.svc-plan__price-sm { font-size:32px; font-weight:900; color:#0F172A; line-height:1; }
.svc-plan__list { list-style:none; padding:0; margin:0 0 28px; flex:1; display:flex; flex-direction:column; gap:14px; }
.svc-plan__list li { font-size:14.5px; color:#1E293B; line-height:1.7; padding-left:28px; position:relative; }
.svc-plan__list li::before { content:''; position:absolute; left:0; top:7px; width:18px; height:18px; background:#EFF6FF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/12px no-repeat; border-radius:5px; }
.svc-plan__list li strong { font-weight:800; color:#2563EB; }
.svc-plan__suit { background:#FAFBFD; border-radius:12px; padding:18px 18px; margin-top:auto; }
.svc-plan--featured .svc-plan__suit { background:#fff; border:1px solid #DBEAFE; }
.svc-plan__suit-label { font-size:11px; font-weight:800; color:#2563EB; letter-spacing:0.12em; margin-bottom:8px; }
.svc-plan__suit p { font-size:13px; color:#475569; line-height:1.75; margin:0; }
.svc-plan__cta { display:block; text-align:center; padding:14px; margin-top:20px; background:#2563EB; color:#fff; font-weight:800; font-size:14px; border-radius:10px; text-decoration:none; transition:all .25s; letter-spacing:0.02em; }
.svc-plan__cta:hover { background:#1D4ED8; color:#fff; transform:translateY(-2px); }
.svc-plan--featured .svc-plan__cta { background:linear-gradient(135deg,#2563EB,#1D4ED8); box-shadow:0 8px 24px rgba(37,99,235,.3); }
.svc-plans-note { text-align:center; font-size:13.5px; color:#64748B; margin-top:32px; line-height:1.8; }

/* COVERAGE GRID */
.svc-cov { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:20px; margin-top:48px; }
.svc-cov__card { background:#fff; padding:32px 28px; border-radius:16px; border:1px solid #E2E8F0; box-shadow:0 2px 12px rgba(15,23,42,.04); transition:all .3s; }
.svc-cov__card:hover { transform:translateY(-4px); box-shadow:0 12px 36px rgba(15,23,42,.10); border-color:rgba(37,99,235,.25); }
.svc-cov__num { display:inline-block; font-family:'Inter',sans-serif; font-size:13px; font-weight:900; color:#2563EB; letter-spacing:0.18em; padding:6px 12px; background:#EFF6FF; border-radius:6px; margin-bottom:18px; }
.svc-cov__title { font-size:17px; font-weight:900; color:#0F172A; margin:0 0 14px; letter-spacing:-0.01em; }
.svc-cov__list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px; }
.svc-cov__list li { font-size:13.5px; color:#475569; line-height:1.65; padding-left:18px; position:relative; }
.svc-cov__list li::before { content:''; position:absolute; left:0; top:9px; width:6px; height:6px; background:#2563EB; border-radius:50%; }

/* BEFORE / AFTER */
.svc-ba { display:flex; flex-direction:column; gap:16px; margin-top:48px; }
.svc-ba__row { display:grid; grid-template-columns:1fr 56px 1fr; gap:0; align-items:stretch; }
.svc-ba__side { padding:28px 32px; border-radius:14px; }
.svc-ba__before { background:#F1F5F9; color:#64748B; }
.svc-ba__after { background:linear-gradient(180deg,#fff 0%,#F0F7FF 100%); border:1px solid #DBEAFE; box-shadow:0 4px 16px rgba(37,99,235,.10); }
.svc-ba__label { display:inline-block; font-family:'Inter',sans-serif; font-size:11px; font-weight:800; padding:5px 12px; border-radius:4px; letter-spacing:0.18em; margin-bottom:12px; }
.svc-ba__before .svc-ba__label { background:#0F172A; color:#fff; opacity:.55; }
.svc-ba__after .svc-ba__label { background:#2563EB; color:#fff; }
.svc-ba__text { font-size:15px; line-height:1.75; margin:0; }
.svc-ba__after .svc-ba__text { color:#0F172A; font-weight:600; }
.svc-ba__arrow { display:flex; align-items:center; justify-content:center; color:#2563EB; font-size:24px; font-weight:300; }

/* FLOW (steps) */
.svc-flow { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:48px; }
.svc-flow__step { background:rgba(255,255,255,0.04); padding:32px 24px; border-radius:14px; border:1px solid rgba(255,255,255,0.10); position:relative; transition:all .3s; }
.svc-flow__step:hover { background:rgba(37,99,235,0.08); border-color:rgba(96,165,250,0.4); transform:translateY(-4px); }
.svc-flow__num { font-family:'Inter',sans-serif; font-size:13px; font-weight:800; color:#60A5FA; letter-spacing:0.18em; margin-bottom:14px; }
.svc-flow__title { font-size:17px; font-weight:900; color:#fff; margin:0 0 12px; letter-spacing:-0.01em; }
.svc-flow__desc { font-size:13.5px; color:rgba(255,255,255,0.72); line-height:1.85; margin:0; }
.svc-flow__step:not(:last-child)::after { content:'→'; position:absolute; right:-14px; top:50%; transform:translateY(-50%); color:#60A5FA; font-size:18px; z-index:2; }

/* FAQ */
.svc-faq { display:flex; flex-direction:column; gap:14px; margin-top:48px; }
.svc-faq__item { background:#fff; border:1px solid #E2E8F0; border-radius:14px; box-shadow:0 2px 12px rgba(15,23,42,.04); overflow:hidden; transition:all .25s; }
.svc-faq__item:hover { border-color:rgba(37,99,235,0.25); box-shadow:0 8px 28px rgba(15,23,42,.08); }
.svc-faq__item[open] { border-color:rgba(37,99,235,0.3); }
.svc-faq__q { display:flex; gap:14px; align-items:center; padding:22px 28px; cursor:pointer; font-size:15.5px; font-weight:800; color:#0F172A; line-height:1.55; letter-spacing:-0.005em; user-select:none; list-style:none; }
.svc-faq__q::-webkit-details-marker { display:none; }
.svc-faq__icon { flex-shrink:0; width:30px; height:30px; background:#2563EB; color:#fff; border-radius:8px; display:inline-flex; align-items:center; justify-content:center; font-family:'Inter',sans-serif; font-size:13px; font-weight:800; }
.svc-faq__q-text { flex:1; }
.svc-faq__toggle { color:#2563EB; font-size:22px; font-weight:300; transition:transform .3s; line-height:1; }
.svc-faq__item[open] .svc-faq__toggle { transform:rotate(45deg); }
.svc-faq__a { display:flex; gap:14px; padding:8px 28px 26px; font-size:14.5px; color:#475569; line-height:1.95; border-top:1px solid #F1F5F9; padding-top:20px; }
.svc-faq__a .svc-faq__icon { background:#F1F5F9; color:#64748B; }
.svc-faq__a-text { flex:1; padding-top:4px; }

/* FINAL CTA */
.svc-final { position:relative; background:linear-gradient(135deg,#0F172A 0%,#1E293B 100%); color:#fff; padding:110px 0 100px; overflow:hidden; }
.svc-final::before { content:''; position:absolute; top:-200px; right:-150px; width:600px; height:600px; background:radial-gradient(circle,rgba(37,99,235,0.20) 0%,transparent 65%); border-radius:50%; pointer-events:none; }
.svc-final__inner { position:relative; z-index:1; max-width:820px; margin:0 auto; text-align:center; padding:0 24px; }
.svc-final__title { font-size:clamp(26px,3.6vw,40px); font-weight:900; line-height:1.32; color:#fff; letter-spacing:-0.025em; margin:0 0 22px; }
.svc-final__title em { font-style:normal; color:#60A5FA; }
.svc-final__lead { font-size:16px; color:rgba(255,255,255,0.82); line-height:1.95; margin:0 0 40px; }
.svc-final__ctas { display:flex; flex-wrap:wrap; gap:16px; justify-content:center; margin-bottom:24px; }
.svc-final__note { font-size:13px; color:rgba(255,255,255,0.55); margin:0; line-height:1.8; }

/* MOBILE */
@media (max-width:900px) {
  .svc-plans, .svc-flow { grid-template-columns:1fr !important; }
  .svc-plan--featured { transform:none; }
  .svc-plan--featured:hover { transform:translateY(-6px); }
  .svc-flow__step:not(:last-child)::after { content:'↓'; right:50%; top:calc(100% + 4px); transform:translateX(50%); }
  .svc-ba__row { grid-template-columns:1fr; gap:12px; }
  .svc-ba__arrow { transform:rotate(90deg); padding:0; }
  .svc-cmp { font-size:12px; }
  .svc-cmp th, .svc-cmp td { padding:12px 8px; font-size:12px; }
}
@media (max-width:640px) {
  .svc-hero { padding:80px 0 70px; }
  .svc-section, .svc-final { padding:64px 0; }
  .svc-section__head { margin-bottom:40px; }
  .svc-hero__stats { grid-template-columns:1fr; gap:20px; }
  .svc-hero__ctas { flex-direction:column; align-items:stretch; }
  .svc-btn { width:100%; }
  .svc-faq__q, .svc-faq__a { padding-left:18px; padding-right:18px; }
  .svc-cmp-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .svc-cmp { min-width:560px; }
}

/* ============================================================
   ANIMATIONS（2026-04-23 追加）
   ・ヒーロー演出（順次フェードイン）
   ・スクロールフェードイン（scroll-timeline）
   ・ホバーエフェクト
   ・CTAボタンのパルス
   ============================================================ */
@keyframes svcFadeUp {
  from { opacity:0; transform:translateY(28px); }
  to   { opacity:1; transform:translateY(0); }
}
@keyframes svcFadeIn {
  from { opacity:0; }
  to   { opacity:1; }
}
@keyframes svcScaleIn {
  from { opacity:0; transform:scale(0.94); }
  to   { opacity:1; transform:scale(1); }
}
@keyframes svcSlideLeft {
  from { opacity:0; transform:translateX(-24px); }
  to   { opacity:1; transform:translateX(0); }
}
@keyframes svcHighlight {
  0%, 100% { box-shadow:0 0 0 0 rgba(37,99,235,0); }
  50% { box-shadow:0 0 0 6px rgba(37,99,235,0.12); }
}

/* HERO - 順次登場 */
.svc-hero__meta { animation:svcFadeIn 1s ease .1s both; }
.svc-hero__quote { animation:svcSlideLeft 1s cubic-bezier(.4,0,.2,1) .25s both; }
.svc-hero__title { animation:svcFadeUp 1s cubic-bezier(.4,0,.2,1) .4s both; }
.svc-hero__title em { position:relative; display:inline-block; }
.svc-hero__title em::before {
  content:''; position:absolute; left:0; right:100%; bottom:-2px; height:3px;
  background:#60A5FA; animation:svcHeroUnderline 1.4s cubic-bezier(.4,0,.2,1) 1s forwards;
}
@keyframes svcHeroUnderline { to { right:0; } }
.svc-hero__lead { animation:svcFadeUp 1s cubic-bezier(.4,0,.2,1) .55s both; }
.svc-hero__ctas { animation:svcFadeUp 1s cubic-bezier(.4,0,.2,1) .7s both; }
.svc-hero__pillars { animation:svcFadeUp 1s cubic-bezier(.4,0,.2,1) .85s both; }
.svc-hero__pillar { transition:transform .25s ease; }
.svc-hero__pillar:hover { transform:translateX(4px); }
.svc-hero__pillar:hover .svc-hero__pillar-num { background:rgba(96,165,250,0.28); border-color:rgba(96,165,250,0.5); }

/* セクション見出し・リード：scroll-triggered */
.svc-kicker, .svc-title, .svc-lead, .svc-section__head > * {
  animation:svcFadeUp .8s cubic-bezier(.4,0,.2,1) both;
  animation-timeline:view();
  animation-range:entry 0% entry 55%;
}

/* カード系：scroll-triggered ＋ stagger */
.svc-why-card, .svc-cmp-card, .svc-plan, .svc-cov__card, .svc-ba__row, .svc-flow__step, .svc-faq__item {
  animation:svcFadeUp .7s cubic-bezier(.4,0,.2,1) both;
  animation-timeline:view();
  animation-range:entry 0% entry 50%;
}
.svc-why-card:nth-child(2), .svc-cov__card:nth-child(2), .svc-flow__step:nth-child(2), .svc-ba__row:nth-child(2) { animation-delay:.08s; }
.svc-why-card:nth-child(3), .svc-cov__card:nth-child(3), .svc-flow__step:nth-child(3), .svc-ba__row:nth-child(3) { animation-delay:.16s; }
.svc-cov__card:nth-child(4), .svc-flow__step:nth-child(4), .svc-ba__row:nth-child(4) { animation-delay:.24s; }
.svc-cov__card:nth-child(5) { animation-delay:.32s; }
.svc-cov__card:nth-child(6) { animation-delay:.4s; }

/* @supports フォールバック（古ブラウザ用） */
@supports not (animation-timeline:view()) {
  .svc-kicker, .svc-title, .svc-lead, .svc-why-card, .svc-cmp-card, .svc-plan, .svc-cov__card, .svc-ba__row, .svc-flow__step, .svc-faq__item {
    animation:svcFadeIn .6s ease both;
    opacity:1;
  }
}

/* ホバー精細化 */
.svc-why-card, .svc-cmp-card, .svc-plan, .svc-cov__card, .svc-faq__item, .svc-flow__step {
  transition:transform .35s cubic-bezier(.4,0,.2,1), box-shadow .35s cubic-bezier(.4,0,.2,1), border-color .3s ease, background .3s ease;
}
.svc-cov__card:hover .svc-cov__num { background:#2563EB; color:#fff; transition:all .3s ease; }
.svc-ba__row:hover .svc-ba__after { background:linear-gradient(180deg,#fff 0%,#DBEAFE 100%); transition:background .3s ease; }
.svc-ba__row:hover .svc-ba__arrow { transform:translateX(4px); transition:transform .3s ease; }
.svc-ba__arrow { transition:transform .3s ease; }

/* Before/After カードにスライドイン */
.svc-ba__before { animation:svcSlideLeft .7s cubic-bezier(.4,0,.2,1) both; animation-timeline:view(); animation-range:entry 0% entry 50%; }
.svc-ba__after { animation:svcFadeUp .7s cubic-bezier(.4,0,.2,1) .1s both; animation-timeline:view(); animation-range:entry 0% entry 50%; }

/* FAQ展開アニメーション */
.svc-faq__item { overflow:hidden; }
.svc-faq__q { transition:background .25s ease, padding .25s ease; }
.svc-faq__item:hover .svc-faq__q { background:#FAFBFD; }
.svc-faq__item[open] .svc-faq__q { background:#FAFBFD; }
.svc-faq__a { animation:svcFadeIn .4s ease both; }
.svc-faq__item[open] .svc-faq__icon:first-of-type { animation:svcHighlight 1.2s ease 1; }

/* プランカード「最も選ばれる」バッジにパルス */
.svc-plan--featured { animation:svcFeaturedPulse 3.5s ease-in-out infinite; }
@keyframes svcFeaturedPulse {
  0%, 100% { box-shadow:0 14px 40px rgba(37,99,235,.18); }
  50% { box-shadow:0 18px 50px rgba(37,99,235,.30); }
}
.svc-plan__badge { animation:svcBadgeFloat 2.8s ease-in-out infinite; }
@keyframes svcBadgeFloat {
  0%, 100% { transform:translateX(-50%) translateY(0); }
  50% { transform:translateX(-50%) translateY(-3px); }
}

/* 数字カウント風のカラー変化 */
.svc-plan__price-num, .svc-cmp-card__price {
  transition:color .25s ease;
}
.svc-plan:hover .svc-plan__price-num, .svc-cmp-card:hover .svc-cmp-card__price { color:#2563EB; }

/* CTAボタン矢印のバウンス */
.svc-btn:hover .svc-btn__arrow { animation:svcArrowBounce .7s ease infinite; }
@keyframes svcArrowBounce {
  0%, 100% { transform:translateX(5px); }
  50% { transform:translateX(10px); }
}

/* FINAL CTA: タイトルにハイライトフェード */
.svc-final__title em { position:relative; display:inline-block; }
.svc-final__title em::after {
  content:''; position:absolute; left:0; right:0; bottom:-4px; height:3px;
  background:linear-gradient(90deg,transparent 0%,#60A5FA 50%,transparent 100%);
  animation:svcFinalShine 2.4s ease-in-out infinite;
}
@keyframes svcFinalShine {
  0%, 100% { opacity:.4; transform:scaleX(0.8); }
  50% { opacity:1; transform:scaleX(1.05); }
}

/* スクロール全体にスムース */
html:has(.svc-lp) { scroll-behavior:smooth; }

/* リダクション設定（モーション控えめ） */
@media (prefers-reduced-motion:reduce) {
  .svc-lp *, .svc-lp *::before, .svc-lp *::after {
    animation:none !important;
    transition:none !important;
  }
}

/* ============================================================
   DIRECT ANSWER BOX (AI Overviews/SGE向け)
   ============================================================ */
.svc-direct-answer { max-width:1160px; margin:24px auto 0; padding:0 24px; }
.svc-direct-answer__text { background:#F0F7FF; border-left:4px solid #2563EB; border-radius:0 14px 14px 0; padding:20px 28px; font-size:15.5px; line-height:1.9; color:#1E293B; margin:0; box-shadow:0 4px 16px rgba(37,99,235,.06); }
.svc-direct-answer__text strong { color:#1D4ED8; font-weight:800; }
.svc-da--inline { background:#F0F7FF; border-left:4px solid #2563EB; border-radius:0 10px 10px 0; padding:16px 22px; font-size:14.5px; line-height:1.9; color:#1E293B; margin:20px auto 0; max-width:820px; text-align:left; display:block; }
.svc-da--inline strong { color:#1D4ED8; font-weight:800; }

/* ============================================================
   COMPARE TABLE (LLM/SE向けマトリクス)
   ============================================================ */
.svc-cmp-table-wrap { margin:0 0 48px; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.svc-cmp-table { width:100%; border-collapse:separate; border-spacing:0; background:#fff; border-radius:16px; overflow:hidden; box-shadow:0 8px 28px rgba(15,23,42,.06); border:1px solid #E2E8F0; }
.svc-cmp-table__caption { padding:18px 24px; background:#0F172A; color:#fff; font-size:13px; font-weight:800; letter-spacing:.06em; text-align:left; caption-side:top; }
.svc-cmp-table th, .svc-cmp-table td { padding:18px 20px; border-bottom:1px solid #EEF2F7; font-size:14px; line-height:1.75; text-align:left; vertical-align:top; }
.svc-cmp-table thead th { background:#FAFBFD; color:#0F172A; font-weight:900; font-size:13.5px; }
.svc-cmp-table thead th.is-featured { background:#2563EB; color:#fff; position:relative; }
.svc-cmp-table thead th.is-featured::before { content:'最適'; position:absolute; top:6px; right:10px; background:#FBBF24; color:#0F172A; font-size:10px; font-weight:900; padding:2px 8px; border-radius:4px; letter-spacing:.08em; }
.svc-cmp-table tbody th { background:#FAFBFD; color:#475569; font-weight:800; width:18%; }
.svc-cmp-table tbody td.is-featured { background:#F0F7FF; color:#1D4ED8; font-weight:700; }
.svc-cmp-table tr:last-child th, .svc-cmp-table tr:last-child td { border-bottom:none; }

/* ============================================================
   COMPARE CARD 追加ユーティリティ（inline-style撤去用）
   ============================================================ */
.svc-plan__cta--spaced { margin-top:18px; }
.svc-plan__cta--ink { background:#0F172A; }
.svc-plan__cta--ink:hover { background:#1E293B; }

/* ============================================================
   AUTHOR / 監修者カード（E-E-A-T可視化）
   ============================================================ */
.svc-author-section { padding:72px 0; }
.svc-author-card { background:#fff; border:1px solid #E2E8F0; border-radius:20px; padding:32px 36px; box-shadow:0 8px 28px rgba(15,23,42,.06); position:relative; }
.svc-author-card__badge { position:absolute; top:-12px; left:28px; background:#2563EB; color:#fff; font-family:'Inter',sans-serif; font-size:11px; font-weight:800; letter-spacing:.2em; padding:6px 14px; border-radius:6px; box-shadow:0 4px 12px rgba(37,99,235,.3); }
.svc-author-card__body { display:grid; grid-template-columns:80px 1fr; gap:24px; align-items:start; margin-top:8px; }
.svc-author-card__photo { width:80px; height:80px; background:linear-gradient(135deg,#2563EB 0%,#1D4ED8 100%); color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:'Inter',sans-serif; font-size:26px; font-weight:900; letter-spacing:.02em; box-shadow:0 8px 20px rgba(37,99,235,.3); flex-shrink:0; }
.svc-author-card__info { flex:1; min-width:0; }
.svc-author-card__label { font-size:12px; font-weight:800; color:#2563EB; letter-spacing:.18em; margin:0 0 6px; text-transform:uppercase; font-family:'Inter',sans-serif; }
.svc-author-card__name { font-size:22px; font-weight:900; color:#0F172A; margin:0 0 14px; letter-spacing:-0.01em; }
.svc-author-card__kana { font-size:13px; font-weight:600; color:#64748B; margin-left:8px; letter-spacing:.02em; }
.svc-author-card__desc { font-size:14px; color:#475569; line-height:1.95; margin:0 0 16px; }
.svc-author-card__tags { list-style:none; padding:0; margin:0; display:flex; flex-wrap:wrap; gap:8px; }
.svc-author-card__tags li { font-size:12px; font-weight:700; color:#2563EB; background:#EFF6FF; border:1px solid #DBEAFE; padding:4px 12px; border-radius:100px; letter-spacing:.02em; }
@media (max-width:640px) {
  .svc-author-card { padding:28px 22px; }
  .svc-author-card__body { grid-template-columns:1fr; gap:18px; text-align:center; }
  .svc-author-card__photo { margin:0 auto; }
  .svc-author-card__tags { justify-content:center; }
}

/* ============================================================
   スクロール演出 強化（scroll-timeline + reveal パターン）
   ============================================================ */
.svc-lp .svc-reveal { opacity:0; transform:translateY(32px); transition:opacity .8s cubic-bezier(.4,0,.2,1), transform .8s cubic-bezier(.4,0,.2,1); }
.svc-lp .svc-reveal.is-visible { opacity:1; transform:translateY(0); }

/* scroll-timeline 対応ブラウザ用（最新Chrome/Edge） */
@supports (animation-timeline:view()) {
  .svc-section__head, .svc-why-card, .svc-cmp-card, .svc-plan, .svc-cov__card, .svc-ba__row, .svc-flow__step, .svc-faq__item, .svc-cmp-table, .svc-author-card {
    animation:svcFadeUp .8s cubic-bezier(.4,0,.2,1) both;
    animation-timeline:view();
    animation-range:entry 5% entry 60%;
  }
  .svc-section__head > .svc-kicker { animation-delay:0s; }
  .svc-section__head > .svc-title { animation-delay:.08s; }
  .svc-section__head > .svc-lead { animation-delay:.16s; }
  /* 子要素stagger */
  .svc-why-grid > *:nth-child(1), .svc-plans > *:nth-child(1), .svc-cov > *:nth-child(1), .svc-flow > *:nth-child(1), .svc-ba > *:nth-child(1), .svc-cmp-cards > *:nth-child(1) { animation-delay:0s !important; }
  .svc-why-grid > *:nth-child(2), .svc-plans > *:nth-child(2), .svc-cov > *:nth-child(2), .svc-flow > *:nth-child(2), .svc-ba > *:nth-child(2), .svc-cmp-cards > *:nth-child(2) { animation-delay:.08s !important; }
  .svc-why-grid > *:nth-child(3), .svc-plans > *:nth-child(3), .svc-cov > *:nth-child(3), .svc-flow > *:nth-child(3), .svc-ba > *:nth-child(3) { animation-delay:.16s !important; }
  .svc-cov > *:nth-child(4), .svc-flow > *:nth-child(4), .svc-ba > *:nth-child(4) { animation-delay:.24s !important; }
  .svc-cov > *:nth-child(5) { animation-delay:.32s !important; }
  .svc-cov > *:nth-child(6) { animation-delay:.4s !important; }
}

/* Direct Answer box フェード */
.svc-direct-answer { animation:svcFadeUp .8s cubic-bezier(.4,0,.2,1) .2s both; }

/* ============================================================
   PAGE TEMPLATES 拡張ヘルパー（2026-05-29 / claude-opus-4-8）
   /reasons/ /case-study/ /company/ /contact/ をsvc-LP言語で統一
   ※svc-* の既存トークン（#0F172A / #2563EB / #60A5FA / #E2E8F0）に厳密準拠
   ============================================================ */

/* --- 本文プロローズ（ストーリー段落） --- */
.svc-prose { max-width:780px; margin:0 auto; }
.svc-prose p { font-size:16.5px; color:#475569; line-height:2.05; margin:0 0 22px; }
.svc-prose p:last-child { margin-bottom:0; }
.svc-prose p strong { color:#0F172A; font-weight:800; }
.svc-prose em { font-style:normal; color:#2563EB; font-weight:700; }
.svc-section--ink .svc-prose p { color:rgba(255,255,255,0.82); }
.svc-section--ink .svc-prose p strong { color:#fff; }
.svc-section--ink .svc-prose em { color:#60A5FA; }
.svc-prose__bridge { max-width:780px; margin:44px auto 0; padding-top:32px; border-top:1px solid #E2E8F0; font-size:clamp(18px,2.2vw,22px); font-weight:800; line-height:1.7; color:#0F172A; letter-spacing:-0.01em; }
.svc-section--ink .svc-prose__bridge { border-top-color:rgba(255,255,255,0.16); color:#fff; }

/* --- 対比チップ（戦略を立てる人 ⇄ 現場で動かす人） --- */
.svc-split { display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:14px 22px; margin:8px 0 26px; }
.svc-split__chip { font-size:clamp(17px,2.4vw,23px); font-weight:900; letter-spacing:-0.01em; color:#0F172A; padding:12px 26px; border-radius:999px; background:#fff; border:1.5px solid #E2E8F0; box-shadow:0 6px 20px rgba(15,23,42,.06); }
.svc-split__vs { display:inline-flex; align-items:center; justify-content:center; color:#2563EB; }
.svc-split__vs svg { width:30px; height:30px; stroke:#2563EB; fill:none; stroke-width:2; }

/* --- WHYカード featured + チップ（USP用拡張） --- */
.svc-why-card__title em { font-style:normal; color:#2563EB; }
.svc-why-card--featured { border:2px solid #2563EB; background:linear-gradient(180deg,#fff 0%,#F0F7FF 100%); box-shadow:0 14px 40px rgba(37,99,235,.16); }
.svc-why-card--featured::before { transform:scaleX(1); }
.svc-why-card__chips { margin-top:18px; display:flex; flex-wrap:wrap; gap:8px; }
.svc-why-card__chip { font-size:12.5px; font-weight:700; letter-spacing:.01em; color:#2563EB; background:#EFF6FF; border:1px solid #DBEAFE; padding:6px 14px; border-radius:999px; }

/* --- 導入事例：業種フィルタ（sticky） --- */
.svc-filter { position:sticky; top:0; z-index:30; background:rgba(255,255,255,0.92); backdrop-filter:saturate(180%) blur(10px); -webkit-backdrop-filter:saturate(180%) blur(10px); border-bottom:1px solid #EEF2F7; }
.svc-filter__inner { max-width:1160px; margin:0 auto; padding:14px 24px; display:flex; align-items:center; gap:10px; overflow-x:auto; scrollbar-width:none; }
.svc-filter__inner::-webkit-scrollbar { display:none; }
.svc-filter__label { display:inline-flex; align-items:center; gap:8px; font-family:'Inter',sans-serif; font-size:11px; font-weight:800; letter-spacing:.22em; text-transform:uppercase; color:#94A3B8; white-space:nowrap; margin-right:4px; }
.svc-filter__label svg { width:14px; height:14px; }
.svc-filter__chip { flex-shrink:0; padding:8px 18px; border-radius:999px; font-size:13.5px; font-weight:800; white-space:nowrap; text-decoration:none; border:1px solid #E2E8F0; background:#fff; color:#475569; transition:all .25s; }
.svc-filter__chip:hover { border-color:rgba(37,99,235,.4); color:#2563EB; }
.svc-filter__chip--active { background:#0F172A; border-color:#0F172A; color:#fff; }
@media (max-width:640px){ .svc-filter__label { display:none; } }

/* --- 導入事例：カードグリッド --- */
.svc-case-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:28px; }
.svc-case-card { display:flex; flex-direction:column; height:100%; background:#fff; border:1px solid #E2E8F0; border-radius:18px; overflow:hidden; box-shadow:0 2px 12px rgba(15,23,42,.04); transition:transform .35s cubic-bezier(.4,0,.2,1),box-shadow .35s cubic-bezier(.4,0,.2,1),border-color .3s ease; text-decoration:none; }
.svc-case-card:hover { transform:translateY(-6px); box-shadow:0 18px 44px rgba(15,23,42,.12); border-color:rgba(37,99,235,.28); }
.svc-case-card__thumb { position:relative; aspect-ratio:16/9; overflow:hidden; background:linear-gradient(135deg,#F0F7FF 0%,#fff 100%); }
.svc-case-card__thumb img { width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.4,0,.2,1); }
.svc-case-card:hover .svc-case-card__thumb img { transform:scale(1.05); }
.svc-case-card__fallback { width:100%; height:100%; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg,#0F172A 0%,#1E293B 100%); }
.svc-case-card__fallback span { font-family:'Inter',sans-serif; font-weight:900; font-size:28px; letter-spacing:.18em; color:rgba(255,255,255,0.16); }
.svc-case-card__badge { position:absolute; top:14px; left:14px; display:inline-flex; align-items:center; gap:6px; padding:6px 14px; border-radius:999px; font-size:11.5px; font-weight:800; letter-spacing:.04em; background:rgba(255,255,255,0.92); backdrop-filter:blur(6px); color:#2563EB; box-shadow:0 4px 12px rgba(15,23,42,.10); }
.svc-case-card__badge::before { content:''; width:6px; height:6px; border-radius:50%; background:currentColor; opacity:.7; }
.svc-case-card__body { display:flex; flex-direction:column; flex:1; padding:26px 26px 24px; }
.svc-case-card__meta { display:flex; align-items:center; gap:12px; font-size:12.5px; color:#94A3B8; margin-bottom:14px; }
.svc-case-card__company { font-weight:800; color:#0F172A; font-size:13.5px; }
.svc-case-card__sep { width:1px; height:12px; background:#E2E8F0; }
.svc-case-card__date { font-family:'Inter',sans-serif; letter-spacing:.04em; }
.svc-case-card__title { font-size:18px; font-weight:900; color:#0F172A; line-height:1.55; letter-spacing:-0.01em; margin:0 0 12px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; transition:color .25s; }
.svc-case-card:hover .svc-case-card__title { color:#2563EB; }
.svc-case-card__excerpt { font-size:14px; color:#64748B; line-height:1.85; margin:0 0 22px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; flex:1; }
.svc-case-card__foot { display:flex; align-items:center; justify-content:space-between; padding-top:18px; border-top:1px solid #F1F5F9; margin-top:auto; }
.svc-case-card__more { font-size:13.5px; font-weight:800; color:#2563EB; letter-spacing:.01em; }
.svc-case-card__arrow { width:34px; height:34px; border-radius:50%; background:#EFF6FF; color:#2563EB; display:inline-flex; align-items:center; justify-content:center; transition:all .3s; flex-shrink:0; }
.svc-case-card:hover .svc-case-card__arrow { background:#2563EB; color:#fff; transform:translateX(3px); }
.svc-case-card__arrow svg { width:16px; height:16px; }

/* --- 導入事例：空状態 --- */
.svc-empty { max-width:640px; margin:0 auto; text-align:center; background:#fff; border:1px solid #E2E8F0; border-radius:22px; padding:72px 40px; box-shadow:0 8px 28px rgba(15,23,42,.05); }
.svc-empty__icon { width:64px; height:64px; margin:0 auto 24px; border-radius:50%; background:#EFF6FF; color:#2563EB; display:flex; align-items:center; justify-content:center; }
.svc-empty__icon svg { width:28px; height:28px; }
.svc-empty__title { font-size:21px; font-weight:900; color:#0F172A; margin:0 0 12px; letter-spacing:-0.01em; }
.svc-empty__desc { font-size:14.5px; color:#64748B; line-height:1.9; margin:0; }

/* --- ページネーション --- */
.svc-pagination { margin-top:64px; display:flex; justify-content:center; }
.svc-pagination .nav-links { display:inline-flex; flex-wrap:wrap; gap:8px; align-items:center; }
.svc-pagination .page-numbers { display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:44px; padding:0 14px; border-radius:10px; border:1px solid #E2E8F0; background:#fff; color:#475569; font-weight:800; font-size:14px; text-decoration:none; transition:all .25s; }
.svc-pagination .page-numbers:hover { border-color:rgba(37,99,235,.4); color:#2563EB; }
.svc-pagination .page-numbers.current { background:#0F172A; border-color:#0F172A; color:#fff; }
.svc-pagination .page-numbers.dots { border:none; background:transparent; }

/* --- 会社情報テーブル --- */
.svc-info { max-width:880px; margin:0 auto; border-top:1px solid #E2E8F0; }
.svc-info__row { display:grid; grid-template-columns:220px 1fr; gap:16px 40px; padding:26px 8px; border-bottom:1px solid #E2E8F0; align-items:start; }
.svc-info__dt { font-size:13px; font-weight:800; letter-spacing:.08em; color:#2563EB; padding-top:2px; }
.svc-info__dd { font-size:15.5px; color:#1E293B; line-height:1.85; }
.svc-info__dd strong { font-weight:900; color:#0F172A; }
.svc-info__dd a { color:#2563EB; text-decoration:none; font-weight:700; }
.svc-info__dd a:hover { text-decoration:underline; }
.svc-info__list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; }
.svc-info__list li { padding-left:18px; position:relative; }
.svc-info__list li::before { content:''; position:absolute; left:0; top:11px; width:6px; height:6px; border-radius:50%; background:#2563EB; }
@media (max-width:640px){ .svc-info__row { grid-template-columns:1fr; gap:6px; padding:22px 4px; } }

/* --- お問い合わせ：2択カード --- */
.svc-choice { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.svc-choice__card { display:flex; flex-direction:column; background:#fff; border:1px solid #E2E8F0; border-radius:20px; padding:40px 36px; box-shadow:0 2px 12px rgba(15,23,42,.04); transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s ease,border-color .3s ease; }
.svc-choice__card:hover { transform:translateY(-4px); box-shadow:0 16px 40px rgba(15,23,42,.10); border-color:rgba(37,99,235,.28); }
.svc-choice__card--primary { border:2px solid #2563EB; background:linear-gradient(180deg,#fff 0%,#F0F7FF 100%); box-shadow:0 14px 40px rgba(37,99,235,.16); }
.svc-choice__top { display:flex; align-items:center; gap:12px; margin-bottom:22px; }
.svc-choice__icon { width:44px; height:44px; border-radius:12px; background:#EFF6FF; color:#2563EB; display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; }
.svc-choice__icon svg { width:22px; height:22px; }
.svc-choice__tag { font-size:12px; font-weight:800; color:#2563EB; letter-spacing:.04em; }
.svc-choice__title { font-size:23px; font-weight:900; color:#0F172A; margin:0 0 22px; letter-spacing:-0.01em; }
.svc-choice__list { list-style:none; padding:0; margin:0 0 32px; flex:1; display:flex; flex-direction:column; gap:14px; }
.svc-choice__list li { font-size:14.5px; color:#475569; line-height:1.7; padding-left:30px; position:relative; }
.svc-choice__list li::before { content:''; position:absolute; left:0; top:2px; width:20px; height:20px; background:#EFF6FF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563EB' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/12px no-repeat; border-radius:6px; }
.svc-choice__cta { display:inline-flex; align-items:center; justify-content:center; gap:10px; width:100%; padding:17px; border-radius:12px; font-size:15px; font-weight:800; text-decoration:none; transition:all .3s; letter-spacing:.02em; }
.svc-choice__cta svg { width:18px; height:18px; }
.svc-choice__cta--primary { background:linear-gradient(135deg,#2563EB,#1D4ED8); color:#fff; box-shadow:0 12px 30px rgba(37,99,235,.3); }
.svc-choice__cta--primary:hover { transform:translateY(-2px); color:#fff; box-shadow:0 16px 40px rgba(37,99,235,.4); }
.svc-choice__cta--line { background:#fff; color:#0F172A; border:1.5px solid #0F172A; }
.svc-choice__cta--line:hover { background:#0F172A; color:#fff; transform:translateY(-2px); }
@media (max-width:900px){ .svc-choice { grid-template-columns:1fr; } }

/* --- お問い合わせ：フォームカード --- */
.svc-form-card { max-width:760px; margin:0 auto; background:#fff; border:1px solid #E2E8F0; border-radius:20px; padding:40px; box-shadow:0 8px 28px rgba(15,23,42,.05); }
.svc-form-note { max-width:760px; margin:18px auto 0; text-align:center; font-size:12.5px; color:#94A3B8; line-height:1.85; }
.svc-form-note a { color:#2563EB; font-weight:700; }
.svc-contact-meta { max-width:760px; margin:0 auto; text-align:center; font-size:14px; color:#64748B; line-height:2; }
.svc-contact-meta strong { color:#0F172A; font-weight:900; }
@media (max-width:640px){ .svc-form-card { padding:24px 20px; } }


/* --- 導入事例カード：成果ピル（一覧で成果を先に見せる／実在数字のみ・2026-06-02 CODEXレビュー反映・archive＋industry両対応） --- */
.svc-case-card__result { margin:0 0 16px; padding:13px 16px; border-radius:12px; background:linear-gradient(135deg,#EAF2FF 0%,#F5F9FF 100%); border:1px solid #DCE9FB; display:flex; flex-direction:column; gap:5px; }
.svc-case-card__result-label { font-size:11.5px; font-weight:800; color:#1E3A5F; letter-spacing:.03em; }
.svc-case-card__result-val { font-size:18px; font-weight:900; color:#0057D9; line-height:1.4; letter-spacing:-.01em; }
.svc-case-card__result--text .svc-case-card__result-val { font-size:14.5px; line-height:1.6; }

/* ===== bx-lite-svc-supp.css ===== */
.svc-lp {
  --ink:#0F172A;
  --ink-2:#1E293B;
  --ink-3:#334155;
  --muted:#64748B;
  --blue:#2563EB;
  --blue-dk:#1D4ED8;
  --blue-dk2:#1E40AF;
  --blue-lt:#3B82F6;
  --blue-pale:#93C5FD;
  --blue-mist:#BFDBFE;
  --blue-tint:#DBEAFE;
  --blue-tint-2:#EFF6FF;
  --bg:#fff;
  --bg-soft:#F8FAFC;
  --bg-hero:#F4F8FF;
  --border:#E2E8F0;
  --border-2:#CBD5E1;
  --gray-50:#F8FAFC;
  --gray-100:#F1F5F9;
  --sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic Medium","Yu Gothic","Meiryo",system-ui,sans-serif;
  --serif:var(--sans);
  --mono:var(--sans);
  --maxw:1180px;
  --ease:cubic-bezier(.4,0,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --sh-card:0 1px 3px rgba(15,23,42,.06),0 4px 14px rgba(15,23,42,.06);
  --sh-hover:0 14px 32px rgba(37,99,235,.16),0 4px 12px rgba(15,23,42,.08);
  --sh-strong:0 24px 56px rgba(37,99,235,.2),0 8px 18px rgba(15,23,42,.1);
}
.svc-lp { font-family:var(--sans); color:var(--ink-2); line-height:1.95; font-feature-settings:"palt" 1,"kern" 1; background:var(--bg); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
.svc-lp *,.svc-lp *::before,.svc-lp *::after { box-sizing:border-box; }
.svc-lp img { max-width:100%; height:auto; display:block; }
.svc-lp a { color:inherit; text-decoration:none; }
.svc-lp .wrap { max-width:var(--maxw); margin:0 auto; padding:0 32px; }
.svc-lp .wrap-narrow { max-width:980px; margin:0 auto; padding:0 32px; }
.svc-hero { position:relative; padding:120px 0 96px; background:linear-gradient(180deg,var(--bg-hero) 0%,#fff 100%); color:var(--ink); border-bottom:1px solid var(--border); overflow:hidden; }
.svc-hero::after { content:''; position:absolute; top:-10%; right:-8%; width:680px; height:680px; border-radius:50%; background:radial-gradient(circle,rgba(37,99,235,.16) 0%,transparent 65%); filter:blur(56px); pointer-events:none; z-index:0; }
.svc-hero__inner { position:relative; z-index:2; max-width:1000px; margin:0 auto; }
.svc-hero__chapter,.svc-hero__meta { display:flex; gap:14px; align-items:center; margin-bottom:32px; font-size:13px; font-weight:700; letter-spacing:0.08em; color:var(--blue-dk); flex-wrap:wrap; }
.svc-hero__chapter-bar,.svc-hero__meta-line { width:32px; height:2px; background:var(--blue); flex-shrink:0; }
.svc-hero__chapter-num { color:var(--blue); font-weight:700; }
.svc-hero__quote { display:block; font-size:17px; line-height:1.85; color:var(--ink-3); font-weight:500; margin:0 0 28px; padding:4px 0 4px 16px; border-left:2px solid var(--border-2); max-width:760px; }
.svc-hero__title { font-size:clamp(36px,5.4vw,60px); font-weight:900; line-height:1.32; letter-spacing:0.005em; color:var(--ink); margin:0 0 32px; text-wrap:balance; }
.svc-hero__title em { font-style:normal; color:var(--blue); font-weight:900; background:linear-gradient(transparent 64%,rgba(37,99,235,.18) 64%,rgba(37,99,235,.18) 92%,transparent 92%); padding:0 0.04em; }
.svc-hero__lead { font-size:17px; color:var(--ink-2); line-height:2.0; max-width:740px; margin:0 0 40px; font-weight:500; }
.svc-hero__lead strong { color:var(--blue-dk); font-weight:700; }
.svc-hero__ctas { display:flex; gap:16px; flex-wrap:wrap; align-items:center; margin-bottom:64px; }
.svc-btn { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:20px 36px; border-radius:6px; font-weight:700; font-size:15px; letter-spacing:0.04em; transition:all .35s var(--ease); cursor:pointer; border:none; line-height:1; text-decoration:none; }
.svc-btn--primary { background:var(--blue); color:#fff; box-shadow:0 6px 18px rgba(37,99,235,.32),0 1px 3px rgba(37,99,235,.18); }
.svc-btn--primary:hover { background:var(--blue-dk); transform:translateY(-2px); box-shadow:0 14px 32px rgba(37,99,235,.42); }
.svc-btn--line { background:transparent; color:var(--ink); padding:18px 0; border-bottom:2px solid var(--ink); border-radius:0; }
.svc-btn--line:hover { color:var(--blue); border-color:var(--blue); gap:18px; }
.svc-btn__arrow { transition:transform .35s var(--ease); font-weight:700; }
.svc-btn:hover .svc-btn__arrow { transform:translateX(6px); }
.svc-hero__pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding-top:48px; border-top:1px solid var(--border); max-width:960px; }
.svc-hero__pillar { display:flex; align-items:flex-start; gap:18px; padding:24px 28px; background:#fff; border:1px solid var(--border); border-radius:8px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-hero__pillar:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-hero__pillar-num { flex-shrink:0; font-size:42px; font-weight:900; color:var(--blue); letter-spacing:-0.02em; line-height:1; }
.svc-hero__pillar-text { font-size:15px; color:var(--ink-2); font-weight:600; line-height:1.7; padding-top:6px; }
.svc-section { padding:120px 0; position:relative; background:var(--bg); }
.svc-section--soft { background:var(--bg-soft); }
.svc-section--pearl { background:#FAFBFE; }
.svc-section--mist { background:var(--bg-hero); }
.svc-section--ink { background:var(--ink); color:#fff; padding:120px 0; }
.svc-section--story { background:var(--bg-soft); padding:120px 0; }
.svc-section__head { max-width:880px; margin:0 auto 72px; text-align:center; }
.svc-section__head--left { text-align:left; margin-left:0; }
.svc-kicker-row { display:inline-flex; align-items:center; gap:14px; margin-bottom:20px; }
.svc-kicker__idx { font-size:13px; font-weight:800; color:var(--blue); letter-spacing:0.06em; }
.svc-kicker__bar { width:32px; height:2px; background:var(--blue); }
.svc-kicker { font-size:14px; font-weight:800; color:var(--blue); letter-spacing:0.06em; display:inline-flex; align-items:center; gap:14px; }
.svc-kicker::before { content:''; display:inline-block; width:32px; height:2px; background:var(--blue); }
.svc-section--ink .svc-kicker__idx,.svc-section--ink .svc-kicker { color:var(--blue-pale); }
.svc-section--ink .svc-kicker::before,.svc-section--ink .svc-kicker__bar { background:var(--blue-pale); }
.svc-title { font-size:clamp(30px,4.2vw,44px); font-weight:900; line-height:1.36; color:var(--ink); margin:0 0 24px; text-wrap:balance; }
.svc-title em { font-style:normal; color:var(--blue); font-weight:900; background:linear-gradient(transparent 64%,rgba(37,99,235,.18) 64%,rgba(37,99,235,.18) 92%,transparent 92%); padding:0 0.04em; }
.svc-section--ink .svc-title { color:#fff; }
.svc-section--ink .svc-title em { color:var(--blue-pale); background:linear-gradient(transparent 64%,rgba(147,197,253,.22) 64%,rgba(147,197,253,.22) 92%,transparent 92%); }
.svc-lead { font-size:16px; color:var(--ink-2); line-height:2.0; max-width:760px; margin:0 auto; font-weight:500; }
.svc-section--ink .svc-lead { color:#fff; }
.svc-story { position:relative; }
.svc-story::before { content:''; position:absolute; top:200px; left:50%; width:2px; height:calc(100% - 400px); background:linear-gradient(180deg,transparent 0%,var(--blue-pale) 8%,var(--blue-pale) 92%,transparent 100%); transform:translateX(-50%); pointer-events:none; }
.svc-story__timeline { position:relative; max-width:920px; margin:0 auto; padding:32px 0; }
.svc-story__moment { position:relative; display:grid; grid-template-columns:1fr 80px 1fr; align-items:start; margin-bottom:48px; }
.svc-story__moment::before { content:''; position:absolute; top:28px; left:50%; width:14px; height:14px; background:var(--blue); border:3px solid #fff; border-radius:50%; transform:translateX(-50%); z-index:2; box-shadow:0 0 0 4px var(--bg-soft),0 2px 8px rgba(37,99,235,.32); }
.svc-story__moment:nth-child(odd) .svc-story__time { grid-column:1; text-align:right; padding-right:48px; }
.svc-story__moment:nth-child(odd) .svc-story__scene { grid-column:3; padding-left:48px; }
.svc-story__moment:nth-child(even) .svc-story__time { grid-column:3; text-align:left; padding-left:48px; }
.svc-story__moment:nth-child(even) .svc-story__scene { grid-column:1; padding-right:48px; text-align:right; }
.svc-story__time { font-size:38px; font-weight:900; color:var(--blue); letter-spacing:-0.02em; line-height:1; padding-top:6px; }
.svc-story__time-meta { display:block; font-size:13px; font-weight:700; color:var(--blue-dk); letter-spacing:0.04em; margin-top:12px; }
.svc-story__scene { background:#fff; border:1px solid var(--border); border-radius:8px; padding:24px 28px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-story__moment:hover .svc-story__scene { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-story__scene-title { font-size:19px; font-weight:800; color:var(--ink); margin:0 0 12px; line-height:1.5; }
.svc-story__scene-body { font-size:16px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-story__punch { max-width:880px; margin:96px auto 0; font-size:clamp(22px,2.8vw,30px); font-weight:800; color:var(--ink); line-height:1.7; text-align:center; padding:48px 32px; background:#fff; border:1px solid var(--border); border-radius:8px; border-top:4px solid var(--blue); box-shadow:var(--sh-card); text-wrap:balance; }
.svc-why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-why-card { padding:36px 30px 32px; background:#fff; border:1px solid var(--border); border-radius:8px; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-why-card::before { content:''; position:absolute; left:0; top:0; height:4px; width:100%; background:linear-gradient(90deg,var(--blue) 0%,var(--blue-lt) 100%); transform:scaleX(.24); transform-origin:left; transition:transform .4s var(--ease); }
.svc-why-card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-5px); }
.svc-why-card:hover::before { transform:scaleX(1); }
.svc-why-card__num { display:flex; flex-direction:column; gap:8px; line-height:1; margin-bottom:18px; }
.svc-why-card__num-label { font-size:12px; font-weight:800; color:var(--blue); letter-spacing:0.08em; }
.svc-why-card__num-digit { font-size:56px; font-weight:900; color:var(--ink); line-height:1; letter-spacing:-0.02em; transition:color .3s var(--ease); }
.svc-why-card:hover .svc-why-card__num-digit { color:var(--blue); }
.svc-why-card__title { font-size:19px; font-weight:800; color:var(--ink); line-height:1.5; margin:0 0 14px; }
.svc-why-card__desc { font-size:15.5px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-cov__card { background:#fff; border:1px solid var(--border); border-radius:8px; padding:32px 28px; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-cov__card::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleY(0); transform-origin:top; transition:transform .4s var(--ease); }
.svc-cov__card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-cov__card:hover::before { transform:scaleY(1); }
.svc-cov__num { display:inline-block; font-size:42px; font-weight:900; color:var(--blue); line-height:1; margin-bottom:16px; letter-spacing:-0.02em; }
.svc-cov__title { font-size:18px; font-weight:800; color:var(--ink); margin:0 0 14px; line-height:1.5; }
.svc-cov__desc { font-size:15px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov__note { margin-top:48px; background:linear-gradient(135deg,#fff 0%,var(--bg-hero) 100%); border:1px solid var(--border); border-left:4px solid var(--blue); border-radius:8px; padding:32px 36px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; box-shadow:var(--sh-card); }
.svc-cov__note-main { flex:1; min-width:340px; }
.svc-cov__note-title { font-size:18px; font-weight:800; color:var(--blue-dk); margin:0 0 10px; }
.svc-cov__note-body { font-size:15px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov__note-cta { flex-shrink:0; display:inline-flex; align-items:center; gap:12px; background:var(--blue); color:#fff; padding:16px 28px; border-radius:6px; font-size:14px; font-weight:700; letter-spacing:0.04em; text-decoration:none; transition:all .35s var(--ease); box-shadow:0 4px 12px rgba(37,99,235,.28); }
.svc-cov__note-cta:hover { background:var(--blue-dk); transform:translateY(-2px); box-shadow:0 10px 24px rgba(37,99,235,.4); }
.svc-ba { display:flex; flex-direction:column; gap:20px; margin-top:64px; }
.svc-ba__row { display:grid; grid-template-columns:1fr 64px 1fr; align-items:stretch; padding:36px 32px; background:#fff; border:1px solid var(--border); border-radius:10px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-ba__row:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-ba__task-head { grid-column:1 / -1; display:flex; align-items:center; gap:18px; margin-bottom:24px; padding-bottom:20px; border-bottom:1px dashed var(--border-2); }
.svc-ba__task-num { display:inline-flex; align-items:center; gap:8px; background:var(--blue); color:#fff; padding:8px 16px; border-radius:6px; font-size:13px; font-weight:800; line-height:1; box-shadow:0 4px 12px rgba(37,99,235,.32); }
.svc-ba__task-num-label,.svc-ba__task-num-digit { color:#fff; font-weight:800; }
.svc-ba__task-num-label { font-size:11px; }
.svc-ba__task-num-digit { font-size:14px; }
.svc-ba__task-text { font-size:20px; font-weight:900; color:var(--ink); line-height:1.4; }
.svc-ba__side { padding:24px 28px; border-radius:8px; display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:120px; text-align:center; }
.svc-ba__before { background:linear-gradient(135deg,#F8FAFC 0%,#EEF2F7 100%); border:1px solid var(--border-2); position:relative; overflow:hidden; }
.svc-ba__before::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:#CBD5E1; }
.svc-ba__after { background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dk) 60%,var(--blue-dk2) 100%); border:none; position:relative; overflow:hidden; box-shadow:0 8px 22px rgba(37,99,235,.22); }
.svc-ba__after::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%); pointer-events:none; }
.svc-ba__label { font-size:12px; font-weight:800; letter-spacing:0.12em; margin-bottom:12px; }
.svc-ba__before .svc-ba__label { color:var(--muted); }
.svc-ba__after .svc-ba__label { color:rgba(255,255,255,.92); }
.svc-ba__text { font-size:24px; font-weight:900; line-height:1.25; margin:0; letter-spacing:-0.005em; }
.svc-ba__before .svc-ba__text { color:var(--ink-3); text-decoration:line-through; text-decoration-color:rgba(100,116,139,.45); text-decoration-thickness:2px; }
.svc-ba__after .svc-ba__text { color:#fff; }
.svc-ba__arrow { display:flex; align-items:center; justify-content:center; color:var(--blue); font-size:36px; font-weight:900; transition:all .35s var(--ease); }
.svc-ba__row:hover .svc-ba__arrow { transform:translateX(8px); color:var(--blue-dk); }
.svc-ba__total { margin-top:32px; background:linear-gradient(135deg,var(--ink) 0%,var(--blue-dk2) 100%); border-radius:10px; padding:40px 44px; text-align:center; box-shadow:0 14px 32px rgba(15,23,42,.22); }
.svc-ba__total-label { font-size:13px; font-weight:800; color:var(--blue-pale); letter-spacing:0.1em; margin-bottom:14px; }
.svc-ba__total-value { font-size:clamp(34px,4.6vw,48px); font-weight:900; color:#fff; line-height:1.2; letter-spacing:-0.02em; }
.svc-ba__total-value small { font-size:.5em; color:var(--blue-pale); font-weight:700; margin-left:8px; }
.svc-pitfalls { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-pitfall { background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; padding:32px 28px; transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-pitfall::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--blue-pale) 0%,var(--blue-mist) 100%); transform:scaleY(.32); transform-origin:top; transition:transform .4s var(--ease); }
.svc-pitfall:hover { background:rgba(255,255,255,.08); border-color:rgba(147,197,253,.5); transform:translateY(-3px); }
.svc-pitfall:hover::before { transform:scaleY(1); }
.svc-pitfall__head { display:flex; flex-direction:column; gap:14px; margin-bottom:22px; padding-bottom:18px; border-bottom:1px solid rgba(147,197,253,.2); }
.svc-pitfall__num { display:inline-flex; align-items:baseline; gap:8px; font-size:13px; font-weight:800; color:var(--blue-pale); letter-spacing:0.04em; line-height:1; }
.svc-pitfall__num span { color:#fff; font-size:18px; font-weight:900; }
.svc-pitfall__title { font-size:18px; font-weight:800; color:#fff; margin:0; line-height:1.55; }
.svc-pitfall__body { display:flex; flex-direction:column; gap:18px; }
.svc-pitfall__col-head { display:flex; align-items:baseline; gap:10px; margin-bottom:6px; }
.svc-pitfall__col-mark { font-size:14px; font-weight:800; }
.svc-pitfall__col--cause .svc-pitfall__col-mark { color:#FCA5A5; }
.svc-pitfall__col--fix .svc-pitfall__col-mark { color:var(--blue-pale); }
.svc-pitfall__col-label { font-size:13px; font-weight:800; letter-spacing:0.04em; }
.svc-pitfall__col--cause .svc-pitfall__col-label { color:#FCA5A5; }
.svc-pitfall__col--fix .svc-pitfall__col-label { color:var(--blue-pale); }
.svc-pitfall__col-text { font-size:14.5px; color:#fff; line-height:1.85; margin:0; font-weight:500; }
.svc-voices { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-voice-card { background:#fff; border:1px solid var(--border); border-radius:8px; padding:36px 30px 30px; box-shadow:var(--sh-card); transition:all .35s var(--ease); display:flex; flex-direction:column; position:relative; overflow:hidden; }
.svc-voice-card::before { content:''; position:absolute; left:0; top:0; width:4px; height:100%; background:linear-gradient(180deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleY(.32); transform-origin:top; transition:transform .4s var(--ease); }
.svc-voice-card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-4px); }
.svc-voice-card:hover::before { transform:scaleY(1); }
.svc-voice-card__mark { position:absolute; top:20px; right:28px; font-size:64px; line-height:1; color:var(--blue); opacity:.14; font-weight:900; pointer-events:none; }
.svc-voice-card__body { font-size:16px; color:var(--ink); line-height:1.9; margin:24px 0 28px; flex:1; font-weight:500; }
.svc-voice-card__meta { display:flex; flex-direction:column; gap:10px; padding-top:22px; border-top:1px solid var(--gray-100); }
.svc-voice-card__persona { font-size:13.5px; color:var(--muted); font-weight:700; letter-spacing:0.02em; }
.svc-voice-card__metric { display:inline-flex; align-items:center; gap:8px; width:fit-content; font-size:14px; color:var(--blue-dk); font-weight:800; padding:6px 12px; background:var(--blue-tint); border:1px solid var(--blue-pale); border-radius:4px; letter-spacing:0.02em; }
.svc-voice-card__metric::before { content:'↑'; color:var(--blue); }
.svc-vision__timeline { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-vision__stage { padding:40px 32px; background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-vision__stage::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue-pale) 0%,var(--blue-mist) 100%); transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); }
.svc-vision__stage:hover { background:rgba(255,255,255,.07); border-color:rgba(147,197,253,.5); transform:translateY(-4px); }
.svc-vision__stage:hover::before { transform:scaleX(1); }
.svc-vision__stage-dot { display:none; }
.svc-vision__stage-label { font-size:12.5px; font-weight:800; color:var(--blue-pale); letter-spacing:0.06em; margin-bottom:18px; }
.svc-vision__stage-num { font-size:56px; font-weight:900; color:#fff; line-height:1; letter-spacing:-0.02em; margin:0 0 22px; }
.svc-vision__stage-num small { font-size:.36em; color:var(--blue-pale); font-weight:700; margin-left:6px; }
.svc-vision__stage-title { font-size:19px; font-weight:800; color:#fff; margin:0 0 14px; line-height:1.5; }
.svc-vision__stage-body { font-size:15px; color:#fff; line-height:1.9; margin:0; font-weight:500; }
.svc-plans { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; align-items:stretch; }
.svc-plan { background:#fff; border:1px solid var(--border); border-radius:10px; padding:40px 30px 30px; display:flex; flex-direction:column; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-plan::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleX(.3); transform-origin:left; transition:transform .4s var(--ease); }
.svc-plan:hover { border-color:var(--blue-pale); box-shadow:var(--sh-strong); transform:translateY(-6px); }
.svc-plan:hover::before { transform:scaleX(1); }
.svc-plan__idx { font-size:13px; font-weight:800; color:var(--muted); letter-spacing:0.06em; margin-bottom:10px; }
.svc-plan__tag { font-size:13px; font-weight:800; color:var(--blue); letter-spacing:0.04em; margin-bottom:14px; display:inline-flex; align-items:center; gap:10px; }
.svc-plan__tag::before { content:''; width:24px; height:2px; background:var(--blue); }
.svc-plan__name { font-size:24px; font-weight:900; color:var(--ink); margin:0 0 14px; line-height:1.4; }
.svc-plan__sub { font-size:15px; color:var(--ink-2); margin:0 0 28px; line-height:1.8; font-weight:500; }
.svc-plan__price { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px; padding-bottom:26px; margin-bottom:26px; border-bottom:1px solid var(--gray-100); }
.svc-plan__price-num { font-size:42px; font-weight:900; color:var(--ink); line-height:1; letter-spacing:-0.02em; transition:color .35s var(--ease); }
.svc-plan__price-num small { font-size:.4em; color:var(--ink); font-weight:700; margin-left:4px; }
.svc-plan:hover .svc-plan__price-num { color:var(--blue); }
.svc-plan__price-unit { font-size:13px; color:var(--muted); font-weight:600; line-height:1.6; width:100%; margin-top:8px; }
.svc-plan__for { background:var(--bg-soft); border-left:3px solid var(--blue); border-radius:4px; padding:18px 22px; margin-bottom:24px; }
.svc-plan__block-label { font-size:12.5px; font-weight:800; color:var(--blue); letter-spacing:0.04em; margin-bottom:12px; }
.svc-plan__block-label--accent { color:var(--blue-dk); }
.svc-plan__for-text { font-size:14px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-plan__block { margin-bottom:24px; }
.svc-plan__block-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:12px; }
.svc-plan__block-list li { font-size:14.5px; color:var(--ink-2); line-height:1.7; padding-left:24px; position:relative; font-weight:500; }
.svc-plan__block-list li::before { content:''; position:absolute; left:0; top:7px; width:14px; height:14px; background:var(--blue-tint); border:1.5px solid var(--blue); border-radius:50%; }
.svc-plan__block-list li::after { content:''; position:absolute; left:4px; top:13px; width:6px; height:3px; border-left:1.5px solid var(--blue); border-bottom:1.5px solid var(--blue); transform:rotate(-45deg); }
.svc-plan__cta { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:18px 28px; margin-top:auto; background:var(--blue); color:#fff; font-weight:800; font-size:14px; letter-spacing:0.04em; border-radius:6px; transition:all .35s var(--ease); box-shadow:0 4px 12px rgba(37,99,235,.28); }
.svc-plan__cta:hover { background:var(--blue-dk); transform:translateY(-1px); box-shadow:0 12px 28px rgba(37,99,235,.42); }
.svc-plan__cta-arrow { transition:transform .35s var(--ease); }
.svc-plan__cta:hover .svc-plan__cta-arrow { transform:translateX(6px); }
.svc-plans-note { text-align:center; font-size:14px; color:var(--ink-2); margin-top:40px; line-height:1.9; font-weight:500; }
.svc-flow { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:64px; position:relative; }
.svc-flow__step { background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; padding:32px 24px; transition:all .35s var(--ease); position:relative; overflow:visible; }
.svc-flow__step::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue-pale) 0%,var(--blue-mist) 100%); border-radius:8px 8px 0 0; transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); }
.svc-flow__step:not(:last-child)::after { content:'→'; position:absolute; right:-26px; top:46px; width:32px; height:32px; display:flex; align-items:center; justify-content:center; font-size:18px; font-weight:700; color:var(--blue-pale); background:var(--ink); border:1px solid rgba(147,197,253,.4); border-radius:50%; z-index:5; }
.svc-flow__step:hover { background:rgba(96,165,250,.12); border-color:rgba(147,197,253,.5); transform:translateY(-3px); }
.svc-flow__step:hover::before { transform:scaleX(1); }
.svc-flow__num { display:flex; flex-direction:column; gap:10px; margin-bottom:24px; line-height:1; }
.svc-flow__num-label { font-size:12px; font-weight:800; color:var(--blue-pale); letter-spacing:0.06em; }
.svc-flow__num-digit { font-size:48px; font-weight:900; color:#fff; line-height:1; letter-spacing:-0.02em; }
.svc-flow__title { font-size:18px; font-weight:800; color:#fff; margin:0 0 14px; line-height:1.5; }
.svc-flow__desc { font-size:14.5px; color:#fff; line-height:1.9; margin:0; font-weight:500; }
.svc-faq { max-width:920px; margin:64px auto 0; display:flex; flex-direction:column; gap:14px; }
.svc-faq__item { background:#fff; border:1px solid var(--border); border-radius:8px; overflow:hidden; transition:all .35s var(--ease); box-shadow:var(--sh-card); }
.svc-faq__item:hover { border-color:var(--blue-pale); }
.svc-faq__item[open] { border-color:var(--blue); box-shadow:var(--sh-hover); }
.svc-faq__q { padding:24px 28px; display:flex; align-items:center; gap:18px; cursor:pointer; font-size:17px; font-weight:800; color:var(--ink); list-style:none; line-height:1.55; }
.svc-faq__q::-webkit-details-marker { display:none; }
.svc-faq__icon { flex-shrink:0; width:36px; height:36px; background:var(--blue-tint); color:var(--blue-dk); border:1px solid var(--blue-pale); border-radius:6px; display:inline-flex; align-items:center; justify-content:center; font-size:15px; font-weight:900; }
.svc-faq__item[open] .svc-faq__icon { background:var(--blue); color:#fff; border-color:var(--blue); }
.svc-faq__q-text { flex:1; }
.svc-faq__chevron { transition:transform .3s var(--ease); color:var(--muted); font-size:14px; font-weight:700; }
.svc-faq__item[open] .svc-faq__chevron { transform:rotate(180deg); color:var(--blue); }
.svc-faq__a { display:flex; gap:18px; padding:6px 28px 24px; font-size:15.5px; color:var(--ink-2); line-height:1.95; font-weight:500; }
.svc-faq__a-icon { flex-shrink:0; width:36px; height:36px; background:var(--ink); color:#fff; border-radius:6px; display:inline-flex; align-items:center; justify-content:center; font-size:15px; font-weight:900; }
.svc-faq__a-text { flex:1; padding-top:4px; }
.svc-final { position:relative; background:var(--ink); color:#fff; padding:120px 0 104px; overflow:hidden; }
.svc-final::before { content:''; position:absolute; top:-320px; left:50%; transform:translateX(-50%); width:1100px; height:1100px; background:radial-gradient(circle,rgba(96,165,250,.22) 0%,transparent 60%); border-radius:50%; pointer-events:none; }
.svc-final__inner { position:relative; z-index:1; max-width:920px; margin:0 auto; text-align:center; padding:0 32px; }
.svc-final__title { font-size:clamp(32px,4.6vw,46px); font-weight:900; line-height:1.36; color:#fff; margin:24px 0 28px; text-wrap:balance; }
.svc-final__title em { font-style:normal; color:var(--blue-pale); font-weight:900; background:linear-gradient(transparent 64%,rgba(147,197,253,.24) 64%,rgba(147,197,253,.24) 92%,transparent 92%); padding:0 0.04em; }
.svc-final__lead { font-size:16px; color:#fff; line-height:2.0; margin:0 auto 44px; max-width:760px; font-weight:500; }
.svc-final__points { display:flex; justify-content:center; flex-wrap:wrap; margin:44px 0 48px; padding:0; border-top:1px solid rgba(147,197,253,.32); border-bottom:1px solid rgba(147,197,253,.32); }
.svc-final__point { display:flex; flex-direction:column; align-items:center; gap:10px; padding:32px 48px; border-right:1px solid rgba(147,197,253,.24); }
.svc-final__point:last-child { border-right:none; }
.svc-final__point-num { font-size:42px; font-weight:900; color:var(--blue-pale); line-height:1; letter-spacing:-0.02em; }
.svc-final__point-num small { font-size:.4em; color:var(--blue-mist); font-weight:700; margin-left:6px; }
.svc-final__point-label { font-size:13px; color:#fff; font-weight:700; letter-spacing:0.04em; }
.svc-final__ctas { display:flex; flex-wrap:wrap; gap:18px; justify-content:center; align-items:center; margin-bottom:30px; }
.svc-final__ctas .svc-btn--primary { background:var(--blue); color:#fff; }
.svc-final__ctas .svc-btn--primary:hover { background:var(--blue-dk); }
.svc-final__ctas .svc-btn--line { color:#fff; border-bottom-color:#fff; }
.svc-final__ctas .svc-btn--line:hover { color:var(--blue-pale); border-bottom-color:var(--blue-pale); }
.svc-final__note { font-size:14px; color:#fff; line-height:1.9; font-weight:500; margin:0; }
.svc-section--ink,.svc-section--ink *,
.svc-final,.svc-final *,
.svc-pitfalls *,.svc-vision__timeline *,.svc-flow *,
.svc-ba__total,.svc-ba__total * {
  color:#fff !important;
}
.svc-btn--primary, .svc-btn--primary *,
.svc-plan__cta, .svc-plan__cta *,
.svc-cov__note-cta, .svc-cov__note-cta *,
.svc-final__ctas .svc-btn--primary, .svc-final__ctas .svc-btn--primary *,
.svc-btn--primary .svc-btn__arrow,
.svc-plan__cta .svc-plan__cta-arrow,
.svc-cov__note-cta .svc-btn__arrow {
  color:#fff !important;
}
@keyframes svcRise { from { transform:translateY(24px); opacity:0; } to { transform:translateY(0); opacity:1; } }
@keyframes svcSlideRight { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcSlideLeft { from { transform:translateX(32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcZoomIn { from { transform:scale(.92); opacity:0; } to { transform:scale(1); opacity:1; } }
@keyframes svcExpandX { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes svcExpandY { from { transform:scaleY(0); } to { transform:scaleY(1); } }
@keyframes svcGlowPulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.78; transform:scale(1.06); } }
@keyframes svcDotPulse { 0%,100% { box-shadow:0 0 0 5px var(--bg),0 2px 6px rgba(37,99,235,.2); } 50% { box-shadow:0 0 0 5px var(--bg),0 0 0 10px rgba(37,99,235,.18),0 4px 14px rgba(37,99,235,.32); } }
@keyframes svcArrowSlide { 0%,100% { transform:translateX(0); } 50% { transform:translateX(5px); } }
@keyframes svcCounterIn { 0% { transform:translateY(40px); opacity:0; } 100% { transform:translateY(0); opacity:1; } }
@keyframes svcGlowFadeIn { from { opacity:0; transform:scale(.7); } to { opacity:1; transform:scale(1); } }
@keyframes svcGridFade { from { opacity:0; } to { opacity:1; } }
@keyframes svcHeroTitleIn { from { transform:translateY(40px); opacity:0; filter:blur(6px); } to { transform:translateY(0); opacity:1; filter:blur(0); } }
@keyframes svcHeroQuoteIn { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
.svc-hero::before { animation:svcGridFade 1.4s var(--ease-out) .1s both; }
.svc-hero::after { animation:svcGlowFadeIn 1.8s var(--ease-out) .3s both,svcGlowPulse 12s ease-in-out 1.8s infinite; }
.svc-hero__chapter, .svc-hero__meta { animation:svcHeroQuoteIn 1s var(--ease-out) .15s both; }
.svc-hero__quote { animation:svcHeroQuoteIn 1.1s var(--ease-out) .3s both; }
.svc-hero__title { animation:svcHeroTitleIn 1.2s var(--ease-out) .5s both; }
.svc-hero__lead { animation:svcRise 1s var(--ease-out) .75s both; }
.svc-hero__ctas { animation:svcRise 1s var(--ease-out) .95s both; }
.svc-hero__pillars { animation:svcRise 1s var(--ease-out) 1.15s both; }
.svc-hero__pillar:nth-child(1) { animation:svcSlideLeft .9s var(--ease-out) 1.3s both; }
.svc-hero__pillar:nth-child(2) { animation:svcSlideLeft .9s var(--ease-out) 1.45s both; }
.svc-hero__pillar:nth-child(3) { animation:svcSlideLeft .9s var(--ease-out) 1.6s both; }
.svc-story__moment::before { animation:svcDotPulse 5s ease-in-out infinite; }
.svc-flow__step:not(:last-child)::after { animation:svcArrowSlide 4s ease-in-out infinite; }
@supports (animation-timeline:view()) {
  .svc-section__head {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-why-card {
    animation:svcZoomIn .8s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-cov__card {
    animation:svcSlideRight .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-ba__row {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-pitfall {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-voice-card {
    animation:svcZoomIn 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-vision__stage {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-plan {
    animation:svcZoomIn 1.1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-flow__step {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-faq__item {
    animation:svcSlideRight .7s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-story__moment {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-story::before {
    animation:svcExpandY 1.4s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 5% cover 50%;
    transform-origin:top;
  }
  .svc-why-card__num-digit {
    animation:svcCounterIn .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 32%;
  }
  .svc-flow__num-digit {
    animation:svcCounterIn 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-flow__step::before {
    animation:svcExpandX .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
    transform-origin:left;
  }
  .svc-title em, .svc-hero__title em, .svc-final__title em {
    animation:svcExpandX .8s var(--ease-out) .15s both;
    animation-timeline:view();
    animation-range:entry 30% cover 70%;
    transform-origin:left;
  }
  .svc-kicker__bar, .svc-kicker::before, .svc-hero__chapter-bar, .svc-hero__meta-line {
    animation:svcExpandX 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
    transform-origin:left;
  }
}
html:has(.svc-lp) { scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce) { .svc-lp *, .svc-lp *::before, .svc-lp *::after { animation:none !important; transition:none !important; } }
 }
@media (max-width:980px) {
  .svc-lp .wrap,.svc-lp .wrap-narrow { padding:0 22px; }
  .svc-section,.svc-final,.svc-section--ink,.svc-section--story { padding:80px 0; }
  .svc-section__head { margin-bottom:52px; }
  .svc-hero { padding:80px 0 64px; }
  .svc-plans,.svc-flow,.svc-voices,.svc-why-grid,.svc-pitfalls { grid-template-columns:1fr 1fr !important; }
  .svc-cov,.svc-vision__timeline { grid-template-columns:1fr 1fr !important; }
  .svc-ba__row { grid-template-columns:1fr; gap:14px; padding:24px; }
  .svc-ba__arrow { transform:rotate(90deg); padding:8px 0; justify-self:center; }
  .svc-cov__note { flex-direction:column; align-items:flex-start; }
  .svc-story__moment { grid-template-columns:auto 1fr; gap:24px; margin-bottom:40px; }
  .svc-story__moment::before { display:none; }
  .svc-story::before { left:60px; transform:none; }
  .svc-story__moment:nth-child(odd) .svc-story__time,.svc-story__moment:nth-child(even) .svc-story__time { grid-column:1; text-align:left; padding:0; width:96px; font-size:32px; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,.svc-story__moment:nth-child(even) .svc-story__scene { grid-column:2; padding:22px 24px; text-align:left; }
  .svc-hero__pillars { grid-template-columns:1fr; }
  .svc-hero__title { font-size:34px; }
  .svc-flow__step:not(:last-child)::after { display:none; }
  .svc-final__point { padding:22px 32px; }
}
@media (max-width:680px) {
  .svc-plans,.svc-flow,.svc-voices,.svc-cov,.svc-why-grid,.svc-pitfalls,.svc-vision__timeline { grid-template-columns:1fr !important; }
  .svc-hero__ctas { flex-direction:column; align-items:stretch; }
  .svc-btn { width:100%; }
  .svc-final__points { flex-direction:column; padding:0; }
  .svc-final__point { border-right:none; border-bottom:1px solid rgba(147,197,253,.24); padding:24px 0; }
  .svc-final__point:last-child { border-bottom:none; }
}
.svc-btn--primary, .svc-btn--primary *,
.svc-plan__cta, .svc-plan__cta *,
.svc-cov__note-cta, .svc-cov__note-cta *,
.svc-final__ctas .svc-btn--primary, .svc-final__ctas .svc-btn--primary * {
  color:#fff !important;
}
.svc-cov__note-cta { background:#fff !important; color:#1F2937 !important; }
.svc-cov__note-cta * { color:#1F2937 !important; }
.svc-cov__note-cta:hover { background:#1F2937 !important; color:#fff !important; }
.svc-cov__note-cta:hover * { color:#fff !important; }
.svc-cov__note {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  border:none !important;
  border-left:none !important;
  border-radius:10px !important;
  padding:36px 40px !important;
  box-shadow:0 16px 36px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08) !important;
  position:relative; overflow:hidden;
}
.svc-cov__note *:not(.svc-cov__note-cta):not(.svc-cov__note-cta *) { color:#fff !important; }
.svc-cov__note-title { color:#fff !important; font-weight:900; font-size:20px; }
.svc-cov__note-body { color:rgba(255,255,255,.92) !important; font-weight:500; }
.svc-cov__note-cta {
  font-weight:900 !important;
  padding:18px 32px !important;
  border-radius:8px !important;
  box-shadow:0 8px 22px rgba(255,255,255,.18),0 2px 6px rgba(0,0,0,.32) !important;
}
.svc-ba__after {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  border:none !important;
  box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.svc-ba__after::before { background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%) !important; }
.svc-ba__after .svc-ba__label { color:rgba(255,255,255,.85) !important; }
.svc-ba__after .svc-ba__text { color:#fff !important; }
.svc-ba__task-num {
  background:linear-gradient(135deg, #2D3748 0%, #111827 100%) !important;
  color:#fff !important;
  box-shadow:0 4px 12px rgba(0,0,0,.32) !important;
}
.svc-ba__task-num * { color:#fff !important; }
.svc-ba__arrow { color:#1F2937 !important; }
.svc-ba__row:hover .svc-ba__arrow { color:#000 !important; transform:translateX(8px); }
.svc-ba__total {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  box-shadow:0 14px 32px rgba(0,0,0,.28) !important;
}
.svc-ba__total-label { color:rgba(255,255,255,.85) !important; }
.svc-ba__total-value, .svc-ba__total-value * { color:#fff !important; }
@supports (animation-timeline:view()) {
  .svc-section__head,
  .svc-why-card,.svc-plan,.svc-cov__card,.svc-ba__row,
  .svc-flow__step,.svc-faq__item,.svc-pitfall,
  .svc-voice-card,.svc-vision__stage,.svc-story__moment,
  .svc-cov__note,.svc-story__punch,.svc-ba__total,
  .svc-hero__pillar {
    animation:svcRise 1s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 0% cover 30% !important;
  }
  .svc-why-card__num-digit,.svc-cov__num,.svc-vision__stage-num,
  .svc-flow__num-digit,.svc-plan__price-num,.svc-ba__total-value,
  .svc-hero__pillar-num,.svc-story__time {
    animation:svcZoomIn 1s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 5% cover 28% !important;
  }
  .svc-title em,.svc-hero__title em,.svc-final__title em {
    background-size:0% 100%;
    animation:svcExpandHL .9s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 30% cover 60% !important;
  }
}
@keyframes svcExpandHL { from { background-size:0% 100%; } to { background-size:100% 100%; } }
@media (max-width:1024px) {
  .svc-hero { padding:100px 0 80px; }
  .svc-hero__title { font-size:44px !important; line-height:1.32; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:88px 0; }
  .svc-section__head { margin-bottom:56px; }
  .svc-flow { grid-template-columns:repeat(2,1fr); gap:16px; }
  .svc-flow__step:not(:last-child)::after { display:none; }
  .svc-cov, .svc-vision__timeline { grid-template-columns:repeat(2,1fr); gap:16px; }
}
@media (max-width:768px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 20px; }
  .svc-hero { padding:72px 0 60px; }
  .svc-hero__title { font-size:30px !important; line-height:1.35; margin-bottom:24px; }
  .svc-hero__lead, .svc-hero__quote { font-size:15px !important; }
  .svc-hero__chapter, .svc-hero__meta { font-size:11px; gap:10px; margin-bottom:24px; }
  .svc-hero__chapter-bar, .svc-hero__meta-line { width:24px; }
  .svc-hero__ctas { gap:12px; margin-bottom:48px; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:72px 0; }
  .svc-section__head { margin-bottom:48px; }
  .svc-title { font-size:26px !important; line-height:1.4; }
  .svc-lead { font-size:14.5px; }
  .svc-plans, .svc-flow, .svc-voices, .svc-why-grid, .svc-pitfalls,
  .svc-cov, .svc-vision__timeline { grid-template-columns:1fr 1fr !important; gap:14px !important; }
  .svc-ba__row { grid-template-columns:1fr !important; gap:12px; padding:24px 20px; }
  .svc-ba__arrow { transform:rotate(90deg); padding:8px 0; justify-self:center; font-size:28px; }
  .svc-ba__side { padding:20px; min-height:auto; }
  .svc-ba__text { font-size:20px; }
  .svc-ba__task-text { font-size:17px; }
  .svc-ba__total { padding:32px 24px; }
  .svc-ba__total-value { font-size:28px; }
  .svc-cov__note { padding:24px 22px; flex-direction:column; align-items:flex-start; gap:18px; border-radius:8px !important; }
  .svc-cov__note-main { min-width:auto; }
  .svc-cov__note-cta { width:100%; justify-content:center; padding:16px 24px !important; }
  .svc-cov__note-title { font-size:18px !important; }
  .svc-story__moment { grid-template-columns:auto 1fr !important; gap:20px; margin-bottom:36px; }
  .svc-story__moment::before { display:none; }
  .svc-story::before { left:48px !important; transform:none; }
  .svc-story__moment:nth-child(odd) .svc-story__time,
  .svc-story__moment:nth-child(even) .svc-story__time { grid-column:1 !important; text-align:left !important; padding:0 !important; width:80px; font-size:24px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,
  .svc-story__moment:nth-child(even) .svc-story__scene { grid-column:2 !important; padding:18px 20px !important; text-align:left !important; }
  .svc-story__scene-title { font-size:17px; }
  .svc-story__scene-body { font-size:14.5px; }
  .svc-story__time-meta { font-size:11px; }
  .svc-story__punch { padding:32px 22px; font-size:18px; margin-top:64px; }
  .svc-hero__pillars { grid-template-columns:1fr !important; gap:14px; padding-top:36px; }
  .svc-hero__pillar { padding:20px 22px; }
  .svc-hero__pillar-num { font-size:36px; }
  .svc-hero__pillar-text { font-size:14px; }
  .svc-pitfall { padding:24px 22px; }
  .svc-pitfall__title { font-size:16px; }
  .svc-pitfall__col-text { font-size:14px; }
  .svc-vision__stage { padding:28px 24px; }
  .svc-vision__stage-num { font-size:42px !important; margin-bottom:18px; }
  .svc-vision__stage-title { font-size:17px; }
  .svc-vision__stage-body { font-size:14px; }
  .svc-flow__step { padding:24px 22px; }
  .svc-flow__num-digit { font-size:38px !important; }
  .svc-flow__title { font-size:16px; }
  .svc-flow__desc { font-size:13.5px; }
  .svc-plan { padding:30px 24px 24px; }
  .svc-plan__name { font-size:21px; }
  .svc-plan__price-num { font-size:32px !important; }
  .svc-plan__sub { font-size:14px; margin-bottom:22px; }
  .svc-plan__cta { padding:16px 22px; font-size:13.5px; }
  .svc-final__point { padding:22px 28px; }
  .svc-final__point-num { font-size:32px; }
  .svc-final__title { font-size:26px !important; }
  .svc-final__lead { font-size:14.5px; }
  .svc-faq__q { padding:20px 22px; gap:14px; font-size:16px; }
  .svc-faq__a { padding:0 22px 22px; gap:14px; font-size:14.5px; }
  .svc-faq__icon, .svc-faq__a-icon { width:32px; height:32px; font-size:13px; }
  .svc-why-card { padding:28px 24px 24px; }
  .svc-why-card__num-digit { font-size:42px !important; }
  .svc-why-card__title { font-size:17px; }
  .svc-why-card__desc { font-size:14.5px; }
  .svc-cov__card { padding:26px 22px; min-height:auto; }
  .svc-cov__num { font-size:36px !important; }
  .svc-cov__title { font-size:16px; }
  .svc-cov__desc { font-size:14px; }
  .svc-voice-card { padding:28px 24px 22px; }
  .svc-voice-card__body { font-size:15px; }
  .svc-voice-card__mark { font-size:48px; top:12px; right:18px; }
}
@media (max-width:560px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 16px; }
  .svc-hero { padding:56px 0 44px; }
  .svc-hero__title { font-size:24px !important; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:56px 0; }
  .svc-section__head { margin-bottom:36px; }
  .svc-title { font-size:22px !important; }
  .svc-plans, .svc-flow, .svc-voices, .svc-cov, .svc-why-grid,
  .svc-pitfalls, .svc-vision__timeline { grid-template-columns:1fr !important; gap:14px !important; }
  .svc-hero__ctas { flex-direction:column; align-items:stretch; gap:10px; }
  .svc-btn { width:100%; padding:16px 22px; font-size:14px; }
  .svc-btn--line { padding:14px 0; }
  .svc-ba__row { padding:20px 18px; }
  .svc-ba__task-text { font-size:16px; }
  .svc-ba__text { font-size:18px; }
  .svc-ba__total { padding:28px 22px; }
  .svc-ba__total-value { font-size:24px; }
  .svc-final__points { flex-direction:column; padding:0; margin:32px 0; }
  .svc-final__point { border-right:none !important; border-bottom:1px solid rgba(147,197,253,.24); padding:20px 0; }
  .svc-final__point:last-child { border-bottom:none; }
  .svc-story__moment { gap:16px; }
  .svc-story::before { left:44px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__time,
  .svc-story__moment:nth-child(even) .svc-story__time { width:72px; font-size:22px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,
  .svc-story__moment:nth-child(even) .svc-story__scene { padding:16px 18px !important; }
  .svc-story__punch { padding:24px 18px; font-size:16px; }
  .svc-cov__note { padding:22px 18px; }
  .svc-cov__note-title { font-size:17px !important; }
  .svc-cov__note-body { font-size:14px !important; }
  .svc-pitfall { padding:22px 18px; }
  .svc-vision__stage, .svc-flow__step { padding:24px 20px; }
  .svc-plan { padding:26px 20px 20px; }
  .svc-faq__q, .svc-faq__a { padding-left:18px; padding-right:18px; }
}
@media (max-width:380px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 12px; }
  .svc-hero__title { font-size:22px !important; }
  .svc-title { font-size:20px !important; }
  .svc-ba__text { font-size:16px; }
  .svc-vision__stage-num { font-size:36px !important; }
  .svc-final__point-num { font-size:28px; }
}
.svc-lp { overflow-x:hidden; }
@media (max-width:768px) {
  .svc-btn, .svc-plan__cta, .svc-cov__note-cta, .svc-faq__q { min-height:44px; }
}
@keyframes svcRise { from { transform:translateY(28px); opacity:0; } to { transform:translateY(0); opacity:1; } }
@keyframes svcSlideRight { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcSlideLeft { from { transform:translateX(32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcZoomIn { from { transform:scale(.92); opacity:0; } to { transform:scale(1); opacity:1; } }
@keyframes svcExpandX { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes svcExpandY { from { transform:scaleY(0); } to { transform:scaleY(1); } }
@keyframes svcCounterIn { 0% { transform:translateY(40px); opacity:0; } 100% { transform:translateY(0); opacity:1; } }
@keyframes svcGlowPulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.78; transform:scale(1.06); } }
@keyframes svcDotPulse { 0%,100% { box-shadow:0 0 0 5px var(--bg),0 2px 6px rgba(37,99,235,.18); } 50% { box-shadow:0 0 0 5px var(--bg),0 0 0 10px rgba(37,99,235,.22),0 4px 14px rgba(37,99,235,.34); } }
@keyframes svcArrowSlide { 0%,100% { transform:translateX(0); } 50% { transform:translateX(5px); } }
@keyframes svcGlowFadeIn { from { opacity:0; transform:scale(.7); } to { opacity:1; transform:scale(1); } }
@keyframes svcHeroTitleIn { from { transform:translateY(40px); opacity:0; filter:blur(6px); } to { transform:translateY(0); opacity:1; filter:blur(0); } }
@keyframes svcHeroQuoteIn { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
.svc-hero::after { animation:svcGlowFadeIn 1.8s var(--ease-out) .3s both, svcGlowPulse 12s ease-in-out 1.8s infinite; }
.svc-hero__chapter, .svc-hero__meta { animation:svcHeroQuoteIn 1s var(--ease-out) .15s both; }
.svc-hero__quote { animation:svcHeroQuoteIn 1.1s var(--ease-out) .3s both; }
.svc-hero__title { animation:svcHeroTitleIn 1.2s var(--ease-out) .5s both; }
.svc-hero__lead { animation:svcRise 1s var(--ease-out) .75s both; }
.svc-hero__ctas { animation:svcRise 1s var(--ease-out) .95s both; }
.svc-hero__pillars { animation:svcRise 1s var(--ease-out) 1.15s both; }
.svc-hero__pillar:nth-child(1) { animation:svcZoomIn .9s var(--ease-out) 1.3s both; }
.svc-hero__pillar:nth-child(2) { animation:svcZoomIn .9s var(--ease-out) 1.45s both; }
.svc-hero__pillar:nth-child(3) { animation:svcZoomIn .9s var(--ease-out) 1.6s both; }
.svc-story__moment::before { animation:svcDotPulse 5s ease-in-out infinite; }
.svc-flow__step:not(:last-child)::after { animation:svcArrowSlide 4s ease-in-out infinite; }
@supports (animation-timeline:view()) {
  .svc-section__head { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-why-card { animation:svcZoomIn .8s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-cov__card { animation:svcSlideRight .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-ba__row { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-pitfall { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-voice-card { animation:svcZoomIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-vision__stage { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-plan { animation:svcZoomIn 1.1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-flow__step { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-faq__item { animation:svcSlideRight .7s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-story__moment { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-story::before { animation:svcExpandY 1.4s var(--ease-out) both; animation-timeline:view(); animation-range:entry 5% cover 50%; transform-origin:top; }
  .svc-why-card__num-digit, .svc-why-card__num { animation:svcCounterIn .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 32%; }
  .svc-flow__num-digit, .svc-flow__num { animation:svcCounterIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-flow__step::before { animation:svcExpandX .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; transform-origin:left; }
  .svc-title em, .svc-hero__title em, .svc-final__title em { animation:svcExpandX .8s var(--ease-out) .15s both; animation-timeline:view(); animation-range:entry 30% cover 70%; transform-origin:left; }
  .svc-kicker__bar, .svc-kicker::before, .svc-hero__chapter-bar, .svc-hero__meta-line { animation:svcExpandX 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; transform-origin:left; }
  .svc-cov__note { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-final__point { animation:svcZoomIn .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
  .svc-ba__total { animation:svcZoomIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
  .svc-story__punch { animation:svcZoomIn 1.1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
}
html:has(.svc-lp) { scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce) { .svc-lp *,.svc-lp *::before,.svc-lp *::after { animation:none !important; transition:none !important; } }
.bxp-mega-col-title {
  display:inline-block; position:relative;
  padding-bottom:10px; margin-bottom:16px;
  font-weight:800; font-size:16px;
  color:#0F172A;
  border-bottom:2px solid #2563EB;
  text-decoration:none;
  transition:all .3s cubic-bezier(.4,0,.2,1);
}
.bxp-mega-col-title:hover { color:#1D4ED8; }
.bxp-mega-list { list-style:none; padding:0; margin:0; }
.bxp-mega-list-2col { display:grid; grid-template-columns:repeat(2,1fr); gap:8px 24px; }
.bxp-mega-list li { margin:0; padding:0; position:relative; }
.bxp-mega-list a {
  display:inline-block;
  position:relative;
  color:#1E293B;
  font-size:15px;
  font-weight:600;
  padding:8px 0 8px 0;
  text-decoration:none;
  transition:all .3s cubic-bezier(.4,0,.2,1);
  line-height:1.6;
}
.bxp-mega-list a::before {
  content:'';
  position:absolute;
  left:0; top:50%;
  width:0; height:2px;
  background:#2563EB;
  transition:width .35s cubic-bezier(.4,0,.2,1);
  transform:translateY(-50%);
}
.bxp-mega-list a:hover {
  color:#2563EB;
  padding-left:20px;
  font-weight:700;
}
.bxp-mega-list a:hover::before { width:14px; }
.bxp-mega-cta-text { font-size:14px; font-weight:700; color:#475569; margin-bottom:14px; }
.bxp-mega-cta-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:16px 32px;
  background:#2563EB;
  color:#fff;
  border-radius:6px;
  font-weight:700; font-size:14.5px;
  letter-spacing:0.04em;
  text-decoration:none;
  transition:all .35s cubic-bezier(.4,0,.2,1);
  box-shadow:0 6px 18px rgba(37,99,235,.32);
}
.bxp-mega-cta-btn:hover {
  background:#1D4ED8;
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(37,99,235,.46);
}
.bxp-arrow {
  display:inline-block;
  transition:transform .3s cubic-bezier(.4,0,.2,1);
  font-weight:700;
}
.bxp-mega-cta-btn:hover .bxp-arrow { transform:translateX(6px); }
@supports (animation-timeline:view()) {
  .bxp-mega-col-title {
    animation:svcSlideRight .8s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .bxp-mega-list li {
    animation:svcSlideRight .7s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 50%;
  }
  .bxp-mega-list li:nth-child(1) { animation-delay:0s; }
  .bxp-mega-list li:nth-child(2) { animation-delay:.04s; }
  .bxp-mega-list li:nth-child(3) { animation-delay:.08s; }
  .bxp-mega-list li:nth-child(4) { animation-delay:.12s; }
  .bxp-mega-list li:nth-child(5) { animation-delay:.16s; }
  .bxp-mega-list li:nth-child(6) { animation-delay:.20s; }
  .bxp-mega-list li:nth-child(7) { animation-delay:.24s; }
  .bxp-mega-list li:nth-child(8) { animation-delay:.28s; }
  .bxp-mega-list li:nth-child(9) { animation-delay:.32s; }
  .bxp-mega-list li:nth-child(10) { animation-delay:.36s; }
  .bxp-mega-list li:nth-child(11) { animation-delay:.40s; }
  .bxp-mega-list li:nth-child(12) { animation-delay:.44s; }
  .bxp-mega-list li:nth-child(13) { animation-delay:.48s; }
  .bxp-mega-list li:nth-child(14) { animation-delay:.52s; }
  .bxp-mega-list li:nth-child(15) { animation-delay:.56s; }
  .bxp-mega-cta-box {
    animation:svcZoomIn 1s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 50%;
  }
}
@media (prefers-reduced-motion:reduce) {
  .bxp-mega-col-title, .bxp-mega-list li, .bxp-mega-cta-box { animation:none !important; transition:none !important; }
}
/* ===== ai-consult.css ===== */
/* ============================================================
   BoostX AI相談ウィジェット (bxai) — 全ページ共通
   SSOT: boostx-ai-consult/ai-consult.css
   デプロイ: scripts/deploy_ai_consult_widget.py → Code Snippets
   ============================================================ */

/* テーマ側の box-sizing に依存しない（1カラム崩れ・はみ出しの元） */
.bxai-root, .bxai-root *, .bxai-root *::before, .bxai-root *::after, .bxai-toast { box-sizing: border-box; }

.bxai-root {
  --bxai-navy: #0B1524;
  --bxai-blue: #1D4ED8;
  --bxai-blue-deep: #0B2FA8;
  --bxai-line: #E3E8F2;
  --bxai-muted: #5B6780;
  --bxai-bg: #FFFFFF;
  --bxai-chip: #F2F6FD;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 99990;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", system-ui, sans-serif;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
  line-height: 1.6;
}

/* モバイルの下部固定CTA(.bx-sticky-cta)と重ならないよう持ち上げる */
.bxai-root.is-lifted { bottom: calc(20px + var(--bxai-lift, 0px)); }

/* ---------- 起動ボタン ---------- */
.bxai-launcher {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 13px 20px 13px 17px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--bxai-blue) 0%, var(--bxai-blue-deep) 100%);
  color: #fff;
  /* button は既定でフォントを継承しないので明示（放置するとArialに落ちる） */
  font-family: inherit;
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: .02em;
  cursor: pointer;
  box-shadow: 0 10px 28px rgba(11, 47, 168, .34), 0 2px 6px rgba(11, 21, 36, .16);
  transition: transform .18s ease, box-shadow .18s ease;
  -webkit-tap-highlight-color: transparent;
}
.bxai-launcher:hover { transform: translateY(-2px); box-shadow: 0 14px 34px rgba(11, 47, 168, .42), 0 2px 6px rgba(11, 21, 36, .16); }
.bxai-launcher:focus-visible { outline: 3px solid #93B4FF; outline-offset: 2px; }
.bxai-launcher svg { width: 19px; height: 19px; flex: none; }

/* 初回だけ静かに存在を知らせる */
.bxai-launcher.is-hinting { animation: bxai-hint 2.4s ease-in-out 1.2s 2; }
@keyframes bxai-hint {
  0%, 100% { transform: translateY(0); }
  8%  { transform: translateY(-5px); }
  16% { transform: translateY(0); }
  24% { transform: translateY(-3px); }
  32% { transform: translateY(0); }
}

/* ---------- パネル ---------- */
.bxai-panel {
  width: min(352px, calc(100vw - 32px));
  max-height: min(72vh, 620px);
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  background: var(--bxai-bg);
  border: 1px solid var(--bxai-line);
  border-radius: 18px;
  box-shadow: 0 24px 60px rgba(11, 21, 36, .22), 0 4px 14px rgba(11, 21, 36, .1);
  padding: 15px 16px 14px;
  color: var(--bxai-navy);
  animation: bxai-pop .2s cubic-bezier(.16, 1, .3, 1) both;
}
.bxai-panel[hidden] { display: none; }
@keyframes bxai-pop { from { opacity: 0; transform: translateY(10px) scale(.985); } to { opacity: 1; transform: none; } }

.bxai-head { display: flex; align-items: flex-start; gap: 10px; }
.bxai-title { margin: 0 0 8px; flex: 1; font-size: 14.5px; font-weight: 800; letter-spacing: .01em; }
.bxai-title span { color: var(--bxai-blue); }
.bxai-close {
  flex: none; width: 30px; height: 30px; margin: -4px -4px 0 0;
  display: inline-flex; align-items: center; justify-content: center;
  border: 0; border-radius: 8px; background: transparent;
  color: var(--bxai-muted); cursor: pointer; font-family: inherit;
}
.bxai-close:hover { background: #F1F4FA; color: var(--bxai-navy); }
.bxai-close:focus-visible { outline: 2px solid var(--bxai-blue); outline-offset: 1px; }
.bxai-close svg { width: 17px; height: 17px; }

.bxai-lead { display: none; }

.bxai-pagetag {
  display: flex; align-items: center; gap: 5px;
  max-width: 100%; margin-bottom: 10px; padding: 4px 10px;
  border-radius: 999px; background: var(--bxai-chip);
  color: #143A9E; font-size: 11.5px; font-weight: 700; white-space: nowrap;
}
.bxai-pagetag b { min-width: 0; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.bxai-chips { display: flex; flex-wrap: wrap; gap: 5px; margin-bottom: 10px; }
.bxai-chip {
  padding: 6px 11px; border: 1px solid var(--bxai-line); border-radius: 999px;
  background: #fff; color: #24324D; font-size: 12px; font-weight: 600;
  font-family: inherit; cursor: pointer; text-align: left;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.bxai-chip:hover { background: var(--bxai-chip); border-color: #C6D7F8; }
.bxai-chip.is-active { background: var(--bxai-blue); border-color: var(--bxai-blue); color: #fff; }
.bxai-chip:focus-visible { outline: 2px solid var(--bxai-blue); outline-offset: 1px; }

.bxai-label { display: block; margin-bottom: 6px; font-size: 11.5px; font-weight: 700; color: var(--bxai-muted); }
.bxai-textarea {
  width: 100%; box-sizing: border-box; padding: 11px 12px;
  border: 1px solid var(--bxai-line); border-radius: 10px;
  background: #FBFCFE; color: var(--bxai-navy);
  font-family: inherit; font-size: 13.5px; line-height: 1.6; resize: vertical; height: 60px;
}
.bxai-textarea:focus { outline: 0; border-color: var(--bxai-blue); background: #fff; box-shadow: 0 0 0 3px rgba(29, 78, 216, .12); }

.bxai-divider { margin: 10px 0 8px; border: 0; border-top: 1px solid var(--bxai-line); }

/* 4サービスは2×2のタイルに。縦積みだとパネルが画面を覆ってしまう */
.bxai-services { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.bxai-service {
  display: flex; align-items: center; gap: 8px;
  padding: 9px 10px; border: 1px solid var(--bxai-line); border-radius: 10px;
  color: var(--bxai-navy); font-size: 12.5px; font-weight: 700; text-decoration: none;
  transition: background .15s ease, border-color .15s ease, transform .15s ease;
}
.bxai-service:hover { background: #F7F9FE; border-color: #C6D7F8; transform: translateY(-1px); text-decoration: none; }
.bxai-service:focus-visible { outline: 2px solid var(--bxai-blue); outline-offset: 1px; }
.bxai-service.is-disabled { opacity: .45; pointer-events: none; }
.bxai-service-logo { flex: none; width: 18px; height: 18px; display: inline-flex; align-items: center; justify-content: center; }
.bxai-service-logo svg { width: 100%; height: 100%; }
/* 公式SVGを img で読む。テーマ側の img 指定に負けないよう固定 */
.bxai-service-img {
  width: 18px !important; height: 18px !important;
  max-width: 18px !important; min-width: 18px !important;
  margin: 0 !important; padding: 0 !important; border: 0 !important;
  border-radius: 0 !important; box-shadow: none !important;
  object-fit: contain; display: block; background: none !important;
}
.bxai-service-name { flex: 1; }
.bxai-service-note { display: none; }
.bxai-service-arrow { display: none; }
.bxai-service-arrow svg { width: 100%; height: 100%; }

.bxai-note { margin: 8px 0 0; font-size: 10px; color: var(--bxai-muted); }

/* ---------- 無料相談への橋渡し ---------- */
.bxai-cta {
  display: block; margin-top: 10px; padding: 10px 12px;
  border-radius: 12px; background: #F2F6FD; border: 1px solid #D9E4FA;
  text-decoration: none; color: var(--bxai-navy);
  transition: background .15s ease, border-color .15s ease;
}
.bxai-cta:hover { background: #E8F0FE; border-color: #B9CFF7; text-decoration: none; }
.bxai-cta:focus-visible { outline: 2px solid var(--bxai-blue); outline-offset: 1px; }
.bxai-cta-title { display: block; font-size: 12.5px; font-weight: 800; }
.bxai-cta-desc { display: block; margin-top: 3px; font-size: 11px; color: var(--bxai-muted); }
.bxai-cta-title::after { content: " →"; color: var(--bxai-blue); }

/* AIに投げて戻ってきたとき（相談にいちばん近い瞬間）だけ強調する */
.bxai-cta.is-followup {
  background: linear-gradient(135deg, var(--bxai-blue) 0%, var(--bxai-blue-deep) 100%);
  border-color: transparent;
  color: #fff;
  box-shadow: 0 8px 22px rgba(11, 47, 168, .28);
  animation: bxai-cta-in .34s cubic-bezier(.16, 1, .3, 1) both;
}
.bxai-cta.is-followup:hover { background: linear-gradient(135deg, #1B47C6 0%, #0A2A9B 100%); border-color: transparent; }
.bxai-cta.is-followup .bxai-cta-desc { color: rgba(255, 255, 255, .82); }
.bxai-cta.is-followup .bxai-cta-title::after { color: #fff; }
@keyframes bxai-cta-in { from { opacity: .4; transform: translateY(4px); } to { opacity: 1; transform: none; } }

/* ---------- トースト ---------- */
.bxai-toast {
  position: fixed; left: 50%; bottom: 96px; transform: translate(-50%, 14px);
  z-index: 99991; max-width: min(420px, calc(100vw - 32px));
  padding: 12px 18px; border-radius: 999px;
  background: rgba(11, 21, 36, .95); color: #fff;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", system-ui, sans-serif;
  font-size: 12.5px; font-weight: 700; text-align: center;
  box-shadow: 0 12px 32px rgba(11, 21, 36, .3);
  opacity: 0; pointer-events: none; transition: opacity .22s ease, transform .22s ease;
}
.bxai-toast.is-visible { opacity: 1; transform: translate(-50%, 0); }

/* ---------- モバイル ---------- */
@media (max-width: 640px) {
  .bxai-root { right: 12px; left: 12px; bottom: 14px; align-items: flex-end; }
  .bxai-root.is-lifted { bottom: calc(14px + var(--bxai-lift, 0px)); }
  .bxai-panel { width: 100%; max-height: 78vh; padding: 15px 14px 13px; border-radius: 16px; }
  .bxai-launcher { padding: 12px 18px 12px 15px; font-size: 13.5px; }
  .bxai-toast { bottom: 84px; }
  /* 狭い画面では説明文を落として、無料相談CTAまで一画面に収める */
  .bxai-lead { display: none; }
  .bxai-textarea { height: 62px; }
  .bxai-note { margin-top: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  .bxai-launcher, .bxai-panel, .bxai-service, .bxai-toast { transition: none !important; animation: none !important; }
}

@media print { .bxai-root, .bxai-toast { display: none !important; } }

/* ===== site-responsive-fix.css ===== */
/*
 * BoostX Site Responsive Fix
 * 全ページ（HP・固定・ブログ・アーカイブ）× 全デバイス（モバイル・タブレット・PC）のレスポンシブ修正
 * Version: 1.1.8
 * Date: 2026-04-26 (v1.0.2: 2026-05-31 / v1.0.3-1.1.8: 2026-06-01)
 *
 * v1.0.1 変更:
 *  - #floating-cta のモバイルフルワイド変換を撤去（テーマ本来の "fixed bottom-10 right-10" 右下丸ボタン設計を尊重）
 *  - body padding-bottom 120px を撤去（flexレイアウトを破壊する副作用）
 *  - z-index 確保とタップ領域最低保証のみ残す
 *
 * v1.0.2 変更:
 *  - テーマCTA（無料個別相談カード）の欠落 Tailwind ユーティリティを補完（末尾セクション参照）
 *
 * v1.0.3 変更:
 *  - 記事末尾CTA「無料相談」をコンバージョン最適化コンポーネント .bx-cta2 として再設計（末尾）
 *    テーマtailwindに flex-row/grid-cols-3/space-y 等が無く崩れたため Tailwind非依存で自己完結化
 *
 * v1.0.4 変更:
 *  - .bx-cta2 を軽量化・洗練（暗すぎる/縦長/SNSボタンとのバランス難の指摘対応）
 *    背景を黒潰れ→上品なネイビーグラデに / 上端にアクセントライン / ベネフィットカードの
 *    余白詰め / 全体の縦量を圧縮 / SNS共有ブロックとの余白を整理（.bx-cta2--spaced）
 *
 * v1.0.5 変更:
 *  - .bx-cta2 を「オフホワイト上質コーポレート」に全面リデザイン（社長指示「デザインAI臭する
 *    し色が重い」脱却）。ダーク/グラデ/グロー/グラスモーフィズムを全廃し、オフホワイト地
 *    (#f8f6f1)＋細罫線＋落ち着いた配色＋上端ブランドカラーバーの引き算デザインに。
 *  - モバイル最適化（社長指示）: モバイルファースト基準で文字/余白を調整、768px以上で3カラム、
 *    〜360px極小スマホ用ブレークポイント追加で崩れ防止。
 *  - 色防御オーバーライド: テーマ残置 #article-cta *{color:#fff} 対策で文字＋SVGアイコンの
 *    stroke/fill を高詳細度+!importantで正色に確定（オフホワイト地で文字/アイコン消失を防止）。
 *
 * v1.0.6 変更:
 *  - .bx-cta2 を「プレミアム・ダーク」CRO最適化に全面刷新（社長指示「オフホワイトは色味がダメ／
 *    濃紺〜黒めで／無料相談が増える色とデザインと内容に／最高のデザイン」）。marketing/CROチーム設計。
 *    漆黒寄り濃紺#0B1220 単色地＋上端シャンパンゴールド#C9A24B 極細罫＋暖色オレンジ#FF6B35 ボタン
 *    1点集中（ダーク地×補色オレンジでCTR最大化）。グラデ/グロー/ガラス調は安っぽさの原因として禁止。
 *  - コピーも刷新（badge=毎月先着5社限定 / 見出し=利益が増えるか30分で答えだけ / ベネフィット=
 *    AI活用マップ・ROI試算・稟議用論点 / ボタン=30秒で無料相談を予約する）→single-blog.php側で更新。
 *  - 色防御オーバーライドをダーク配色用HEXに更新（文字=白系/見出し強調=ゴールド/ボタン文字=濃紺）。
 *
 * v1.0.7 変更:
 *  - .bx-cta2 を「BoostXブランド統一」に全面刷新（社長指示「BoostXのデザインとかカラーとか
 *    全てのページを見て合わせて作成して」）。HP/固定ページの実デザイントークンをChrome実機抽出し統一。
 *    BoostX = 明るい×クールブルー×クリーンSaaS。ダーク(v1.0.6)もオフホワイト(v1.0.5)も自社ブランドと
 *    不一致だったため、サイト実値に合わせて再構築。
 *  - 配色: 白地＋ヒーロー同調のブランドブルー微ラジアルティント / ボーダー=クールグレー#E8ECF2 /
 *    上端ライン=#0057d9→#2660db / 見出し=ネイビー#0E1730＋強調#1E4FC7 / ボタン=ブランドブルー#1E4FC7
 *    (radius10px＋ブルーグロー影、HPヒーローのプライマリボタンと完全一致) / フォント=Noto Sans JP。
 *  - 色防御オーバーライドをライト/ブランドブルー配色用HEXに更新（文字=ネイビー/強調=ブルー/ボタン文字=白）。
 *
 * v1.0.8 変更:
 *  - .bx-cta2 のボタンを「濃いブランドブルー＋立体感」で主役化（社長指示「AI臭がする／もっとクリックが
 *    増えそうな色と大きさで」）。レイアウト3カラム構造は維持し、配色・余白・ボタンのみ刷新（社長選択）。
 *  - ボタン: 単色#1E4FC7 → 縦グラデ(#3068E6→#1E4FC7→#173FA6)＋上端インナーハイライト＋下端インナーシャドウ
 *    ＋深い二重ブルーグロー影で立体化。サイズUP（font16→18px・padding17/26→22/34・radius10→14・max420→500px、
 *    768px以上は19px/24-40px）。hover=lift3px+brightness。押したくなる存在感に。
 *  - テンプレ感(AI臭)低減: 見出しを一段強調（21→22px・768px以上32px・字間-.015em）して視線階層を明確化、
 *    lead/grid余白を微調整しボタンへ視線誘導。HTML(single-blog.php)は変更なし・CSSのみ。
 *
 * v1.0.9 変更（社長指示「SNSボタンのデザインもよくして／たてを狭めて／デザインとコピーよくして／色味紺でいいよ」）:
 *  - SNS共有ボタンを刷新: 絵文字グリフ(𝕏/f/🔗)＋灰色円 → クリーンSVGアイコン＋ブランドネイビー白円ボタン
 *    (.bx-share)。X=黒/FB=#1877F2/コピー=ブランドブルー#1E4FC7 でホバー反転、浮上＋影、コピー完了トースト付き。
 *    single-blog.php のマークアップを Tailwind非依存の .bx-share__* に置換し、当CSSで一元管理。
 *  - CTAカードの縦を圧縮: 余白を全面圧縮（base padding 40/22→30/20・badge20→14・lead26→22・grid30→22・
 *    768px padding56→44・各margin圧縮）。lead を3行→2行に短縮しさらに低背化。
 *  - コピー刷新: 見出し「自社のどの業務に、AIが一番効くのか」/ lead「効く打ち手だけを整理してお渡し・売り込み
 *    一切なし・持ち帰って社内判断」に。lead内 b 強調(#163E9C)追加。色味はネイビー/ブルー維持（社長OK）。
 *
 * v1.1.0 変更（社長指示「まだAI臭がする／もっとデザインよくして」=8回目）:
 *  - .bx-cta2 を「非対称2カラム・アドバイザリーオファー」に構造から全面刷新。AI臭の真因は色でなく構造
 *    ＝「同サイズ3カードの均等グリッド＋中央寄せ縦積み＋淡い角丸アイコン四角」のテンプレ三点セット。
 *    これを排除: 左右非対称2カラム（左=エディトリアルな番号付きリスト[Georgia大型セリフ数字01/02/03・
 *    罫線区切り・全左寄せ] / 右=濃紺#0E1730アクションパネル[白地×ネイビー文字ボタンで1点集中・信頼リスト
 *    縦組み・先着5社スカーシティ]）。淡い角丸アイコン四角は全廃。色味は承認済みネイビー/ブルー維持。
 *  - HTML(single-blog.php)も同時刷新: .bx-cta2__inner(grid) > __main(左) + __panel(右)。新クラス＝
 *    __eyebrow/__title/__lead/__list/__li/__num/__litext/__it/__id/__panel/__paneltag/__paneltitle/
 *    __btn/__note/__trust/__scarcity。旧 __badge/__grid/__item/__ic は廃止。
 *  - レスポンシブ: モバイル1カラム縦積み（左→右パネル）、880px以上で1.32fr:1fr の非対称2カラム、〜360px詰め。
 *  - 色防御オーバーライド: 左カラム=ブランド配色確定（残置#article-cta *{color:#fff}対策）、右パネル=白系確定、
 *    ボタン=白地のためネイビー#12347E確定（矢印SVG stroke も同色・currentColor白化事故対策）。
 *
 * v1.1.1 変更（社長指示「もっとシンプルにして／たても狭めて」）:
 *  - 情報量を削ってシンプル＆低背化。左リスト=各項目の説明文(__id)を削除し「01 自社専用のAI活用マップ」の
 *    1行チェックリスト化（__litext入れ子も廃止し __li 直下に __num+__it）。lead を2行→1行に短縮。
 *  - 右パネル=信頼リスト(__trust 3項目)を削除（note『勧誘一切なし』と重複）。pill+見出し+ボタン+note+
 *    スカーシティのみの引き算構成に。
 *  - 余白全面圧縮（main/panel padding 880px時 46→36px・li 18→13px・各margin圧縮）＋数字/見出しを一段小さく。
 *  - 廃止クラス: __litext / __id / __trust（CSSとHTML両方から除去）。防御overrideからも __id/__trust li を削除。
 *
 * v1.1.2 変更（社長指示「色も単色で」）:
 *  - グラデーション・複数色アクセントを全廃して単色（モノトーン）に統一。
 *    上端バー linear-gradient(#0057d9→#2660db) → 単色 #1E4FC7 / eyebrow罫 gradient → 単色 #DDE4F1 /
 *    右パネル radial+linear gradient(#142347→#0E1730→#0A1124) → 単色 #0E1730 /
 *    ボタン linear-gradient(白→#EFF3FB) → 単色 #ffffff（inner highlight影も除去）。
 *  - スカーシティの金色アクセント #E7B765/#F4C978 を廃止し青系モノトーンに（文字#9DB4E8・強調b=白）。
 *    配色は ネイビー#0E1730 / ブランドブルー#1E4FC7 / 白 の単色系のみ（金色等の差し色なし）。
 *
 * v1.1.3 変更（社長指示「２色やん」=v1.1.2は左白＋右紺の2色だった指摘）:
 *  - カード全体を単色ネイビー #0E1730 の1色に統一。左カラムの白地を廃止し全面ネイビー、左右の地色差を解消。
 *    左カラム文字を白系に反転（title=白 / b=#6E9BF0 / lead=#AEB8CC / eyebrow=#8FA8E0 / num=#5B6E97 / it=#EAEEF6）。
 *  - 左右の仕切りは地色差でなく極細白罫（rgba(255,255,255,.10)）に変更（モバイル=上罫 / 880px=左罫）。
 *  - リスト区切り罫も白透過に。ボタンは唯一のアクセント＝単色白地×ネイビー文字のまま（1点集中CTA）。
 *  - 防御override左カラムを白系に反転（残置#article-cta *{color:#fff}と方向一致・明示確定で事故防止）。
 *
 * v1.1.4 変更（社長指示「もっとデザインよく」=単色ネイビーは維持して質感を上げる）:
 *  - 単色ネイビー #0E1730 を維持したまま「作り込み」のディテールで高級感を付与（色は増やさない）。
 *  - カードに内側ヘアライン枠（::after で inset box-shadow rgba白.07＋上端.10）＝面の締まりと奥行き。
 *  - eyebrow を大文字トラッキング化＋先頭にブランド極細バー(::before 22px #2E6BF0)＋末尾ヘアライン(::after)
 *    の誌面的見出しマーカー化。番号を Georgia イタリックの大型セリフ数字(27px #46598C)でデザイン主役に。
 *  - 各項目頭に極小ブランドチェックアイコン(.bx-cta2__it::before 細ストロークSVG stroke=#2E6BF0)＝淡い
 *    四角アイコンは使わず細線チェックのみ（テンプレ臭回避）。上端アクセント罫も単色 #2E6BF0 に統一。
 *  - 主役ボタン: 白地×ネイビー文字＋ブランドブルーのグロー影＋矢印を円形ネイビーバッジ化(背景#12347E・
 *    白矢印)で「押せる感」を作り込み。スカーシティは上端ヘアライン区切り＋中央寄せで締め。
 *  - 色防御オーバーライドを base と一致させて確定（lead #A7B2C8 / num #46598C / paneltag #BBD0F7 /
 *    note #8C98B4）。矢印SVGは円形ネイビーバッジ上のため override を白へ反転（ネイビー円にネイビー矢印で
 *    不可視になる事故＝過去のeyebrow白化と同型を防止）。
 *
 * v1.1.5 変更（社長指示「経営者限定を消して／売り込みは一切なしを消して／毎月5社を消して／もっとAI臭を
 *   無くして／たてをもっと狭く」）:
 *  - コピー削除（HTML single-blog.php）: eyebrow「経営者のための無料AI相談」→「無料AI相談」（経営者限定を撤去）/
 *    lead末尾「売り込みは一切なし。」削除 / スカーシティ「毎月 先着5社限定」要素を削除 / note「その場で結論が
 *    出ます・勧誘一切なし」→「その場で、次の打ち手が見えます。」（"〜なし"の煽り否定文を一掃）。
 *  - AI臭の除去（装飾トロープを引き算）: ①ボタンの色付きブランドグロー影 → 中立的な淡い影に / ②矢印の円形
 *    ネイビーバッジ → プレーンな細線矢印（背景円/パディング撤去）/ ③パネルタグの光る点(::before 発光リング)
 *    撤去＋pill枠も外して静かなテキストラベル化。"光る・グロー・バッジ"のSaaS定番装飾を排除し落ち着いた品に。
 *  - 縦圧縮（たてを狭く）: main/panel padding（28→24・880px 36→30）/ title margin（11→9）/ lead margin
 *    （20→15）/ li padding（13→10・880px 13→11）/ paneltitle margin（18→14）/ note margin（12→10）/
 *    ボタン padding（16→15・880px 18→16）。スカーシティ削除と合わせて全体を一段低背化。
 *  - 防御override: 矢印SVGを白→ネイビー#12347E に再反転（円バッジ撤去で白地ボタン上のプレーン矢印に戻したため。
 *    白地に白矢印=不可視を防止＝背景反転とstroke反転は必ずペア・教訓9）。paneltag override も base一致(#93A6CC)へ。
 *    スカーシティの base/override 両rule削除。HTML=theme更新（scarcity要素除去）、それ以外はCSS。
 *
 * v1.1.6 変更（社長指示「もっとデザインと内容をよくして／無料相談の価値をブログ読んだ後に響くように」）:
 *  - コピーを「記事を読んだ直後の心理」に接続（読了→行動の橋渡し＝inquiry-driven設計の"まず相談"段）。
 *    eyebrow「無料AI相談」→「読んで終わりにしないために」/ title「自社のどの業務に…」→「『自社の場合は、
 *    どうすれば？』その答えを、30分で持ち帰る。」（読者の読後の問いをそのままミラーリング）/ lead「記事で
 *    分かるのは、一般論まで。…貴社の業務に当てはめて"次の一手"だけを一緒に整理します。」(一般論→自社の打ち手)。
 *  - 3項目を成果物(deliverable)として価値づけ: list直前に小見出し「この30分で持ち帰れるもの」(.bx-cta2__deliv)
 *    を追加し01-03を"持ち帰れる具体物"に昇格。文言も具体化（自社業務に当てはめたAI活用マップ / 投資対効果
 *    (ROI)のシミュレーション / 社内稟議を通すための論点整理）。右パネル: paneltitle「まずは『自社ならどうか』
 *    だけ、聞いてみませんか？」/ note「その場で、明日からの一歩が決まります。」(相談の具体的リターンを明示)。
 *  - デザイン: .bx-cta2__deliv は eyebrow と呼応する誌面的ラベル（末尾ヘアライン::after で見出し化）。装飾は
 *    増やさず"構造(成果物の見出し)"で価値を可視化（教訓11=引き算を維持しつつ情報設計で質を上げる）。
 *  - 防御override必須(教訓7): 新規テキスト要素 .bx-cta2__deliv は残置 #article-cta *{color:#fff}(詳細度1,0,0)に
 *    白化されるため override #7184AC を追加（base一致・教訓10）。HTML=theme更新、ラベルCSS追加、それ以外CSS。
 *
 * v1.1.7 変更（社長指示「法人向けにして／もっとデザインをよく」＝CTAのところ）:
 *  - コピーを法人(B2B)トーンに確定（直前の"個人の悩み相談"トーンを撤回）: lead「…貴社の業務に当てはめて
 *    "次の一手"だけを一緒に整理します。」/ deliv「この30分で持ち帰れるもの」/ 01 自社業務に当てはめたAI活用
 *    マップ / 02 投資対効果(ROI)のシミュレーション / 03 社内稟議を通すための論点整理 / note「その場で、明日
 *    からの一歩が決まります。」※HTML(theme single-blog.php)変更。
 *  - デザイン昇格＝"色でなく奥行き・光・質感"を足す（frontend-design: 平面ベタ塗りでなく atmosphere/depth）:
 *    ① カード地を単色#0E1730 → 斜め微グラデ(上明→下暗)で奥行き ② 右アクションパネルに上方からの極淡い
 *    ブランドブルー放射(action zoneへ視線誘導・静的アンビエントでAI臭の発光ドットとは別物) ③ リスト区切り罫を
 *    フェードするグラデ罫(border-image)に ④ 番号を僅かに presence up(#46598C→#5972A8, base/override両更新=教訓10)
 *    ⑤ 白ボタンに極淡ブルーのグラデ＋影をシャープ化。新規テキスト要素なし＝白化override追加不要(教訓7)・
 *    ボタン背景の白は不変＝矢印ネイビーのまま(教訓9ペア維持)。引き算原則(教訓11)を壊さず質感のみ上げる。
 *
 * v1.1.8 変更（社長指示「03は社内稟議でなく"その人その人の悩み相談・質問回答"に」＋スクショでボタンはみ出し発覚）:
 *  - list 03「社内稟議を通すための論点整理」→「いまの悩み・疑問への、その場の個別回答」(HTML)。01/02は法人成果物の
 *    まま維持し、03だけ"個別の悩み相談・質問回答"に＝法人deliverable×個別対応のハイブリッド（教訓13の個別トーンを
 *    03に局所適用）。
 *  - 【バグ修正】.bx-cta2__btn が box-sizing:content-box のため width:100% に自身の左右padding(24px×2)が加算され、
 *    パネル内容幅+48pxに膨張→右に18pxはみ出し overflow:hidden で角丸にクリップされていた（rightGap=-18 実測）。
 *    `box-sizing: border-box` を明示してパネル padding 内に正しく収める（左右対称・はみ出し解消）。教訓15。
 */

/* =====================================================================
 * 基礎: オーバーフロー防止（全ページ共通）
 * ===================================================================== */
html, body { overflow-x: hidden; }
img, video, iframe { max-width: 100%; height: auto; }
table { max-width: 100%; }
pre { overflow-x: auto; word-wrap: break-word; }

/* =====================================================================
 * #floating-cta（全デバイス共通）
 * テーマ本来のレイアウト（Tailwind: fixed bottom-10 right-10 rounded-full）を尊重し、
 * z-indexと最低タップ領域だけ確保する。位置・サイズ・形状はテーマ任せ。
 * ===================================================================== */
#floating-cta {
  z-index: 9999 !important;
}
#floating-cta a, #floating-cta button {
  min-height: 48px; /* WCAG 2.5.5 タップ領域最小サイズ */
  min-width: 48px;
}

/* =====================================================================
 * タブレット（〜1024px）
 * ===================================================================== */
@media (max-width: 1024px) {
  .container, .bxp-container { padding-left: 24px !important; padding-right: 24px !important; }
}

/* =====================================================================
 * モバイル（〜768px）
 * ===================================================================== */
@media (max-width: 768px) {
  /* コンテナ余白（コンテンツが画面端に貼り付かないよう） */
  .container, .bxp-container { padding-left: 16px !important; padding-right: 16px !important; }

  /* 見出しのモバイル最適化（読みやすさのため） */
  h1 { font-size: 26px !important; line-height: 1.3 !important; }
  h2 { font-size: 22px !important; line-height: 1.4 !important; }
  h3 { font-size: 18px !important; line-height: 1.4 !important; }

  /* カード・グリッドの1カラム化 */
  .card-grid, .bxp-card-grid, .blog-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  /* #floating-cta はテーマの bottom-10 right-10 (=2.5rem≒40px) のままで右下丸ボタンを維持。
     念のため bottom 余白を少し縮める（モバイルではホームバー回避のため上げる） */
  #floating-cta {
    bottom: 16px !important;
    right: 16px !important;
  }
}

/* =====================================================================
 * 小型モバイル（〜480px）
 * ===================================================================== */
@media (max-width: 480px) {
  h1 { font-size: 22px !important; }
  h2 { font-size: 20px !important; }
  h3 { font-size: 17px !important; }
  /* iPhone SE等の小画面では右下からの距離をさらに詰める */
  #floating-cta {
    bottom: 12px !important;
    right: 12px !important;
  }
}

/* =====================================================================
 * v1.0.5 ヘッダーロゴ モバイル崩れ修正 (2026-04-27 社長指示)
 * 元画像 1536×427 (横長) を h-10 (Tailwind 40px) で表示しているが、
 * モバイルで何らかの理由で巨大化している → 強制サイズ制限
 * ===================================================================== */
@media (max-width: 768px) {
  /* ヘッダー内ロゴ画像（複数セレクタで確実に効かせる） */
  header img[alt*="BoostX"],
  header img.h-10,
  header .h-10[class*="w-auto"],
  body.wp-custom-logo header img,
  .wp-custom-logo header img,
  header img.custom-logo {
    max-height: 32px !important;
    height: auto !important;
    width: auto !important;
    max-width: 140px !important;
    object-fit: contain !important;
  }

  /* ヘッダー自体のpadding縮小（モバイル省スペース化） */
  header,
  body > header,
  body.wp-custom-logo > header {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* ヘッダーロゴ周りのリンク・余白も詰める */
  header a[href="/"],
  header a[href*="boostx-inc.com"]:has(img) {
    padding: 0 !important;
    line-height: 1 !important;
  }

  /* ハンバーガーメニュー（右上）はそのままでOKだが、確認のためサイズ確保 */
  header button[aria-label*="メニュー"],
  header button[aria-expanded],
  header button.menu-toggle {
    min-width: 40px !important;
    min-height: 40px !important;
  }
}

/* 小型機 480px ではさらに詰める */
@media (max-width: 480px) {
  header img[alt*="BoostX"],
  header img.h-10,
  body.wp-custom-logo header img {
    max-height: 28px !important;
    max-width: 120px !important;
  }
  header,
  body > header {
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }
}

/* =====================================================================
 * v1.0.2 テーマCTA（無料個別相談カード）Tailwind ユーティリティ補完
 * (2026-05-31 社長指示「ブログのCTAを元に戻して／外部CSSで」)
 *
 * テーマ boostx-theme 34 の single テンプレート末尾CTA partial が
 * tailwind-compiled.css の再ビルド時にコンテンツスキャンへ含まれず、
 * 下記 arbitrary値ユーティリティが欠落 → 白地化・バッジ消失で崩れた。
 * テーマ側 tailwind を partial 込みで再ビルドするのが恒久対策だが、
 * テーマはこのプラグインの管理外のため、外部CSSで欠落分のみ補完する。
 * brand-blue = rgb(0 87 217)。本文の他要素・既存スタイルには一切影響しない。
 * ===================================================================== */
.bg-\[\#111\]      { background-color: #111; }
.bg-\[\#f9f9f9\]   { background-color: #f9f9f9; }
.bg-brand-blue\/20 { background-color: rgb(0 87 217 / 0.2); }
.rounded-\[2rem\]  { border-radius: 2rem; }
.text-\[28px\]     { font-size: 28px; }
.text-\[16px\]     { font-size: 16px; }
.leading-\[1\.4\]  { line-height: 1.4; }
.leading-\[1\.7\]  { line-height: 1.7; }
.top-\[120px\]     { top: 120px; }

@media (min-width: 768px) {
  .md\:text-\[28px\] { font-size: 28px; }
  .md\:text-\[16px\] { font-size: 16px; }
}

@media (min-width: 1024px) {
  .lg\:w-\[320px\] { width: 320px; }
}

/* =====================================================================
 * v1.0.3 記事末尾CTA「無料相談」コンバージョン最適化コンポーネント .bx-cta2
 * (2026-06-01 社長指示「ブログを読んだ人が動く・問い合わせするデザインとコピーに」)
 * テーマtailwindに flex-row / grid-cols-3 / space-y が無く縦積みで崩れていた問題を、
 * Tailwind非依存の自己完結コンポーネントとして解決（全デバイスで同一品質）。
 * brand-blue = rgb(0 87 217)。
 * ===================================================================== */
/* v1.0.7 「BoostXブランド統一」（社長指示「BoostXのデザインとかカラーとか全てのページを見て
   合わせて作成して」）。本番HP/各ページの実デザイントークンを Chrome MCP で実測し完全準拠:
   ・ブランドブルー --brand-500 #2660DB / --brand-600 #1E4FC7 / --brand-700 #163E9C（HP無料相談ボタン #0057D9）
   ・地=白＋右上ブランドブルーの繊細なradial tint（HPヒーロー section と同じ手法）
   ・見出し ink #0E1730（HP h1/h2 と同色）・キーワードのみブランドブルー強調
   ・プライマリボタン=ブランドブルー#1E4FC7・角丸10px・白文字・ブランド色グロー影（HPヒーロー primary と同一）
   ・カード=白＋クールグレー罫 #E8ECF2（--gray-150）・控えめ影 / フォント Noto Sans JP
   ※ v1.0.5の warm beige も v1.0.6の dark も BoostXのクールブルー基調と不一致だった。本版でサイト統一。 */
/* v1.1.0 「非対称2カラム・アドバイザリーオファー」全面刷新（社長指示「まだAI臭がする／もっと
   デザインよくして」=8回目）。AI臭の真因＝「同サイズ3カードの均等グリッド＋中央寄せ縦積み＋淡い
   角丸アイコン四角」のテンプレ三点セット。色/余白の微調整では消えないため構造から再設計:
   ・左右非対称2カラム（左=エディトリアルな番号付きリスト / 右=濃紺アクションパネル）で「均等3枚」を排除
   ・左カラムは全て左寄せ（中央寄せ縦積みを排除）。番号は Georgia セリフの大型数字で誌面的な品格
   ・右パネルは承認済みネイビー #0E1730（社長「色味紺でいいよ」）。ボタンは白地×ネイビー文字で
     パネル上の最大コントラスト＝1点集中（淡い角丸アイコン四角は全廃）
   ・地は白＋極薄ネイビーの空気感。上端ブランド極細罫のみ。装飾は引き算。 */
.bx-cta2 {
  position: relative;
  overflow: hidden;
  /* 単色ベタ塗りでなく斜めの微グラデで奥行きを付与（上明→下暗・プレミアムなダークUIの陰影） */
  background: linear-gradient(158deg, #14223F 0%, #0E1730 50%, #0B1226 100%);
  border-radius: 22px;
  padding: 0;
  box-shadow:
    0 40px 90px -46px rgba(5,11,30,.72),
    0 10px 30px -18px rgba(5,11,30,.5);
}
/* プレミアムな額縁：内側ヘアラインリングで地色そのまま"作り込んだ"質感を付与 */
.bx-cta2::after {
  content: ""; position: absolute; inset: 0; z-index: 3; pointer-events: none;
  border-radius: 22px;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.07), inset 0 1px 0 rgba(255,255,255,.10);
}
/* 上端ブランドブルーの極細アクセント罫（単色） */
.bx-cta2::before {
  content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2px; z-index: 4;
  background: #2E6BF0;
}
.bx-cta2__glow { display: none; }
.bx-cta2__inner {
  position: relative; z-index: 1;
  display: grid; grid-template-columns: 1fr; gap: 0;
}
/* 左カラム：エディトリアル（左寄せ・番号付きリスト・単色ネイビー地に白文字） */
.bx-cta2__main { padding: 24px 24px 20px; text-align: left; }
.bx-cta2__eyebrow {
  display: flex; align-items: center; gap: 11px;
  margin: 0 0 11px; color: #8FA8E0;
  font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
}
/* 先頭のブランド極細バー＝誌面的な見出しマーカー */
.bx-cta2__eyebrow::before {
  content: ""; flex: 0 0 auto; width: 22px; height: 2px; border-radius: 2px;
  background: #2E6BF0;
}
.bx-cta2__eyebrow span { white-space: nowrap; }
.bx-cta2__eyebrow::after {
  content: ""; flex: 1 1 auto; height: 1px;
  background: rgba(255,255,255,.12);
}
.bx-cta2__title {
  color: #ffffff; font-weight: 800; letter-spacing: -.02em; line-height: 1.4;
  font-size: 22px; margin: 0 0 9px;
}
.bx-cta2__title b { color: #6E9BF0; font-weight: 800; }
.bx-cta2__lead {
  color: #A7B2C8; font-size: 13.5px; line-height: 1.75; margin: 0 0 15px;
}
.bx-cta2__lead b { color: #8FA8E0; font-weight: 700; }
/* 「この30分で持ち帰れるもの」＝3項目を成果物(deliverable)として価値づけする小見出しラベル */
.bx-cta2__deliv {
  display: flex; align-items: center; gap: 9px;
  margin: 0 0 4px; color: #7184AC;
  font-size: 10.5px; font-weight: 700; letter-spacing: .13em;
}
.bx-cta2__deliv::after {
  content: ""; flex: 1 1 auto; height: 1px; background: rgba(255,255,255,.10);
}
/* 番号付きエディトリアルリスト（大型セリフ数字をデザイン主役に） */
.bx-cta2__list { list-style: none; margin: 0; padding: 0; }
.bx-cta2__li {
  position: relative;
  display: flex; align-items: center; gap: 15px;
  padding: 10px 2px;
  /* フェードするグラデ罫（左濃→右透明）でベタ罫よりも誌面的で上質に */
  border-top: 1px solid rgba(255,255,255,.10);
  border-image: linear-gradient(90deg, rgba(255,255,255,.16) 0%, rgba(255,255,255,.03) 70%, rgba(255,255,255,0) 100%) 1;
}
.bx-cta2__li:first-child { border-top: 0; padding-top: 4px; }
.bx-cta2__li:last-child { padding-bottom: 2px; }
.bx-cta2__num {
  flex: 0 0 auto;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: 27px; font-weight: 700; line-height: 1; font-style: italic;
  color: #5972A8; letter-spacing: -.02em;
  font-feature-settings: "tnum"; width: 32px; text-align: left;
}
.bx-cta2__it {
  color: #EAEEF6; font-weight: 700; font-size: 14.5px; margin: 0; line-height: 1.4;
  display: flex; align-items: center; gap: 9px;
}
/* 項目テキスト頭の極小ブランドチェック（淡い四角アイコンでなく細ストロークのチェックのみ） */
.bx-cta2__it::before {
  content: ""; flex: 0 0 auto; width: 14px; height: 14px;
  background: no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232E6BF0' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 13l4 4L19 7'/%3E%3C/svg%3E");
}
/* 右カラム：アクションパネル（1点集中CTA・同一単色ネイビー＝左と地続き、極細罫で仕切り） */
.bx-cta2__panel {
  position: relative; overflow: hidden;
  /* アクションパネル：上方からの極淡いブランドブルー放射でCTAへ視線誘導（静的アンビエント＝発光ドット等のAI臭装飾ではない）＋微グラデ地で左カラムと地続きの奥行き */
  background:
    radial-gradient(135% 95% at 50% -12%, rgba(46,107,240,.16), rgba(46,107,240,0) 56%),
    linear-gradient(180deg, #101E3A 0%, #0C1428 100%);
  border-top: 1px solid rgba(255,255,255,.09);
  padding: 24px 24px 22px;
  display: flex; flex-direction: column; align-items: stretch; justify-content: center;
  text-align: center;
}
/* パネルタグ：光るドット等の装飾は AI臭の元として撤去・静かなテキストラベルに */
.bx-cta2__paneltag {
  align-self: center;
  display: inline-flex; align-items: center;
  color: #93A6CC;
  font-size: 11px; font-weight: 700; letter-spacing: .12em;
  margin-bottom: 11px;
}
.bx-cta2__paneltitle {
  color: #ffffff; font-weight: 800; font-size: 19px; line-height: 1.5;
  letter-spacing: -.01em; margin: 0 0 14px;
}
/* 主役ボタン：濃紺パネル上で白地×ネイビー文字。色付きグロー/円バッジは AI臭の元として撤去し、
   中立的な淡い影だけの「静かな自信」ボタンに（押せる感は hover の微リフトで担保） */
.bx-cta2__btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 9px;
  width: 100%;
  /* content-box だと width:100% に自身のpaddingが加算されパネルから右にはみ出すため border-box で内寸に収める（教訓15） */
  box-sizing: border-box;
  /* 白ベタ → 極淡ブルーの縦グラデで上質感。地色は白基調を維持＝矢印/文字はネイビーのまま(教訓9) */
  background: linear-gradient(180deg, #ffffff 0%, #EAF1FF 100%);
  color: #12347E; font-weight: 800; font-size: 16.5px;
  letter-spacing: .01em; text-decoration: none;
  padding: 15px 24px; border-radius: 11px;
  box-shadow: 0 1px 0 rgba(255,255,255,.7) inset, 0 1px 2px rgba(5,11,30,.16), 0 10px 22px -12px rgba(5,11,30,.6);
  transition: transform .2s ease, box-shadow .2s ease;
}
.bx-cta2__btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 1px 0 rgba(255,255,255,.8) inset, 0 2px 4px rgba(5,11,30,.18), 0 16px 30px -12px rgba(5,11,30,.66);
}
.bx-cta2__btn:active { transform: translateY(0); }
/* 矢印はプレーンな細線アイコン（円バッジ/グローは廃止） */
.bx-cta2__btn svg {
  width: 17px; height: 17px; flex: 0 0 auto; color: #12347E;
  transition: transform .2s ease;
}
.bx-cta2__btn:hover svg { transform: translateX(3px); }
.bx-cta2__note { color: #8C98B4; font-size: 12px; margin: 10px 0 0; }
/* タブレット以上：左右非対称2カラム（左=本文1.3fr / 右=パネル1fr）・低背でゆとり */
@media (min-width: 880px) {
  .bx-cta2__inner { grid-template-columns: 1.3fr 1fr; }
  .bx-cta2__main { padding: 30px 40px 26px; }
  .bx-cta2__title { font-size: 26px; margin-bottom: 10px; }
  .bx-cta2__lead { font-size: 14px; margin-bottom: 16px; }
  .bx-cta2__li { padding: 11px 2px; gap: 15px; }
  .bx-cta2__num { font-size: 28px; width: 38px; }
  .bx-cta2__it { font-size: 15px; }
  /* 2カラム時の仕切りは左罫に切替（上罫を解除） */
  .bx-cta2__panel { padding: 30px 34px 28px; border-top: 0; border-left: 1px solid rgba(255,255,255,.10); }
  .bx-cta2__paneltitle { font-size: 21px; }
  .bx-cta2__btn { font-size: 17px; padding: 16px 26px; }
}
/* 極小スマホ（〜360px）：文字と余白を一段詰めて崩れ防止 */
@media (max-width: 360px) {
  .bx-cta2__main, .bx-cta2__panel { padding: 22px 16px 20px; }
  .bx-cta2__title { font-size: 19px; }
  .bx-cta2__lead { font-size: 13px; }
  .bx-cta2__num { font-size: 22px; width: 28px; }
  .bx-cta2__li { gap: 11px; padding: 10px 2px; }
  .bx-cta2__paneltitle { font-size: 17px; }
  .bx-cta2__btn { font-size: 15.5px; padding: 15px 18px; border-radius: 12px; }
}

/* ===== 色の防御オーバーライド（重要） =====
 * テーマ側にダーク時代の残置スタイル `<style id="bx-cta-fix">` があり
 *   #article-cta * { color:#fff } / #article-cta h3 { color:#fff !important }
 * のように ID 指定+!important で文字を白に強制している。v1.1.3 でカード全体が単色ネイビー地に
 * なり、v1.1.4 で各値を base と一致させて確定（残置#fffと方向は一致するが、明示確定で事故防止）。
 * 高詳細度 (#article-cta .bx-cta2__*) +!important で配色を固定。値は base ブロックと一致させること。 */
#article-cta .bx-cta2__eyebrow { color: #8FA8E0 !important; }
#article-cta .bx-cta2__eyebrow span { color: #8FA8E0 !important; }
#article-cta .bx-cta2__title { color: #ffffff !important; }
#article-cta .bx-cta2__title b { color: #6E9BF0 !important; }
#article-cta .bx-cta2__lead { color: #A7B2C8 !important; }
#article-cta .bx-cta2__lead b { color: #8FA8E0 !important; }
#article-cta .bx-cta2__deliv { color: #7184AC !important; }
#article-cta .bx-cta2__num { color: #5972A8 !important; }
#article-cta .bx-cta2__it { color: #EAEEF6 !important; }
/* 右パネル（濃紺地）：白系で確定 */
#article-cta .bx-cta2__paneltag { color: #93A6CC !important; }
#article-cta .bx-cta2__paneltitle { color: #ffffff !important; }
/* ボタンは白地×ネイビー文字。残置 #article-cta *{color:#fff} を上書きしネイビー確定 */
#article-cta .bx-cta2__btn { color: #12347E !important; }
/* ボタン内の矢印SVG: v1.1.5で円バッジを撤去し白地ボタン上のプレーン矢印に戻したため、ネイビーで確定
   （白地に白矢印で不可視になる事故を防ぐ＝背景反転とstroke反転は必ずペア。教訓9） */
#article-cta .bx-cta2__btn svg { color: #12347E !important; stroke: #12347E !important; }
#article-cta .bx-cta2__note { color: #8C98B4 !important; }

/* =====================================================================
 * v1.0.9 SNS共有ボタン .bx-share（テーマ single-blog.php / Tailwind非依存）
 * 旧: 絵文字グリフ(𝕏/f/🔗)＋灰色円。新: クリーンSVGアイコン＋ブランドネイビー円ボタン。
 * 縦の余白も圧縮（pt-10/pb-8/mt-14 → 控えめに）。色味はネイビー/ブルーで統一（社長指示）。
 * ===================================================================== */
#blog-share.bx-share {
  display: flex; flex-direction: column; align-items: center;
  border-top: 1px solid #EEF1F6; margin-top: 40px; padding: 26px 0 8px;
}
#blog-share .bx-share__label {
  font-size: 11px; font-weight: 700; color: #9aa3b2;
  letter-spacing: .18em; text-transform: uppercase; margin-bottom: 16px;
}
#blog-share .bx-share__row { display: flex; align-items: center; gap: 14px; }
#blog-share .bx-share__btn {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  width: 46px; height: 46px; border-radius: 999px;
  background: #ffffff; border: 1px solid #E3E8F0; color: #1E4FC7;
  box-shadow: 0 6px 16px -10px rgba(14,23,48,.30);
  text-decoration: none; cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}
#blog-share .bx-share__btn svg { width: 19px; height: 19px; display: block; }
#blog-share .bx-share__btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 26px -10px rgba(30,79,199,.5);
}
/* 各SNSのブランドカラーでホバー塗り（白アイコンに反転） */
#blog-share .bx-share__btn--x:hover    { background: #0B1220; border-color: #0B1220; color: #ffffff; }
#blog-share .bx-share__btn--fb:hover   { background: #1877F2; border-color: #1877F2; color: #ffffff; }
#blog-share .bx-share__btn--link:hover { background: #1E4FC7; border-color: #1E4FC7; color: #ffffff; }
/* コピー完了トースト */
#blog-share .bx-share__btn--link .bx-share__copied {
  position: absolute; bottom: calc(100% + 8px); left: 50%; transform: translateX(-50%) translateY(4px);
  background: #0E1730; color: #fff; font-size: 11px; font-weight: 700; white-space: nowrap;
  padding: 5px 10px; border-radius: 7px; opacity: 0; pointer-events: none;
  transition: opacity .18s ease, transform .18s ease;
}
#blog-share .bx-share__btn--link.is-copied .bx-share__copied { opacity: 1; transform: translateX(-50%) translateY(0); }
@media (min-width: 768px) {
  #blog-share.bx-share { margin-top: 48px; padding: 30px 0 10px; }
  #blog-share .bx-share__row { gap: 16px; }
  #blog-share .bx-share__btn { width: 50px; height: 50px; }
  #blog-share .bx-share__btn svg { width: 20px; height: 20px; }
}

/* ===== global-white-text.css ===== */
/*
 * BoostX Global White Text on Colored Backgrounds
 * 色背景エリア内テキストの白文字強制（2026-04-24 社長直接指示）
 * Version: 1.0.0
 * Date: 2026-04-24
 */

/* HP/固定ページの色背景CTA */
.bxp-cta,
.bxp-cta * {
  color: #fff !important;
}
.bxp-cta .bxp-btn-primary,
.bxp-cta a.button { color: #fff !important; }

/* フローティングCTA（全ページ） */
#floating-cta,
#floating-cta * { color: #fff !important; }

/* ヒーロー暗背景セクション */
.hero-dark, .hero-dark *,
.cta-dark, .cta-dark *,
.section-dark, .section-dark * {
  color: #fff !important;
}

/* 濃色背景を持つ一般セクション（背景CSS色で判定できないため命名規約ベース） */
[class*="bg-navy"], [class*="bg-navy"] *,
[class*="bg-dark"], [class*="bg-dark"] *,
[style*="background:#0F172A"], [style*="background:#0F172A"] *,
[style*="background-color:#0F172A"], [style*="background-color:#0F172A"] * {
  color: #fff !important;
}

/* 例外：ボタン・バッジの明示色は維持 */
.bxp-btn-primary,
.cta-dark .btn-primary,
.bx-cta-box__badge { color: inherit; }

/* ===== bx-lite-svc-lp.css ===== */
.svc-lp {
  --ink:#0F172A;
  --ink-2:#1E293B;
  --ink-3:#334155;
  --muted:#64748B;
  --blue:#2563EB;
  --blue-dk:#1D4ED8;
  --blue-dk2:#1E40AF;
  --blue-lt:#3B82F6;
  --blue-pale:#93C5FD;
  --blue-mist:#BFDBFE;
  --blue-tint:#DBEAFE;
  --blue-tint-2:#EFF6FF;
  --bg:#fff;
  --bg-soft:#F8FAFC;
  --bg-hero:#F4F8FF;
  --border:#E2E8F0;
  --border-2:#CBD5E1;
  --gray-50:#F8FAFC;
  --gray-100:#F1F5F9;
  --sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic Medium","Yu Gothic","Meiryo",system-ui,sans-serif;
  --serif:var(--sans);
  --mono:var(--sans);
  --maxw:1180px;
  --ease:cubic-bezier(.4,0,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --sh-card:0 1px 3px rgba(15,23,42,.06),0 4px 14px rgba(15,23,42,.06);
  --sh-hover:0 14px 32px rgba(37,99,235,.16),0 4px 12px rgba(15,23,42,.08);
  --sh-strong:0 24px 56px rgba(37,99,235,.2),0 8px 18px rgba(15,23,42,.1);
}
.svc-lp { font-family:var(--sans); color:var(--ink-2); line-height:1.95; font-feature-settings:"palt" 1,"kern" 1; background:var(--bg); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
.svc-lp *,.svc-lp *::before,.svc-lp *::after { box-sizing:border-box; }
.svc-lp img { max-width:100%; height:auto; display:block; }
.svc-lp a { color:inherit; text-decoration:none; }
.svc-lp .wrap { max-width:var(--maxw); margin:0 auto; padding:0 32px; }
.svc-lp .wrap-narrow { max-width:980px; margin:0 auto; padding:0 32px; }
.svc-hero { position:relative; padding:120px 0 96px; background:linear-gradient(180deg,var(--bg-hero) 0%,#fff 100%); color:var(--ink); border-bottom:1px solid var(--border); overflow:hidden; }
.svc-hero::after { content:''; position:absolute; top:-10%; right:-8%; width:680px; height:680px; border-radius:50%; background:radial-gradient(circle,rgba(37,99,235,.16) 0%,transparent 65%); filter:blur(56px); pointer-events:none; z-index:0; }
.svc-hero__inner { position:relative; z-index:2; max-width:1000px; margin:0 auto; }
.svc-hero__chapter,.svc-hero__meta { display:flex; gap:14px; align-items:center; margin-bottom:32px; font-size:13px; font-weight:700; letter-spacing:0.08em; color:var(--blue-dk); flex-wrap:wrap; }
.svc-hero__chapter-bar,.svc-hero__meta-line { width:32px; height:2px; background:var(--blue); flex-shrink:0; }
.svc-hero__chapter-num { color:var(--blue); font-weight:700; }
.svc-hero__quote { display:block; font-size:17px; line-height:1.85; color:var(--ink-3); font-weight:500; margin:0 0 28px; padding:4px 0 4px 16px; border-left:2px solid var(--border-2); max-width:760px; }
.svc-hero__title { font-size:clamp(36px,5.4vw,60px); font-weight:900; line-height:1.32; letter-spacing:0.005em; color:var(--ink); margin:0 0 32px; text-wrap:balance; }
.svc-hero__title em { font-style:normal; color:var(--blue); font-weight:900; background:linear-gradient(transparent 64%,rgba(37,99,235,.18) 64%,rgba(37,99,235,.18) 92%,transparent 92%); padding:0 0.04em; }
.svc-hero__lead { font-size:17px; color:var(--ink-2); line-height:2.0; max-width:740px; margin:0 0 40px; font-weight:500; }
.svc-hero__lead strong { color:var(--blue-dk); font-weight:700; }
.svc-hero__ctas { display:flex; gap:16px; flex-wrap:wrap; align-items:center; margin-bottom:64px; }
.svc-btn { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:20px 36px; border-radius:6px; font-weight:700; font-size:15px; letter-spacing:0.04em; transition:all .35s var(--ease); cursor:pointer; border:none; line-height:1; text-decoration:none; }
.svc-btn--primary { background:var(--blue); color:#fff; box-shadow:0 6px 18px rgba(37,99,235,.32),0 1px 3px rgba(37,99,235,.18); }
.svc-btn--primary:hover { background:var(--blue-dk); transform:translateY(-2px); box-shadow:0 14px 32px rgba(37,99,235,.42); }
.svc-btn--line { background:transparent; color:var(--ink); padding:18px 0; border-bottom:2px solid var(--ink); border-radius:0; }
.svc-btn--line:hover { color:var(--blue); border-color:var(--blue); gap:18px; }
.svc-btn__arrow { transition:transform .35s var(--ease); font-weight:700; }
.svc-btn:hover .svc-btn__arrow { transform:translateX(6px); }
.svc-hero__pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding-top:48px; border-top:1px solid var(--border); max-width:960px; }
.svc-hero__pillar { display:flex; align-items:flex-start; gap:18px; padding:24px 28px; background:#fff; border:1px solid var(--border); border-radius:8px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-hero__pillar:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-hero__pillar-num { flex-shrink:0; font-size:42px; font-weight:900; color:var(--blue); letter-spacing:-0.02em; line-height:1; }
.svc-hero__pillar-text { font-size:15px; color:var(--ink-2); font-weight:600; line-height:1.7; padding-top:6px; }
.svc-section { padding:120px 0; position:relative; background:var(--bg); }
.svc-section--soft { background:var(--bg-soft); }
.svc-section--pearl { background:#FAFBFE; }
.svc-section--mist { background:var(--bg-hero); }
.svc-section--ink { background:var(--ink); color:#fff; padding:120px 0; }
.svc-section--story { background:var(--bg-soft); padding:120px 0; }
.svc-section__head { max-width:880px; margin:0 auto 72px; text-align:center; }
.svc-section__head--left { text-align:left; margin-left:0; }
.svc-kicker-row { display:inline-flex; align-items:center; gap:14px; margin-bottom:20px; }
.svc-kicker__idx { font-size:13px; font-weight:800; color:var(--blue); letter-spacing:0.06em; }
.svc-kicker__bar { width:32px; height:2px; background:var(--blue); }
.svc-kicker { font-size:14px; font-weight:800; color:var(--blue); letter-spacing:0.06em; display:inline-flex; align-items:center; gap:14px; }
.svc-kicker::before { content:''; display:inline-block; width:32px; height:2px; background:var(--blue); }
.svc-section--ink .svc-kicker__idx,.svc-section--ink .svc-kicker { color:var(--blue-pale); }
.svc-section--ink .svc-kicker::before,.svc-section--ink .svc-kicker__bar { background:var(--blue-pale); }
.svc-title { font-size:clamp(30px,4.2vw,44px); font-weight:900; line-height:1.36; color:var(--ink); margin:0 0 24px; text-wrap:balance; }
.svc-title em { font-style:normal; color:var(--blue); font-weight:900; background:linear-gradient(transparent 64%,rgba(37,99,235,.18) 64%,rgba(37,99,235,.18) 92%,transparent 92%); padding:0 0.04em; }
.svc-section--ink .svc-title { color:#fff; }
.svc-section--ink .svc-title em { color:var(--blue-pale); background:linear-gradient(transparent 64%,rgba(147,197,253,.22) 64%,rgba(147,197,253,.22) 92%,transparent 92%); }
.svc-lead { font-size:16px; color:var(--ink-2); line-height:2.0; max-width:760px; margin:0 auto; font-weight:500; }
.svc-section--ink .svc-lead { color:#fff; }
.svc-story { position:relative; }
.svc-story::before { content:''; position:absolute; top:200px; left:50%; width:2px; height:calc(100% - 400px); background:linear-gradient(180deg,transparent 0%,var(--blue-pale) 8%,var(--blue-pale) 92%,transparent 100%); transform:translateX(-50%); pointer-events:none; }
.svc-story__timeline { position:relative; max-width:920px; margin:0 auto; padding:32px 0; }
.svc-story__moment { position:relative; display:grid; grid-template-columns:1fr 80px 1fr; align-items:start; margin-bottom:48px; }
.svc-story__moment::before { content:''; position:absolute; top:28px; left:50%; width:14px; height:14px; background:var(--blue); border:3px solid #fff; border-radius:50%; transform:translateX(-50%); z-index:2; box-shadow:0 0 0 4px var(--bg-soft),0 2px 8px rgba(37,99,235,.32); }
.svc-story__moment:nth-child(odd) .svc-story__time { grid-column:1; text-align:right; padding-right:48px; }
.svc-story__moment:nth-child(odd) .svc-story__scene { grid-column:3; padding-left:48px; }
.svc-story__moment:nth-child(even) .svc-story__time { grid-column:3; text-align:left; padding-left:48px; }
.svc-story__moment:nth-child(even) .svc-story__scene { grid-column:1; padding-right:48px; text-align:right; }
.svc-story__time { font-size:38px; font-weight:900; color:var(--blue); letter-spacing:-0.02em; line-height:1; padding-top:6px; }
.svc-story__time-meta { display:block; font-size:13px; font-weight:700; color:var(--blue-dk); letter-spacing:0.04em; margin-top:12px; }
.svc-story__scene { background:#fff; border:1px solid var(--border); border-radius:8px; padding:24px 28px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-story__moment:hover .svc-story__scene { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-story__scene-title { font-size:19px; font-weight:800; color:var(--ink); margin:0 0 12px; line-height:1.5; }
.svc-story__scene-body { font-size:16px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-story__punch { max-width:880px; margin:96px auto 0; font-size:clamp(22px,2.8vw,30px); font-weight:800; color:var(--ink); line-height:1.7; text-align:center; padding:48px 32px; background:#fff; border:1px solid var(--border); border-radius:8px; border-top:4px solid var(--blue); box-shadow:var(--sh-card); text-wrap:balance; }
.svc-why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-why-card { padding:36px 30px 32px; background:#fff; border:1px solid var(--border); border-radius:8px; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-why-card::before { content:''; position:absolute; left:0; top:0; height:4px; width:100%; background:linear-gradient(90deg,var(--blue) 0%,var(--blue-lt) 100%); transform:scaleX(.24); transform-origin:left; transition:transform .4s var(--ease); }
.svc-why-card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-5px); }
.svc-why-card:hover::before { transform:scaleX(1); }
.svc-why-card__num { display:flex; flex-direction:column; gap:8px; line-height:1; margin-bottom:18px; }
.svc-why-card__num-label { font-size:12px; font-weight:800; color:var(--blue); letter-spacing:0.08em; }
.svc-why-card__num-digit { font-size:56px; font-weight:900; color:var(--ink); line-height:1; letter-spacing:-0.02em; transition:color .3s var(--ease); }
.svc-why-card:hover .svc-why-card__num-digit { color:var(--blue); }
.svc-why-card__title { font-size:19px; font-weight:800; color:var(--ink); line-height:1.5; margin:0 0 14px; }
.svc-why-card__desc { font-size:15.5px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-cov__card { background:#fff; border:1px solid var(--border); border-radius:8px; padding:32px 28px; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-cov__card::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleY(0); transform-origin:top; transition:transform .4s var(--ease); }
.svc-cov__card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-cov__card:hover::before { transform:scaleY(1); }
.svc-cov__num { display:inline-block; font-size:42px; font-weight:900; color:var(--blue); line-height:1; margin-bottom:16px; letter-spacing:-0.02em; }
.svc-cov__title { font-size:18px; font-weight:800; color:var(--ink); margin:0 0 14px; line-height:1.5; }
.svc-cov__desc { font-size:15px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov__note { margin-top:48px; background:linear-gradient(135deg,#fff 0%,var(--bg-hero) 100%); border:1px solid var(--border); border-left:4px solid var(--blue); border-radius:8px; padding:32px 36px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; box-shadow:var(--sh-card); }
.svc-cov__note-main { flex:1; min-width:340px; }
.svc-cov__note-title { font-size:18px; font-weight:800; color:var(--blue-dk); margin:0 0 10px; }
.svc-cov__note-body { font-size:15px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov__note-cta { flex-shrink:0; display:inline-flex; align-items:center; gap:12px; background:var(--blue); color:#fff; padding:16px 28px; border-radius:6px; font-size:14px; font-weight:700; letter-spacing:0.04em; text-decoration:none; transition:all .35s var(--ease); box-shadow:0 4px 12px rgba(37,99,235,.28); }
.svc-cov__note-cta:hover { background:var(--blue-dk); transform:translateY(-2px); box-shadow:0 10px 24px rgba(37,99,235,.4); }
.svc-ba { display:flex; flex-direction:column; gap:20px; margin-top:64px; }
.svc-ba__row { display:grid; grid-template-columns:1fr 64px 1fr; align-items:stretch; padding:36px 32px; background:#fff; border:1px solid var(--border); border-radius:10px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-ba__row:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-ba__task-head { grid-column:1 / -1; display:flex; align-items:center; gap:18px; margin-bottom:24px; padding-bottom:20px; border-bottom:1px dashed var(--border-2); }
.svc-ba__task-num { display:inline-flex; align-items:center; gap:8px; background:var(--blue); color:#fff; padding:8px 16px; border-radius:6px; font-size:13px; font-weight:800; line-height:1; box-shadow:0 4px 12px rgba(37,99,235,.32); }
.svc-ba__task-num-label,.svc-ba__task-num-digit { color:#fff; font-weight:800; }
.svc-ba__task-num-label { font-size:11px; }
.svc-ba__task-num-digit { font-size:14px; }
.svc-ba__task-text { font-size:20px; font-weight:900; color:var(--ink); line-height:1.4; }
.svc-ba__side { padding:24px 28px; border-radius:8px; display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:120px; text-align:center; }
.svc-ba__before { background:linear-gradient(135deg,#F8FAFC 0%,#EEF2F7 100%); border:1px solid var(--border-2); position:relative; overflow:hidden; }
.svc-ba__before::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:#CBD5E1; }
.svc-ba__after { background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dk) 60%,var(--blue-dk2) 100%); border:none; position:relative; overflow:hidden; box-shadow:0 8px 22px rgba(37,99,235,.22); }
.svc-ba__after::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%); pointer-events:none; }
.svc-ba__label { font-size:12px; font-weight:800; letter-spacing:0.12em; margin-bottom:12px; }
.svc-ba__before .svc-ba__label { color:var(--muted); }
.svc-ba__after .svc-ba__label { color:rgba(255,255,255,.92); }
.svc-ba__text { font-size:24px; font-weight:900; line-height:1.25; margin:0; letter-spacing:-0.005em; }
.svc-ba__before .svc-ba__text { color:var(--ink-3); text-decoration:line-through; text-decoration-color:rgba(100,116,139,.45); text-decoration-thickness:2px; }
.svc-ba__after .svc-ba__text { color:#fff; }
.svc-ba__arrow { display:flex; align-items:center; justify-content:center; color:var(--blue); font-size:36px; font-weight:900; transition:all .35s var(--ease); }
.svc-ba__row:hover .svc-ba__arrow { transform:translateX(8px); color:var(--blue-dk); }
.svc-ba__total { margin-top:32px; background:linear-gradient(135deg,var(--ink) 0%,var(--blue-dk2) 100%); border-radius:10px; padding:40px 44px; text-align:center; box-shadow:0 14px 32px rgba(15,23,42,.22); }
.svc-ba__total-label { font-size:13px; font-weight:800; color:var(--blue-pale); letter-spacing:0.1em; margin-bottom:14px; }
.svc-ba__total-value { font-size:clamp(34px,4.6vw,48px); font-weight:900; color:#fff; line-height:1.2; letter-spacing:-0.02em; }
.svc-ba__total-value small { font-size:.5em; color:var(--blue-pale); font-weight:700; margin-left:8px; }
.svc-pitfalls { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-pitfall { background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; padding:32px 28px; transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-pitfall::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--blue-pale) 0%,var(--blue-mist) 100%); transform:scaleY(.32); transform-origin:top; transition:transform .4s var(--ease); }
.svc-pitfall:hover { background:rgba(255,255,255,.08); border-color:rgba(147,197,253,.5); transform:translateY(-3px); }
.svc-pitfall:hover::before { transform:scaleY(1); }
.svc-pitfall__head { display:flex; flex-direction:column; gap:14px; margin-bottom:22px; padding-bottom:18px; border-bottom:1px solid rgba(147,197,253,.2); }
.svc-pitfall__num { display:inline-flex; align-items:baseline; gap:8px; font-size:13px; font-weight:800; color:var(--blue-pale); letter-spacing:0.04em; line-height:1; }
.svc-pitfall__num span { color:#fff; font-size:18px; font-weight:900; }
.svc-pitfall__title { font-size:18px; font-weight:800; color:#fff; margin:0; line-height:1.55; }
.svc-pitfall__body { display:flex; flex-direction:column; gap:18px; }
.svc-pitfall__col-head { display:flex; align-items:baseline; gap:10px; margin-bottom:6px; }
.svc-pitfall__col-mark { font-size:14px; font-weight:800; }
.svc-pitfall__col--cause .svc-pitfall__col-mark { color:#FCA5A5; }
.svc-pitfall__col--fix .svc-pitfall__col-mark { color:var(--blue-pale); }
.svc-pitfall__col-label { font-size:13px; font-weight:800; letter-spacing:0.04em; }
.svc-pitfall__col--cause .svc-pitfall__col-label { color:#FCA5A5; }
.svc-pitfall__col--fix .svc-pitfall__col-label { color:var(--blue-pale); }
.svc-pitfall__col-text { font-size:14.5px; color:#fff; line-height:1.85; margin:0; font-weight:500; }
.svc-voices { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-voice-card { background:#fff; border:1px solid var(--border); border-radius:8px; padding:36px 30px 30px; box-shadow:var(--sh-card); transition:all .35s var(--ease); display:flex; flex-direction:column; position:relative; overflow:hidden; }
.svc-voice-card::before { content:''; position:absolute; left:0; top:0; width:4px; height:100%; background:linear-gradient(180deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleY(.32); transform-origin:top; transition:transform .4s var(--ease); }
.svc-voice-card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-4px); }
.svc-voice-card:hover::before { transform:scaleY(1); }
.svc-voice-card__mark { position:absolute; top:20px; right:28px; font-size:64px; line-height:1; color:var(--blue); opacity:.14; font-weight:900; pointer-events:none; }
.svc-voice-card__body { font-size:16px; color:var(--ink); line-height:1.9; margin:24px 0 28px; flex:1; font-weight:500; }
.svc-voice-card__meta { display:flex; flex-direction:column; gap:10px; padding-top:22px; border-top:1px solid var(--gray-100); }
.svc-voice-card__persona { font-size:13.5px; color:var(--muted); font-weight:700; letter-spacing:0.02em; }
.svc-voice-card__metric { display:inline-flex; align-items:center; gap:8px; width:fit-content; font-size:14px; color:var(--blue-dk); font-weight:800; padding:6px 12px; background:var(--blue-tint); border:1px solid var(--blue-pale); border-radius:4px; letter-spacing:0.02em; }
.svc-voice-card__metric::before { content:'↑'; color:var(--blue); }
.svc-vision__timeline { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-vision__stage { padding:40px 32px; background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-vision__stage::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue-pale) 0%,var(--blue-mist) 100%); transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); }
.svc-vision__stage:hover { background:rgba(255,255,255,.07); border-color:rgba(147,197,253,.5); transform:translateY(-4px); }
.svc-vision__stage:hover::before { transform:scaleX(1); }
.svc-vision__stage-dot { display:none; }
.svc-vision__stage-label { font-size:12.5px; font-weight:800; color:var(--blue-pale); letter-spacing:0.06em; margin-bottom:18px; }
.svc-vision__stage-num { font-size:56px; font-weight:900; color:#fff; line-height:1; letter-spacing:-0.02em; margin:0 0 22px; }
.svc-vision__stage-num small { font-size:.36em; color:var(--blue-pale); font-weight:700; margin-left:6px; }
.svc-vision__stage-title { font-size:19px; font-weight:800; color:#fff; margin:0 0 14px; line-height:1.5; }
.svc-vision__stage-body { font-size:15px; color:#fff; line-height:1.9; margin:0; font-weight:500; }
.svc-plans { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; align-items:stretch; }
.svc-plan { background:#fff; border:1px solid var(--border); border-radius:10px; padding:40px 30px 30px; display:flex; flex-direction:column; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-plan::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleX(.3); transform-origin:left; transition:transform .4s var(--ease); }
.svc-plan:hover { border-color:var(--blue-pale); box-shadow:var(--sh-strong); transform:translateY(-6px); }
.svc-plan:hover::before { transform:scaleX(1); }
.svc-plan__idx { font-size:13px; font-weight:800; color:var(--muted); letter-spacing:0.06em; margin-bottom:10px; }
.svc-plan__tag { font-size:13px; font-weight:800; color:var(--blue); letter-spacing:0.04em; margin-bottom:14px; display:inline-flex; align-items:center; gap:10px; }
.svc-plan__tag::before { content:''; width:24px; height:2px; background:var(--blue); }
.svc-plan__name { font-size:24px; font-weight:900; color:var(--ink); margin:0 0 14px; line-height:1.4; }
.svc-plan__sub { font-size:15px; color:var(--ink-2); margin:0 0 28px; line-height:1.8; font-weight:500; }
.svc-plan__price { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px; padding-bottom:26px; margin-bottom:26px; border-bottom:1px solid var(--gray-100); }
.svc-plan__price-num { font-size:42px; font-weight:900; color:var(--ink); line-height:1; letter-spacing:-0.02em; transition:color .35s var(--ease); }
.svc-plan__price-num small { font-size:.4em; color:var(--ink); font-weight:700; margin-left:4px; }
.svc-plan:hover .svc-plan__price-num { color:var(--blue); }
.svc-plan__price-unit { font-size:13px; color:var(--muted); font-weight:600; line-height:1.6; width:100%; margin-top:8px; }
.svc-plan__for { background:var(--bg-soft); border-left:3px solid var(--blue); border-radius:4px; padding:18px 22px; margin-bottom:24px; }
.svc-plan__block-label { font-size:12.5px; font-weight:800; color:var(--blue); letter-spacing:0.04em; margin-bottom:12px; }
.svc-plan__block-label--accent { color:var(--blue-dk); }
.svc-plan__for-text { font-size:14px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-plan__block { margin-bottom:24px; }
.svc-plan__block-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:12px; }
.svc-plan__block-list li { font-size:14.5px; color:var(--ink-2); line-height:1.7; padding-left:24px; position:relative; font-weight:500; }
.svc-plan__block-list li::before { content:''; position:absolute; left:0; top:7px; width:14px; height:14px; background:var(--blue-tint); border:1.5px solid var(--blue); border-radius:50%; }
.svc-plan__block-list li::after { content:''; position:absolute; left:4px; top:13px; width:6px; height:3px; border-left:1.5px solid var(--blue); border-bottom:1.5px solid var(--blue); transform:rotate(-45deg); }
.svc-plan__cta { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:18px 28px; margin-top:auto; background:var(--blue); color:#fff; font-weight:800; font-size:14px; letter-spacing:0.04em; border-radius:6px; transition:all .35s var(--ease); box-shadow:0 4px 12px rgba(37,99,235,.28); }
.svc-plan__cta:hover { background:var(--blue-dk); transform:translateY(-1px); box-shadow:0 12px 28px rgba(37,99,235,.42); }
.svc-plan__cta-arrow { transition:transform .35s var(--ease); }
.svc-plan__cta:hover .svc-plan__cta-arrow { transform:translateX(6px); }
.svc-plans-note { text-align:center; font-size:14px; color:var(--ink-2); margin-top:40px; line-height:1.9; font-weight:500; }
.svc-flow { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:64px; position:relative; }
.svc-flow__step { background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; padding:32px 24px; transition:all .35s var(--ease); position:relative; overflow:visible; }
.svc-flow__step::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue-pale) 0%,var(--blue-mist) 100%); border-radius:8px 8px 0 0; transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); }
.svc-flow__step:not(:last-child)::after { content:'→'; position:absolute; right:-26px; top:46px; width:32px; height:32px; display:flex; align-items:center; justify-content:center; font-size:18px; font-weight:700; color:var(--blue-pale); background:var(--ink); border:1px solid rgba(147,197,253,.4); border-radius:50%; z-index:5; }
.svc-flow__step:hover { background:rgba(96,165,250,.12); border-color:rgba(147,197,253,.5); transform:translateY(-3px); }
.svc-flow__step:hover::before { transform:scaleX(1); }
.svc-flow__num { display:flex; flex-direction:column; gap:10px; margin-bottom:24px; line-height:1; }
.svc-flow__num-label { font-size:12px; font-weight:800; color:var(--blue-pale); letter-spacing:0.06em; }
.svc-flow__num-digit { font-size:48px; font-weight:900; color:#fff; line-height:1; letter-spacing:-0.02em; }
.svc-flow__title { font-size:18px; font-weight:800; color:#fff; margin:0 0 14px; line-height:1.5; }
.svc-flow__desc { font-size:14.5px; color:#fff; line-height:1.9; margin:0; font-weight:500; }
.svc-faq { max-width:920px; margin:64px auto 0; display:flex; flex-direction:column; gap:14px; }
.svc-faq__item { background:#fff; border:1px solid var(--border); border-radius:8px; overflow:hidden; transition:all .35s var(--ease); box-shadow:var(--sh-card); }
.svc-faq__item:hover { border-color:var(--blue-pale); }
.svc-faq__item[open] { border-color:var(--blue); box-shadow:var(--sh-hover); }
.svc-faq__q { padding:24px 28px; display:flex; align-items:center; gap:18px; cursor:pointer; font-size:17px; font-weight:800; color:var(--ink); list-style:none; line-height:1.55; }
.svc-faq__q::-webkit-details-marker { display:none; }
.svc-faq__icon { flex-shrink:0; width:36px; height:36px; background:var(--blue-tint); color:var(--blue-dk); border:1px solid var(--blue-pale); border-radius:6px; display:inline-flex; align-items:center; justify-content:center; font-size:15px; font-weight:900; }
.svc-faq__item[open] .svc-faq__icon { background:var(--blue); color:#fff; border-color:var(--blue); }
.svc-faq__q-text { flex:1; }
.svc-faq__chevron { transition:transform .3s var(--ease); color:var(--muted); font-size:14px; font-weight:700; }
.svc-faq__item[open] .svc-faq__chevron { transform:rotate(180deg); color:var(--blue); }
.svc-faq__a { display:flex; gap:18px; padding:6px 28px 24px; font-size:15.5px; color:var(--ink-2); line-height:1.95; font-weight:500; }
.svc-faq__a-icon { flex-shrink:0; width:36px; height:36px; background:var(--ink); color:#fff; border-radius:6px; display:inline-flex; align-items:center; justify-content:center; font-size:15px; font-weight:900; }
.svc-faq__a-text { flex:1; padding-top:4px; }
.svc-final { position:relative; background:var(--ink); color:#fff; padding:120px 0 104px; overflow:hidden; }
.svc-final::before { content:''; position:absolute; top:-320px; left:50%; transform:translateX(-50%); width:1100px; height:1100px; background:radial-gradient(circle,rgba(96,165,250,.22) 0%,transparent 60%); border-radius:50%; pointer-events:none; }
.svc-final__inner { position:relative; z-index:1; max-width:920px; margin:0 auto; text-align:center; padding:0 32px; }
.svc-final__title { font-size:clamp(32px,4.6vw,46px); font-weight:900; line-height:1.36; color:#fff; margin:24px 0 28px; text-wrap:balance; }
.svc-final__title em { font-style:normal; color:var(--blue-pale); font-weight:900; background:linear-gradient(transparent 64%,rgba(147,197,253,.24) 64%,rgba(147,197,253,.24) 92%,transparent 92%); padding:0 0.04em; }
.svc-final__lead { font-size:16px; color:#fff; line-height:2.0; margin:0 auto 44px; max-width:760px; font-weight:500; }
.svc-final__points { display:flex; justify-content:center; flex-wrap:wrap; margin:44px 0 48px; padding:0; border-top:1px solid rgba(147,197,253,.32); border-bottom:1px solid rgba(147,197,253,.32); }
.svc-final__point { display:flex; flex-direction:column; align-items:center; gap:10px; padding:32px 48px; border-right:1px solid rgba(147,197,253,.24); }
.svc-final__point:last-child { border-right:none; }
.svc-final__point-num { font-size:42px; font-weight:900; color:var(--blue-pale); line-height:1; letter-spacing:-0.02em; }
.svc-final__point-num small { font-size:.4em; color:var(--blue-mist); font-weight:700; margin-left:6px; }
.svc-final__point-label { font-size:13px; color:#fff; font-weight:700; letter-spacing:0.04em; }
.svc-final__ctas { display:flex; flex-wrap:wrap; gap:18px; justify-content:center; align-items:center; margin-bottom:30px; }
.svc-final__ctas .svc-btn--primary { background:var(--blue); color:#fff; }
.svc-final__ctas .svc-btn--primary:hover { background:var(--blue-dk); }
.svc-final__ctas .svc-btn--line { color:#fff; border-bottom-color:#fff; }
.svc-final__ctas .svc-btn--line:hover { color:var(--blue-pale); border-bottom-color:var(--blue-pale); }
.svc-final__note { font-size:14px; color:#fff; line-height:1.9; font-weight:500; margin:0; }
.svc-section--ink,.svc-section--ink *,
.svc-final,.svc-final *,
.svc-pitfalls *,.svc-vision__timeline *,.svc-flow *,
.svc-ba__total,.svc-ba__total * {
  color:#fff !important;
}
.svc-btn--primary, .svc-btn--primary *,
.svc-plan__cta, .svc-plan__cta *,
.svc-cov__note-cta, .svc-cov__note-cta *,
.svc-final__ctas .svc-btn--primary, .svc-final__ctas .svc-btn--primary *,
.svc-btn--primary .svc-btn__arrow,
.svc-plan__cta .svc-plan__cta-arrow,
.svc-cov__note-cta .svc-btn__arrow {
  color:#fff !important;
}
@keyframes svcRise { from { transform:translateY(24px); opacity:0; } to { transform:translateY(0); opacity:1; } }
@keyframes svcSlideRight { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcSlideLeft { from { transform:translateX(32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcZoomIn { from { transform:scale(.92); opacity:0; } to { transform:scale(1); opacity:1; } }
@keyframes svcExpandX { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes svcExpandY { from { transform:scaleY(0); } to { transform:scaleY(1); } }
@keyframes svcGlowPulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.78; transform:scale(1.06); } }
@keyframes svcDotPulse { 0%,100% { box-shadow:0 0 0 5px var(--bg),0 2px 6px rgba(37,99,235,.2); } 50% { box-shadow:0 0 0 5px var(--bg),0 0 0 10px rgba(37,99,235,.18),0 4px 14px rgba(37,99,235,.32); } }
@keyframes svcArrowSlide { 0%,100% { transform:translateX(0); } 50% { transform:translateX(5px); } }
@keyframes svcCounterIn { 0% { transform:translateY(40px); opacity:0; } 100% { transform:translateY(0); opacity:1; } }
@keyframes svcGlowFadeIn { from { opacity:0; transform:scale(.7); } to { opacity:1; transform:scale(1); } }
@keyframes svcGridFade { from { opacity:0; } to { opacity:1; } }
@keyframes svcHeroTitleIn { from { transform:translateY(40px); opacity:0; filter:blur(6px); } to { transform:translateY(0); opacity:1; filter:blur(0); } }
@keyframes svcHeroQuoteIn { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
.svc-hero::before { animation:svcGridFade 1.4s var(--ease-out) .1s both; }
.svc-hero::after { animation:svcGlowFadeIn 1.8s var(--ease-out) .3s both,svcGlowPulse 12s ease-in-out 1.8s infinite; }
.svc-hero__chapter, .svc-hero__meta { animation:svcHeroQuoteIn 1s var(--ease-out) .15s both; }
.svc-hero__quote { animation:svcHeroQuoteIn 1.1s var(--ease-out) .3s both; }
.svc-hero__title { animation:svcHeroTitleIn 1.2s var(--ease-out) .5s both; }
.svc-hero__lead { animation:svcRise 1s var(--ease-out) .75s both; }
.svc-hero__ctas { animation:svcRise 1s var(--ease-out) .95s both; }
.svc-hero__pillars { animation:svcRise 1s var(--ease-out) 1.15s both; }
.svc-hero__pillar:nth-child(1) { animation:svcSlideLeft .9s var(--ease-out) 1.3s both; }
.svc-hero__pillar:nth-child(2) { animation:svcSlideLeft .9s var(--ease-out) 1.45s both; }
.svc-hero__pillar:nth-child(3) { animation:svcSlideLeft .9s var(--ease-out) 1.6s both; }
.svc-story__moment::before { animation:svcDotPulse 5s ease-in-out infinite; }
.svc-flow__step:not(:last-child)::after { animation:svcArrowSlide 4s ease-in-out infinite; }
@supports (animation-timeline:view()) {
  .svc-section__head {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-why-card {
    animation:svcZoomIn .8s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-cov__card {
    animation:svcSlideRight .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-ba__row {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-pitfall {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-voice-card {
    animation:svcZoomIn 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-vision__stage {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-plan {
    animation:svcZoomIn 1.1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-flow__step {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-faq__item {
    animation:svcSlideRight .7s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-story__moment {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-story::before {
    animation:svcExpandY 1.4s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 5% cover 50%;
    transform-origin:top;
  }
  .svc-why-card__num-digit {
    animation:svcCounterIn .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 32%;
  }
  .svc-flow__num-digit {
    animation:svcCounterIn 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-flow__step::before {
    animation:svcExpandX .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
    transform-origin:left;
  }
  .svc-title em, .svc-hero__title em, .svc-final__title em {
    animation:svcExpandX .8s var(--ease-out) .15s both;
    animation-timeline:view();
    animation-range:entry 30% cover 70%;
    transform-origin:left;
  }
  .svc-kicker__bar, .svc-kicker::before, .svc-hero__chapter-bar, .svc-hero__meta-line {
    animation:svcExpandX 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
    transform-origin:left;
  }
}
html:has(.svc-lp) { scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce) { .svc-lp *, .svc-lp *::before, .svc-lp *::after { animation:none !important; transition:none !important; } }
 }
@media (max-width:980px) {
  .svc-lp .wrap,.svc-lp .wrap-narrow { padding:0 22px; }
  .svc-section,.svc-final,.svc-section--ink,.svc-section--story { padding:80px 0; }
  .svc-section__head { margin-bottom:52px; }
  .svc-hero { padding:80px 0 64px; }
  .svc-plans,.svc-flow,.svc-voices,.svc-why-grid,.svc-pitfalls { grid-template-columns:1fr 1fr !important; }
  .svc-cov,.svc-vision__timeline { grid-template-columns:1fr 1fr !important; }
  .svc-ba__row { grid-template-columns:1fr; gap:14px; padding:24px; }
  .svc-ba__arrow { transform:rotate(90deg); padding:8px 0; justify-self:center; }
  .svc-cov__note { flex-direction:column; align-items:flex-start; }
  .svc-story__moment { grid-template-columns:auto 1fr; gap:24px; margin-bottom:40px; }
  .svc-story__moment::before { display:none; }
  .svc-story::before { left:60px; transform:none; }
  .svc-story__moment:nth-child(odd) .svc-story__time,.svc-story__moment:nth-child(even) .svc-story__time { grid-column:1; text-align:left; padding:0; width:96px; font-size:32px; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,.svc-story__moment:nth-child(even) .svc-story__scene { grid-column:2; padding:22px 24px; text-align:left; }
  .svc-hero__pillars { grid-template-columns:1fr; }
  .svc-hero__title { font-size:34px; }
  .svc-flow__step:not(:last-child)::after { display:none; }
  .svc-final__point { padding:22px 32px; }
}
@media (max-width:680px) {
  .svc-plans,.svc-flow,.svc-voices,.svc-cov,.svc-why-grid,.svc-pitfalls,.svc-vision__timeline { grid-template-columns:1fr !important; }
  .svc-hero__ctas { flex-direction:column; align-items:stretch; }
  .svc-btn { width:100%; }
  .svc-final__points { flex-direction:column; padding:0; }
  .svc-final__point { border-right:none; border-bottom:1px solid rgba(147,197,253,.24); padding:24px 0; }
  .svc-final__point:last-child { border-bottom:none; }
}
.svc-btn--primary, .svc-btn--primary *,
.svc-plan__cta, .svc-plan__cta *,
.svc-cov__note-cta, .svc-cov__note-cta *,
.svc-final__ctas .svc-btn--primary, .svc-final__ctas .svc-btn--primary * {
  color:#fff !important;
}
.svc-cov__note-cta { background:#fff !important; color:#1F2937 !important; }
.svc-cov__note-cta * { color:#1F2937 !important; }
.svc-cov__note-cta:hover { background:#1F2937 !important; color:#fff !important; }
.svc-cov__note-cta:hover * { color:#fff !important; }
.svc-cov__note {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  border:none !important;
  border-left:none !important;
  border-radius:10px !important;
  padding:36px 40px !important;
  box-shadow:0 16px 36px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08) !important;
  position:relative; overflow:hidden;
}
.svc-cov__note *:not(.svc-cov__note-cta):not(.svc-cov__note-cta *) { color:#fff !important; }
.svc-cov__note-title { color:#fff !important; font-weight:900; font-size:20px; }
.svc-cov__note-body { color:rgba(255,255,255,.92) !important; font-weight:500; }
.svc-cov__note-cta {
  font-weight:900 !important;
  padding:18px 32px !important;
  border-radius:8px !important;
  box-shadow:0 8px 22px rgba(255,255,255,.18),0 2px 6px rgba(0,0,0,.32) !important;
}
.svc-ba__after {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  border:none !important;
  box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.svc-ba__after::before { background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%) !important; }
.svc-ba__after .svc-ba__label { color:rgba(255,255,255,.85) !important; }
.svc-ba__after .svc-ba__text { color:#fff !important; }
.svc-ba__task-num {
  background:linear-gradient(135deg, #2D3748 0%, #111827 100%) !important;
  color:#fff !important;
  box-shadow:0 4px 12px rgba(0,0,0,.32) !important;
}
.svc-ba__task-num * { color:#fff !important; }
.svc-ba__arrow { color:#1F2937 !important; }
.svc-ba__row:hover .svc-ba__arrow { color:#000 !important; transform:translateX(8px); }
.svc-ba__total {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  box-shadow:0 14px 32px rgba(0,0,0,.28) !important;
}
.svc-ba__total-label { color:rgba(255,255,255,.85) !important; }
.svc-ba__total-value, .svc-ba__total-value * { color:#fff !important; }
@supports (animation-timeline:view()) {
  .svc-section__head,
  .svc-why-card,.svc-plan,.svc-cov__card,.svc-ba__row,
  .svc-flow__step,.svc-faq__item,.svc-pitfall,
  .svc-voice-card,.svc-vision__stage,.svc-story__moment,
  .svc-cov__note,.svc-story__punch,.svc-ba__total,
  .svc-hero__pillar {
    animation:svcRise 1s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 0% cover 30% !important;
  }
  .svc-why-card__num-digit,.svc-cov__num,.svc-vision__stage-num,
  .svc-flow__num-digit,.svc-plan__price-num,.svc-ba__total-value,
  .svc-hero__pillar-num,.svc-story__time {
    animation:svcZoomIn 1s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 5% cover 28% !important;
  }
  .svc-title em,.svc-hero__title em,.svc-final__title em {
    background-size:0% 100%;
    animation:svcExpandHL .9s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 30% cover 60% !important;
  }
}
@keyframes svcExpandHL { from { background-size:0% 100%; } to { background-size:100% 100%; } }
@media (max-width:1024px) {
  .svc-hero { padding:100px 0 80px; }
  .svc-hero__title { font-size:44px !important; line-height:1.32; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:88px 0; }
  .svc-section__head { margin-bottom:56px; }
  .svc-flow { grid-template-columns:repeat(2,1fr); gap:16px; }
  .svc-flow__step:not(:last-child)::after { display:none; }
  .svc-cov, .svc-vision__timeline { grid-template-columns:repeat(2,1fr); gap:16px; }
}
@media (max-width:768px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 20px; }
  .svc-hero { padding:72px 0 60px; }
  .svc-hero__title { font-size:30px !important; line-height:1.35; margin-bottom:24px; }
  .svc-hero__lead, .svc-hero__quote { font-size:15px !important; }
  .svc-hero__chapter, .svc-hero__meta { font-size:11px; gap:10px; margin-bottom:24px; }
  .svc-hero__chapter-bar, .svc-hero__meta-line { width:24px; }
  .svc-hero__ctas { gap:12px; margin-bottom:48px; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:72px 0; }
  .svc-section__head { margin-bottom:48px; }
  .svc-title { font-size:26px !important; line-height:1.4; }
  .svc-lead { font-size:14.5px; }
  .svc-plans, .svc-flow, .svc-voices, .svc-why-grid, .svc-pitfalls,
  .svc-cov, .svc-vision__timeline { grid-template-columns:1fr 1fr !important; gap:14px !important; }
  .svc-ba__row { grid-template-columns:1fr !important; gap:12px; padding:24px 20px; }
  .svc-ba__arrow { transform:rotate(90deg); padding:8px 0; justify-self:center; font-size:28px; }
  .svc-ba__side { padding:20px; min-height:auto; }
  .svc-ba__text { font-size:20px; }
  .svc-ba__task-text { font-size:17px; }
  .svc-ba__total { padding:32px 24px; }
  .svc-ba__total-value { font-size:28px; }
  .svc-cov__note { padding:24px 22px; flex-direction:column; align-items:flex-start; gap:18px; border-radius:8px !important; }
  .svc-cov__note-main { min-width:auto; }
  .svc-cov__note-cta { width:100%; justify-content:center; padding:16px 24px !important; }
  .svc-cov__note-title { font-size:18px !important; }
  .svc-story__moment { grid-template-columns:auto 1fr !important; gap:20px; margin-bottom:36px; }
  .svc-story__moment::before { display:none; }
  .svc-story::before { left:48px !important; transform:none; }
  .svc-story__moment:nth-child(odd) .svc-story__time,
  .svc-story__moment:nth-child(even) .svc-story__time { grid-column:1 !important; text-align:left !important; padding:0 !important; width:80px; font-size:24px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,
  .svc-story__moment:nth-child(even) .svc-story__scene { grid-column:2 !important; padding:18px 20px !important; text-align:left !important; }
  .svc-story__scene-title { font-size:17px; }
  .svc-story__scene-body { font-size:14.5px; }
  .svc-story__time-meta { font-size:11px; }
  .svc-story__punch { padding:32px 22px; font-size:18px; margin-top:64px; }
  .svc-hero__pillars { grid-template-columns:1fr !important; gap:14px; padding-top:36px; }
  .svc-hero__pillar { padding:20px 22px; }
  .svc-hero__pillar-num { font-size:36px; }
  .svc-hero__pillar-text { font-size:14px; }
  .svc-pitfall { padding:24px 22px; }
  .svc-pitfall__title { font-size:16px; }
  .svc-pitfall__col-text { font-size:14px; }
  .svc-vision__stage { padding:28px 24px; }
  .svc-vision__stage-num { font-size:42px !important; margin-bottom:18px; }
  .svc-vision__stage-title { font-size:17px; }
  .svc-vision__stage-body { font-size:14px; }
  .svc-flow__step { padding:24px 22px; }
  .svc-flow__num-digit { font-size:38px !important; }
  .svc-flow__title { font-size:16px; }
  .svc-flow__desc { font-size:13.5px; }
  .svc-plan { padding:30px 24px 24px; }
  .svc-plan__name { font-size:21px; }
  .svc-plan__price-num { font-size:32px !important; }
  .svc-plan__sub { font-size:14px; margin-bottom:22px; }
  .svc-plan__cta { padding:16px 22px; font-size:13.5px; }
  .svc-final__point { padding:22px 28px; }
  .svc-final__point-num { font-size:32px; }
  .svc-final__title { font-size:26px !important; }
  .svc-final__lead { font-size:14.5px; }
  .svc-faq__q { padding:20px 22px; gap:14px; font-size:16px; }
  .svc-faq__a { padding:0 22px 22px; gap:14px; font-size:14.5px; }
  .svc-faq__icon, .svc-faq__a-icon { width:32px; height:32px; font-size:13px; }
  .svc-why-card { padding:28px 24px 24px; }
  .svc-why-card__num-digit { font-size:42px !important; }
  .svc-why-card__title { font-size:17px; }
  .svc-why-card__desc { font-size:14.5px; }
  .svc-cov__card { padding:26px 22px; min-height:auto; }
  .svc-cov__num { font-size:36px !important; }
  .svc-cov__title { font-size:16px; }
  .svc-cov__desc { font-size:14px; }
  .svc-voice-card { padding:28px 24px 22px; }
  .svc-voice-card__body { font-size:15px; }
  .svc-voice-card__mark { font-size:48px; top:12px; right:18px; }
}
@media (max-width:560px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 16px; }
  .svc-hero { padding:56px 0 44px; }
  .svc-hero__title { font-size:24px !important; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:56px 0; }
  .svc-section__head { margin-bottom:36px; }
  .svc-title { font-size:22px !important; }
  .svc-plans, .svc-flow, .svc-voices, .svc-cov, .svc-why-grid,
  .svc-pitfalls, .svc-vision__timeline { grid-template-columns:1fr !important; gap:14px !important; }
  .svc-hero__ctas { flex-direction:column; align-items:stretch; gap:10px; }
  .svc-btn { width:100%; padding:16px 22px; font-size:14px; }
  .svc-btn--line { padding:14px 0; }
  .svc-ba__row { padding:20px 18px; }
  .svc-ba__task-text { font-size:16px; }
  .svc-ba__text { font-size:18px; }
  .svc-ba__total { padding:28px 22px; }
  .svc-ba__total-value { font-size:24px; }
  .svc-final__points { flex-direction:column; padding:0; margin:32px 0; }
  .svc-final__point { border-right:none !important; border-bottom:1px solid rgba(147,197,253,.24); padding:20px 0; }
  .svc-final__point:last-child { border-bottom:none; }
  .svc-story__moment { gap:16px; }
  .svc-story::before { left:44px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__time,
  .svc-story__moment:nth-child(even) .svc-story__time { width:72px; font-size:22px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,
  .svc-story__moment:nth-child(even) .svc-story__scene { padding:16px 18px !important; }
  .svc-story__punch { padding:24px 18px; font-size:16px; }
  .svc-cov__note { padding:22px 18px; }
  .svc-cov__note-title { font-size:17px !important; }
  .svc-cov__note-body { font-size:14px !important; }
  .svc-pitfall { padding:22px 18px; }
  .svc-vision__stage, .svc-flow__step { padding:24px 20px; }
  .svc-plan { padding:26px 20px 20px; }
  .svc-faq__q, .svc-faq__a { padding-left:18px; padding-right:18px; }
}
@media (max-width:380px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 12px; }
  .svc-hero__title { font-size:22px !important; }
  .svc-title { font-size:20px !important; }
  .svc-ba__text { font-size:16px; }
  .svc-vision__stage-num { font-size:36px !important; }
  .svc-final__point-num { font-size:28px; }
}
.svc-lp { overflow-x:hidden; }
@media (max-width:768px) {
  .svc-btn, .svc-plan__cta, .svc-cov__note-cta, .svc-faq__q { min-height:44px; }
}
@keyframes svcRise { from { transform:translateY(28px); opacity:0; } to { transform:translateY(0); opacity:1; } }
@keyframes svcSlideRight { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcSlideLeft { from { transform:translateX(32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcZoomIn { from { transform:scale(.92); opacity:0; } to { transform:scale(1); opacity:1; } }
@keyframes svcExpandX { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes svcExpandY { from { transform:scaleY(0); } to { transform:scaleY(1); } }
@keyframes svcCounterIn { 0% { transform:translateY(40px); opacity:0; } 100% { transform:translateY(0); opacity:1; } }
@keyframes svcGlowPulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.78; transform:scale(1.06); } }
@keyframes svcDotPulse { 0%,100% { box-shadow:0 0 0 5px var(--bg),0 2px 6px rgba(37,99,235,.18); } 50% { box-shadow:0 0 0 5px var(--bg),0 0 0 10px rgba(37,99,235,.22),0 4px 14px rgba(37,99,235,.34); } }
@keyframes svcArrowSlide { 0%,100% { transform:translateX(0); } 50% { transform:translateX(5px); } }
@keyframes svcGlowFadeIn { from { opacity:0; transform:scale(.7); } to { opacity:1; transform:scale(1); } }
@keyframes svcHeroTitleIn { from { transform:translateY(40px); opacity:0; filter:blur(6px); } to { transform:translateY(0); opacity:1; filter:blur(0); } }
@keyframes svcHeroQuoteIn { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
.svc-hero::after { animation:svcGlowFadeIn 1.8s var(--ease-out) .3s both, svcGlowPulse 12s ease-in-out 1.8s infinite; }
.svc-hero__chapter, .svc-hero__meta { animation:svcHeroQuoteIn 1s var(--ease-out) .15s both; }
.svc-hero__quote { animation:svcHeroQuoteIn 1.1s var(--ease-out) .3s both; }
.svc-hero__title { animation:svcHeroTitleIn 1.2s var(--ease-out) .5s both; }
.svc-hero__lead { animation:svcRise 1s var(--ease-out) .75s both; }
.svc-hero__ctas { animation:svcRise 1s var(--ease-out) .95s both; }
.svc-hero__pillars { animation:svcRise 1s var(--ease-out) 1.15s both; }
.svc-hero__pillar:nth-child(1) { animation:svcZoomIn .9s var(--ease-out) 1.3s both; }
.svc-hero__pillar:nth-child(2) { animation:svcZoomIn .9s var(--ease-out) 1.45s both; }
.svc-hero__pillar:nth-child(3) { animation:svcZoomIn .9s var(--ease-out) 1.6s both; }
.svc-story__moment::before { animation:svcDotPulse 5s ease-in-out infinite; }
.svc-flow__step:not(:last-child)::after { animation:svcArrowSlide 4s ease-in-out infinite; }
@supports (animation-timeline:view()) {
  .svc-section__head { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-why-card { animation:svcZoomIn .8s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-cov__card { animation:svcSlideRight .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-ba__row { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-pitfall { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-voice-card { animation:svcZoomIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-vision__stage { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-plan { animation:svcZoomIn 1.1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-flow__step { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-faq__item { animation:svcSlideRight .7s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-story__moment { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-story::before { animation:svcExpandY 1.4s var(--ease-out) both; animation-timeline:view(); animation-range:entry 5% cover 50%; transform-origin:top; }
  .svc-why-card__num-digit, .svc-why-card__num { animation:svcCounterIn .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 32%; }
  .svc-flow__num-digit, .svc-flow__num { animation:svcCounterIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-flow__step::before { animation:svcExpandX .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; transform-origin:left; }
  .svc-title em, .svc-hero__title em, .svc-final__title em { animation:svcExpandX .8s var(--ease-out) .15s both; animation-timeline:view(); animation-range:entry 30% cover 70%; transform-origin:left; }
  .svc-kicker__bar, .svc-kicker::before, .svc-hero__chapter-bar, .svc-hero__meta-line { animation:svcExpandX 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; transform-origin:left; }
  .svc-cov__note { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-final__point { animation:svcZoomIn .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
  .svc-ba__total { animation:svcZoomIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
  .svc-story__punch { animation:svcZoomIn 1.1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
}
html:has(.svc-lp) { scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce) { .svc-lp *,.svc-lp *::before,.svc-lp *::after { animation:none !important; transition:none !important; } }
.bxp-mega-col-title {
  display:inline-block; position:relative;
  padding-bottom:10px; margin-bottom:16px;
  font-weight:800; font-size:16px;
  color:#0F172A;
  border-bottom:2px solid #2563EB;
  text-decoration:none;
  transition:all .3s cubic-bezier(.4,0,.2,1);
}
.bxp-mega-col-title:hover { color:#1D4ED8; }
.bxp-mega-list { list-style:none; padding:0; margin:0; }
.bxp-mega-list-2col { display:grid; grid-template-columns:repeat(2,1fr); gap:8px 24px; }
.bxp-mega-list li { margin:0; padding:0; position:relative; }
.bxp-mega-list a {
  display:inline-block;
  position:relative;
  color:#1E293B;
  font-size:15px;
  font-weight:600;
  padding:8px 0 8px 0;
  text-decoration:none;
  transition:all .3s cubic-bezier(.4,0,.2,1);
  line-height:1.6;
}
.bxp-mega-list a::before {
  content:'';
  position:absolute;
  left:0; top:50%;
  width:0; height:2px;
  background:#2563EB;
  transition:width .35s cubic-bezier(.4,0,.2,1);
  transform:translateY(-50%);
}
.bxp-mega-list a:hover {
  color:#2563EB;
  padding-left:20px;
  font-weight:700;
}
.bxp-mega-list a:hover::before { width:14px; }
.bxp-mega-cta-text { font-size:14px; font-weight:700; color:#475569; margin-bottom:14px; }
.bxp-mega-cta-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:16px 32px;
  background:#2563EB;
  color:#fff;
  border-radius:6px;
  font-weight:700; font-size:14.5px;
  letter-spacing:0.04em;
  text-decoration:none;
  transition:all .35s cubic-bezier(.4,0,.2,1);
  box-shadow:0 6px 18px rgba(37,99,235,.32);
}
.bxp-mega-cta-btn:hover {
  background:#1D4ED8;
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(37,99,235,.46);
}
.bxp-arrow {
  display:inline-block;
  transition:transform .3s cubic-bezier(.4,0,.2,1);
  font-weight:700;
}
.bxp-mega-cta-btn:hover .bxp-arrow { transform:translateX(6px); }
@supports (animation-timeline:view()) {
  .bxp-mega-col-title {
    animation:svcSlideRight .8s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .bxp-mega-list li {
    animation:svcSlideRight .7s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 50%;
  }
  .bxp-mega-list li:nth-child(1) { animation-delay:0s; }
  .bxp-mega-list li:nth-child(2) { animation-delay:.04s; }
  .bxp-mega-list li:nth-child(3) { animation-delay:.08s; }
  .bxp-mega-list li:nth-child(4) { animation-delay:.12s; }
  .bxp-mega-list li:nth-child(5) { animation-delay:.16s; }
  .bxp-mega-list li:nth-child(6) { animation-delay:.20s; }
  .bxp-mega-list li:nth-child(7) { animation-delay:.24s; }
  .bxp-mega-list li:nth-child(8) { animation-delay:.28s; }
  .bxp-mega-list li:nth-child(9) { animation-delay:.32s; }
  .bxp-mega-list li:nth-child(10) { animation-delay:.36s; }
  .bxp-mega-list li:nth-child(11) { animation-delay:.40s; }
  .bxp-mega-list li:nth-child(12) { animation-delay:.44s; }
  .bxp-mega-list li:nth-child(13) { animation-delay:.48s; }
  .bxp-mega-list li:nth-child(14) { animation-delay:.52s; }
  .bxp-mega-list li:nth-child(15) { animation-delay:.56s; }
  .bxp-mega-cta-box {
    animation:svcZoomIn 1s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 50%;
  }
}
@media (prefers-reduced-motion:reduce) {
  .bxp-mega-col-title, .bxp-mega-list li, .bxp-mega-cta-box { animation:none !important; transition:none !important; }
}
/* ===== mega-menu.css ===== */
/* BoostX Mega Menu v3.2 â Wide Layout, 2-col lists */

/* ==================== FOOTER SCROLL FIX ==================== */
html {
  overscroll-behavior-y: none;
}

/* ==================== BOTTOM WHITESPACE KILL (all pages with bxp) ==================== */
html:has(.bxp), body:has(.bxp) {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  overflow-y: auto !important;
}
body:has(.bxp) > *:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* ==================== FOOTER: BoostXã«ã§ãããã¨å®å¨éè¡¨ç¤º ==================== */
footer .bxp-mega-trigger,
footer .menu-item.bxp-mega-trigger,
.site-footer .bxp-mega-trigger,
#colophon .bxp-mega-trigger {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Footer bottom bar: left-right layout with vertical centering */
footer .border-t {
  justify-content: space-between !important;
  align-items: center !important;
  text-align: left !important;
  padding: 24px 0 !important;
}
footer .border-t > .flex.gap-8 {
  align-items: center !important;
}
footer .border-t > p {
  text-align: right !important;
  margin: 0 !important;
}

/* ==================== TRIGGER ==================== */
.bxp-mega-trigger {
  position: relative !important;
}
.bxp-mega-trigger-link {
  cursor: pointer !important;
}

/* ==================== PANEL ==================== */
.bxp-mega-panel {
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(8px) !important;
  width: 1120px !important;
  max-width: calc(100vw - 32px) !important;
  background: #fff !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 40px rgba(0,0,0,0.12), 0 0 0 1px rgba(0,0,0,0.04) !important;
  padding: 36px 40px !important;
  z-index: 99999 !important;
  pointer-events: none !important;
  box-sizing: border-box !important;
  float: none !important;
  display: none !important; /* display:noneã§ã¬ã¤ã¢ã¦ããã­ã¼ããå®å¨é¤å¤ï¼ä½ç½ã®æ ¹æ¬åå ï¼ */
  text-align: left !important;
  color: #1a1a1a !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}
.bxp-mega-trigger.bxp-mega-open .bxp-mega-panel {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateX(-50%) translateY(0) !important;
  pointer-events: auto !important;
}

/* ==================== THEME RESET ==================== */
.bxp-mega-panel,
.bxp-mega-panel * {
  box-sizing: border-box !important;
  float: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
}
.bxp-mega-panel ul,
.bxp-mega-panel ol {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  position: static !important;
  width: auto !important;
  max-width: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  transition: none !important;
  pointer-events: auto !important;
  min-width: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}
.bxp-mega-panel li {
  display: block !important;
  float: none !important;
  position: static !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  text-align: left !important;
  white-space: normal !important;
}
.bxp-mega-panel li a {
  display: block !important;
  float: none !important;
  position: static !important;
  width: auto !important;
  padding: 6px 10px !important;
  border-radius: 4px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #4b5563 !important;
  text-decoration: none !important;
  transition: all 0.12s ease !important;
  line-height: 1.5 !important;
  white-space: nowrap !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  height: auto !important;
  min-height: 0 !important;
}
.bxp-mega-panel li a:hover {
  background: #f3f4f6 !important;
  color: #0f1629 !important;
  text-decoration: none !important;
}

/* ==================== INNER GRID â 4 columns ==================== */
.bxp-mega-inner {
  display: grid !important;
  grid-template-columns: 200px 1fr 1fr !important;
  gap: 36px !important;
  width: 100% !important;
  float: none !important;
  position: static !important;
}

/* ==================== COLUMNS ==================== */
.bxp-mega-col {
  display: block !important;
  float: none !important;
  position: static !important;
  width: auto !important;
  min-width: 0 !important;
  overflow: visible !important;
}

/* æ¥­çã»èª²é¡ãªã¹ãã2åã« */
.bxp-mega-col .bxp-mega-list-2col {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 12px !important;
}

.bxp-mega-col-title {
  display: block !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #9ca3af !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin-bottom: 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid #e5e7eb !important;
  white-space: normal !important;
  line-height: 1.4 !important;
}
a.bxp-mega-col-title:hover {
  color: #0f1629 !important;
  text-decoration: none !important;
}
.bxp-mega-col-title-plain {
  cursor: default !important;
}

/* ==================== SERVICE DESCRIPTION ==================== */
.bxp-mega-svc-desc {
  display: block !important;
  font-size: 11px !important;
  color: #9ca3af !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  margin-top: 1px !important;
  white-space: normal !important;
}

/* ==================== CTA BOX ==================== */
.bxp-mega-cta-box {
  margin-top: 20px !important;
  padding: 16px !important;
  background: #f7f8fa !important;
  border-radius: 6px !important;
  border: 1px solid #e5e7eb !important;
  display: block !important;
}
.bxp-mega-cta-text {
  font-size: 11px !important;
  color: #6b7280 !important;
  margin: 0 0 10px !important;
  line-height: 1.5 !important;
}
.bxp-mega-cta-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #2563EB !important;
  color: #fff !important;
  padding: 11px 22px !important;
  border-radius: 6px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  white-space: nowrap !important;
  box-shadow: 0 2px 8px rgba(37,99,235,0.3) !important;
  animation: bxp-cta-pulse 2s ease-in-out infinite !important;
}
.bxp-mega-cta-btn:hover {
  background: #1d4ed8 !important;
  color: #fff !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(37,99,235,0.4) !important;
  animation: none !important;
}
.bxp-mega-cta-btn .bxp-arrow {
  display: inline-block !important;
  transition: transform 0.2s !important;
}
.bxp-mega-cta-btn:hover .bxp-arrow {
  transform: translateX(4px) !important;
}
@keyframes bxp-cta-pulse {
  0%, 100% { box-shadow: 0 2px 8px rgba(37,99,235,0.3); }
  50% { box-shadow: 0 4px 16px rgba(37,99,235,0.5); }
}

/* ==================== TABLET & MOBILE (1024px-) ==================== */
@media (max-width: 1024px) {
  .bxp-mega-panel {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    transition: max-height 0.3s ease, opacity 0.3s ease, padding 0.3s ease !important;
  }
  .bxp-mega-trigger.bxp-mega-open .bxp-mega-panel {
    transform: none !important;
    max-height: 3000px !important;
    padding: 20px !important;
    overflow: visible !important;
  }
  .bxp-mega-inner {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  .bxp-mega-col .bxp-mega-list-2col {
    grid-template-columns: 1fr 1fr !important;
  }
  .bxp-mega-col {
    border-bottom: 1px solid #e5e7eb !important;
    padding-bottom: 16px !important;
  }
  .bxp-mega-col:last-child {
    border-bottom: none !important;
    padding-bottom: 0 !important;
  }
  .bxp-mega-panel li a {
    padding: 10px 12px !important;
    font-size: 14px !important;
    border-radius: 6px !important;
  }
  .bxp-mega-panel li a:active {
    background: #e5e7eb !important;
  }
  .bxp-mega-col-title {
    font-size: 12px !important;
    margin-bottom: 12px !important;
    padding-bottom: 8px !important;
  }
  .bxp-mega-svc-desc {
    font-size: 12px !important;
  }
  .bxp-mega-cta-box {
    margin-top: 16px !important;
    padding: 14px !important;
  }
  .bxp-mega-cta-btn {
    padding: 12px 20px !important;
    font-size: 14px !important;
    width: 100% !important;
    justify-content: center !important;
  }
}

/* ==================== SMALL MOBILE (480px-) ==================== */
@media (max-width: 480px) {
  .bxp-mega-col .bxp-mega-list-2col {
    grid-template-columns: 1fr !important;
  }
  .bxp-mega-panel li a {
    padding: 10px 8px !important;
    font-size: 13px !important;
  }
}

/* ==================== BLOG ARCHIVE: CATEGORY PILLS (2026-04-19) ====================
   ã«ãã´ãªã¼ãè¨äºã°ãªããä¸é¨ã®æ¨ªä¸¦ã³ãã«ã§è¡¨ç¤ºãæ°ã¥ãæå¤§åï¼ã¯ã³ã¿ããçµãè¾¼ã¿ã
   æ¢å­ã®ãµã¤ããã¼ç¸¦ãªã¹ãã¯JSã§éè¡¨ç¤ºåã
   ãµã¤ããã¼ã¯äººæ°è¨äºTOP5ã®ã¿ã«ãªãããã¬ã¤ã¢ã¦ããèªç¶ã«æãã
   ================================================================================== */
.bx-cat-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 28px;
  padding: 14px 16px;
  background: #f9fafb;
  border: 1px solid #f1f5f9;
  border-radius: 12px;
}
@media (max-width: 1023px) {
  .bx-cat-pills {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding: 10px 12px;
    scrollbar-width: thin;
    scrollbar-color: #cbd5e0 transparent;
    -webkit-overflow-scrolling: touch;
  }
  .bx-cat-pills::-webkit-scrollbar { height: 4px; }
  .bx-cat-pills::-webkit-scrollbar-thumb { background: #cbd5e0; border-radius: 2px; }
}
.bx-cat-pill {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 11px;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 6px;
  color: #374151;
  font-size: 11.5px;
  font-weight: 600;
  text-decoration: none;
  line-height: 1.5;
  transition: background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
  white-space: nowrap;
}
.bx-cat-pill:hover {
  background: #0a192f;
  border-color: #0a192f;
  color: #fff;
}
.bx-cat-pill__count {
  font-size: 10px;
  color: #9ca3af;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-weight: 500;
}
.bx-cat-pill:hover .bx-cat-pill__count { color: #93c5fd; }
.bx-cat-pill--active {
  background: #0a192f;
  border-color: #0a192f;
  color: #fff;
  pointer-events: none;
}
.bx-cat-pill--active .bx-cat-pill__count { color: #93c5fd; }
/* JSã§ãã«åæ¸ã¿ã®æ§ãµã¤ããã¼ç¸¦ãªã¹ããæç¤ºçã«é ã */
.bx-cat-widget-hidden { display: none !important; }

/* === ã¡ã¬ã¡ãã¥ã¼è¡¨ç¤ºæããµã³ãã«ææ¡æ¸ãã¼ã¸ã®åºå®è¦ç´ ãéé¿ï¼2026-05-21ï¼ ===
   /custom-proposal/sample/ ã® .toc__pinï¼å·¦åºå®TOCï¼ã¨ .bx-pagerï¼å³ä¸ãã¼ã¸ã£ã¼ï¼ã
   ãããã¼ä¸ã«è¢«ã£ã¦è¡¨ç¤ºãããåé¡ã®å¯¾ç­ãã¡ã¬ã¡ãã¥ã¼(.bxp-mega-open)ãåºã¦ããéã ã
   visibility:hidden ã§éãããéããã°èªåå¾©å¸°ããã */
body:has(.bxp-mega-trigger.bxp-mega-open) .bx-sample-doc .toc__pin,
body:has(.bxp-mega-trigger.bxp-mega-open) .bx-pager {
  visibility: hidden !important;
  pointer-events: none !important;
}

/* === BX-SVC-RESTORE-START 2026-06-01 (industry/solution megamenu pages - FULL coverage) === */
.svc-lp {
  --ink:#0F172A;
  --ink-2:#1E293B;
  --ink-3:#334155;
  --muted:#64748B;
  --blue:#2563EB;
  --blue-dk:#1D4ED8;
  --blue-dk2:#1E40AF;
  --blue-lt:#3B82F6;
  --blue-pale:#93C5FD;
  --blue-mist:#BFDBFE;
  --blue-tint:#DBEAFE;
  --blue-tint-2:#EFF6FF;
  --bg:#fff;
  --bg-soft:#F8FAFC;
  --bg-hero:#F4F8FF;
  --border:#E2E8F0;
  --border-2:#CBD5E1;
  --gray-50:#F8FAFC;
  --gray-100:#F1F5F9;
  --sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic Medium","Yu Gothic","Meiryo",system-ui,sans-serif;
  --serif:var(--sans);
  --mono:var(--sans);
  --maxw:1180px;
  --ease:cubic-bezier(.4,0,.2,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
  --sh-card:0 1px 3px rgba(15,23,42,.06),0 4px 14px rgba(15,23,42,.06);
  --sh-hover:0 14px 32px rgba(37,99,235,.16),0 4px 12px rgba(15,23,42,.08);
  --sh-strong:0 24px 56px rgba(37,99,235,.2),0 8px 18px rgba(15,23,42,.1);
}
.svc-lp { font-family:var(--sans); color:var(--ink-2); line-height:1.95; font-feature-settings:"palt" 1,"kern" 1; background:var(--bg); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
.svc-lp *,.svc-lp *::before,.svc-lp *::after { box-sizing:border-box; }
.svc-lp img { max-width:100%; height:auto; display:block; }
.svc-lp a { color:inherit; text-decoration:none; }
.svc-lp .wrap { max-width:var(--maxw); margin:0 auto; padding:0 32px; }
.svc-lp .wrap-narrow { max-width:980px; margin:0 auto; padding:0 32px; }
.svc-hero { position:relative; padding:120px 0 96px; background:linear-gradient(180deg,var(--bg-hero) 0%,#fff 100%); color:var(--ink); border-bottom:1px solid var(--border); overflow:hidden; }
.svc-hero::after { content:''; position:absolute; top:-10%; right:-8%; width:680px; height:680px; border-radius:50%; background:radial-gradient(circle,rgba(37,99,235,.16) 0%,transparent 65%); filter:blur(56px); pointer-events:none; z-index:0; }
.svc-hero__inner { position:relative; z-index:2; max-width:1000px; margin:0 auto; }
.svc-hero__chapter,.svc-hero__meta { display:flex; gap:14px; align-items:center; margin-bottom:32px; font-size:13px; font-weight:700; letter-spacing:0.08em; color:var(--blue-dk); flex-wrap:wrap; }
.svc-hero__chapter-bar,.svc-hero__meta-line { width:32px; height:2px; background:var(--blue); flex-shrink:0; }
.svc-hero__chapter-num { color:var(--blue); font-weight:700; }
.svc-hero__quote { display:block; font-size:17px; line-height:1.85; color:var(--ink-3); font-weight:500; margin:0 0 28px; padding:4px 0 4px 16px; border-left:2px solid var(--border-2); max-width:760px; }
.svc-hero__title { font-size:clamp(36px,5.4vw,60px); font-weight:900; line-height:1.32; letter-spacing:0.005em; color:var(--ink); margin:0 0 32px; text-wrap:balance; }
.svc-hero__title em { font-style:normal; color:var(--blue); font-weight:900; background:linear-gradient(transparent 64%,rgba(37,99,235,.18) 64%,rgba(37,99,235,.18) 92%,transparent 92%); padding:0 0.04em; }
.svc-hero__lead { font-size:17px; color:var(--ink-2); line-height:2.0; max-width:740px; margin:0 0 40px; font-weight:500; }
.svc-hero__lead strong { color:var(--blue-dk); font-weight:700; }
.svc-hero__ctas { display:flex; gap:16px; flex-wrap:wrap; align-items:center; margin-bottom:64px; }
.svc-btn { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:20px 36px; border-radius:6px; font-weight:700; font-size:15px; letter-spacing:0.04em; transition:all .35s var(--ease); cursor:pointer; border:none; line-height:1; text-decoration:none; }
.svc-btn--primary { background:var(--blue); color:#fff; box-shadow:0 6px 18px rgba(37,99,235,.32),0 1px 3px rgba(37,99,235,.18); }
.svc-btn--primary:hover { background:var(--blue-dk); transform:translateY(-2px); box-shadow:0 14px 32px rgba(37,99,235,.42); }
.svc-btn--line { background:transparent; color:var(--ink); padding:18px 0; border-bottom:2px solid var(--ink); border-radius:0; }
.svc-btn--line:hover { color:var(--blue); border-color:var(--blue); gap:18px; }
.svc-btn__arrow { transition:transform .35s var(--ease); font-weight:700; }
.svc-btn:hover .svc-btn__arrow { transform:translateX(6px); }
.svc-hero__pillars { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; padding-top:48px; border-top:1px solid var(--border); max-width:960px; }
.svc-hero__pillar { display:flex; align-items:flex-start; gap:18px; padding:24px 28px; background:#fff; border:1px solid var(--border); border-radius:8px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-hero__pillar:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-hero__pillar-num { flex-shrink:0; font-size:42px; font-weight:900; color:var(--blue); letter-spacing:-0.02em; line-height:1; }
.svc-hero__pillar-text { font-size:15px; color:var(--ink-2); font-weight:600; line-height:1.7; padding-top:6px; }
.svc-section { padding:120px 0; position:relative; background:var(--bg); }
.svc-section--soft { background:var(--bg-soft); }
.svc-section--pearl { background:#FAFBFE; }
.svc-section--mist { background:var(--bg-hero); }
.svc-section--ink { background:var(--ink); color:#fff; padding:120px 0; }
.svc-section--story { background:var(--bg-soft); padding:120px 0; }
.svc-section__head { max-width:880px; margin:0 auto 72px; text-align:center; }
.svc-section__head--left { text-align:left; margin-left:0; }
.svc-kicker-row { display:inline-flex; align-items:center; gap:14px; margin-bottom:20px; }
.svc-kicker__idx { font-size:13px; font-weight:800; color:var(--blue); letter-spacing:0.06em; }
.svc-kicker__bar { width:32px; height:2px; background:var(--blue); }
.svc-kicker { font-size:14px; font-weight:800; color:var(--blue); letter-spacing:0.06em; display:inline-flex; align-items:center; gap:14px; }
.svc-kicker::before { content:''; display:inline-block; width:32px; height:2px; background:var(--blue); }
.svc-section--ink .svc-kicker__idx,.svc-section--ink .svc-kicker { color:var(--blue-pale); }
.svc-section--ink .svc-kicker::before,.svc-section--ink .svc-kicker__bar { background:var(--blue-pale); }
.svc-title { font-size:clamp(30px,4.2vw,44px); font-weight:900; line-height:1.36; color:var(--ink); margin:0 0 24px; text-wrap:balance; }
.svc-title em { font-style:normal; color:var(--blue); font-weight:900; background:linear-gradient(transparent 64%,rgba(37,99,235,.18) 64%,rgba(37,99,235,.18) 92%,transparent 92%); padding:0 0.04em; }
.svc-section--ink .svc-title { color:#fff; }
.svc-section--ink .svc-title em { color:var(--blue-pale); background:linear-gradient(transparent 64%,rgba(147,197,253,.22) 64%,rgba(147,197,253,.22) 92%,transparent 92%); }
.svc-lead { font-size:16px; color:var(--ink-2); line-height:2.0; max-width:760px; margin:0 auto; font-weight:500; }
.svc-section--ink .svc-lead { color:#fff; }
.svc-story { position:relative; }
.svc-story::before { content:''; position:absolute; top:200px; left:50%; width:2px; height:calc(100% - 400px); background:linear-gradient(180deg,transparent 0%,var(--blue-pale) 8%,var(--blue-pale) 92%,transparent 100%); transform:translateX(-50%); pointer-events:none; }
.svc-story__timeline { position:relative; max-width:920px; margin:0 auto; padding:32px 0; }
.svc-story__moment { position:relative; display:grid; grid-template-columns:1fr 80px 1fr; align-items:start; margin-bottom:48px; }
.svc-story__moment::before { content:''; position:absolute; top:28px; left:50%; width:14px; height:14px; background:var(--blue); border:3px solid #fff; border-radius:50%; transform:translateX(-50%); z-index:2; box-shadow:0 0 0 4px var(--bg-soft),0 2px 8px rgba(37,99,235,.32); }
.svc-story__moment:nth-child(odd) .svc-story__time { grid-column:1; text-align:right; padding-right:48px; }
.svc-story__moment:nth-child(odd) .svc-story__scene { grid-column:3; padding-left:48px; }
.svc-story__moment:nth-child(even) .svc-story__time { grid-column:3; text-align:left; padding-left:48px; }
.svc-story__moment:nth-child(even) .svc-story__scene { grid-column:1; padding-right:48px; text-align:right; }
.svc-story__time { font-size:38px; font-weight:900; color:var(--blue); letter-spacing:-0.02em; line-height:1; padding-top:6px; }
.svc-story__time-meta { display:block; font-size:13px; font-weight:700; color:var(--blue-dk); letter-spacing:0.04em; margin-top:12px; }
.svc-story__scene { background:#fff; border:1px solid var(--border); border-radius:8px; padding:24px 28px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-story__moment:hover .svc-story__scene { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-story__scene-title { font-size:19px; font-weight:800; color:var(--ink); margin:0 0 12px; line-height:1.5; }
.svc-story__scene-body { font-size:16px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-story__punch { max-width:880px; margin:96px auto 0; font-size:clamp(22px,2.8vw,30px); font-weight:800; color:var(--ink); line-height:1.7; text-align:center; padding:48px 32px; background:#fff; border:1px solid var(--border); border-radius:8px; border-top:4px solid var(--blue); box-shadow:var(--sh-card); text-wrap:balance; }
.svc-why-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-why-card { padding:36px 30px 32px; background:#fff; border:1px solid var(--border); border-radius:8px; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-why-card::before { content:''; position:absolute; left:0; top:0; height:4px; width:100%; background:linear-gradient(90deg,var(--blue) 0%,var(--blue-lt) 100%); transform:scaleX(.24); transform-origin:left; transition:transform .4s var(--ease); }
.svc-why-card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-5px); }
.svc-why-card:hover::before { transform:scaleX(1); }
.svc-why-card__num { display:flex; flex-direction:column; gap:8px; line-height:1; margin-bottom:18px; }
.svc-why-card__num-label { font-size:12px; font-weight:800; color:var(--blue); letter-spacing:0.08em; }
.svc-why-card__num-digit { font-size:56px; font-weight:900; color:var(--ink); line-height:1; letter-spacing:-0.02em; transition:color .3s var(--ease); }
.svc-why-card:hover .svc-why-card__num-digit { color:var(--blue); }
.svc-why-card__title { font-size:19px; font-weight:800; color:var(--ink); line-height:1.5; margin:0 0 14px; }
.svc-why-card__desc { font-size:15.5px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-cov__card { background:#fff; border:1px solid var(--border); border-radius:8px; padding:32px 28px; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-cov__card::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleY(0); transform-origin:top; transition:transform .4s var(--ease); }
.svc-cov__card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-cov__card:hover::before { transform:scaleY(1); }
.svc-cov__num { display:inline-block; font-size:42px; font-weight:900; color:var(--blue); line-height:1; margin-bottom:16px; letter-spacing:-0.02em; }
.svc-cov__title { font-size:18px; font-weight:800; color:var(--ink); margin:0 0 14px; line-height:1.5; }
.svc-cov__desc { font-size:15px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov__note { margin-top:48px; background:linear-gradient(135deg,#fff 0%,var(--bg-hero) 100%); border:1px solid var(--border); border-left:4px solid var(--blue); border-radius:8px; padding:32px 36px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; box-shadow:var(--sh-card); }
.svc-cov__note-main { flex:1; min-width:340px; }
.svc-cov__note-title { font-size:18px; font-weight:800; color:var(--blue-dk); margin:0 0 10px; }
.svc-cov__note-body { font-size:15px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-cov__note-cta { flex-shrink:0; display:inline-flex; align-items:center; gap:12px; background:var(--blue); color:#fff; padding:16px 28px; border-radius:6px; font-size:14px; font-weight:700; letter-spacing:0.04em; text-decoration:none; transition:all .35s var(--ease); box-shadow:0 4px 12px rgba(37,99,235,.28); }
.svc-cov__note-cta:hover { background:var(--blue-dk); transform:translateY(-2px); box-shadow:0 10px 24px rgba(37,99,235,.4); }
.svc-ba { display:flex; flex-direction:column; gap:20px; margin-top:64px; }
.svc-ba__row { display:grid; grid-template-columns:1fr 64px 1fr; align-items:stretch; padding:36px 32px; background:#fff; border:1px solid var(--border); border-radius:10px; box-shadow:var(--sh-card); transition:all .35s var(--ease); }
.svc-ba__row:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-3px); }
.svc-ba__task-head { grid-column:1 / -1; display:flex; align-items:center; gap:18px; margin-bottom:24px; padding-bottom:20px; border-bottom:1px dashed var(--border-2); }
.svc-ba__task-num { display:inline-flex; align-items:center; gap:8px; background:var(--blue); color:#fff; padding:8px 16px; border-radius:6px; font-size:13px; font-weight:800; line-height:1; box-shadow:0 4px 12px rgba(37,99,235,.32); }
.svc-ba__task-num-label,.svc-ba__task-num-digit { color:#fff; font-weight:800; }
.svc-ba__task-num-label { font-size:11px; }
.svc-ba__task-num-digit { font-size:14px; }
.svc-ba__task-text { font-size:20px; font-weight:900; color:var(--ink); line-height:1.4; }
.svc-ba__side { padding:24px 28px; border-radius:8px; display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:120px; text-align:center; }
.svc-ba__before { background:linear-gradient(135deg,#F8FAFC 0%,#EEF2F7 100%); border:1px solid var(--border-2); position:relative; overflow:hidden; }
.svc-ba__before::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:#CBD5E1; }
.svc-ba__after { background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dk) 60%,var(--blue-dk2) 100%); border:none; position:relative; overflow:hidden; box-shadow:0 8px 22px rgba(37,99,235,.22); }
.svc-ba__after::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%); pointer-events:none; }
.svc-ba__label { font-size:12px; font-weight:800; letter-spacing:0.12em; margin-bottom:12px; }
.svc-ba__before .svc-ba__label { color:var(--muted); }
.svc-ba__after .svc-ba__label { color:rgba(255,255,255,.92); }
.svc-ba__text { font-size:24px; font-weight:900; line-height:1.25; margin:0; letter-spacing:-0.005em; }
.svc-ba__before .svc-ba__text { color:var(--ink-3); text-decoration:line-through; text-decoration-color:rgba(100,116,139,.45); text-decoration-thickness:2px; }
.svc-ba__after .svc-ba__text { color:#fff; }
.svc-ba__arrow { display:flex; align-items:center; justify-content:center; color:var(--blue); font-size:36px; font-weight:900; transition:all .35s var(--ease); }
.svc-ba__row:hover .svc-ba__arrow { transform:translateX(8px); color:var(--blue-dk); }
.svc-ba__total { margin-top:32px; background:linear-gradient(135deg,var(--ink) 0%,var(--blue-dk2) 100%); border-radius:10px; padding:40px 44px; text-align:center; box-shadow:0 14px 32px rgba(15,23,42,.22); }
.svc-ba__total-label { font-size:13px; font-weight:800; color:var(--blue-pale); letter-spacing:0.1em; margin-bottom:14px; }
.svc-ba__total-value { font-size:clamp(34px,4.6vw,48px); font-weight:900; color:#fff; line-height:1.2; letter-spacing:-0.02em; }
.svc-ba__total-value small { font-size:.5em; color:var(--blue-pale); font-weight:700; margin-left:8px; }
.svc-pitfalls { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-pitfall { background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; padding:32px 28px; transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-pitfall::before { content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(180deg,var(--blue-pale) 0%,var(--blue-mist) 100%); transform:scaleY(.32); transform-origin:top; transition:transform .4s var(--ease); }
.svc-pitfall:hover { background:rgba(255,255,255,.08); border-color:rgba(147,197,253,.5); transform:translateY(-3px); }
.svc-pitfall:hover::before { transform:scaleY(1); }
.svc-pitfall__head { display:flex; flex-direction:column; gap:14px; margin-bottom:22px; padding-bottom:18px; border-bottom:1px solid rgba(147,197,253,.2); }
.svc-pitfall__num { display:inline-flex; align-items:baseline; gap:8px; font-size:13px; font-weight:800; color:var(--blue-pale); letter-spacing:0.04em; line-height:1; }
.svc-pitfall__num span { color:#fff; font-size:18px; font-weight:900; }
.svc-pitfall__title { font-size:18px; font-weight:800; color:#fff; margin:0; line-height:1.55; }
.svc-pitfall__body { display:flex; flex-direction:column; gap:18px; }
.svc-pitfall__col-head { display:flex; align-items:baseline; gap:10px; margin-bottom:6px; }
.svc-pitfall__col-mark { font-size:14px; font-weight:800; }
.svc-pitfall__col--cause .svc-pitfall__col-mark { color:#FCA5A5; }
.svc-pitfall__col--fix .svc-pitfall__col-mark { color:var(--blue-pale); }
.svc-pitfall__col-label { font-size:13px; font-weight:800; letter-spacing:0.04em; }
.svc-pitfall__col--cause .svc-pitfall__col-label { color:#FCA5A5; }
.svc-pitfall__col--fix .svc-pitfall__col-label { color:var(--blue-pale); }
.svc-pitfall__col-text { font-size:14.5px; color:#fff; line-height:1.85; margin:0; font-weight:500; }
.svc-voices { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-voice-card { background:#fff; border:1px solid var(--border); border-radius:8px; padding:36px 30px 30px; box-shadow:var(--sh-card); transition:all .35s var(--ease); display:flex; flex-direction:column; position:relative; overflow:hidden; }
.svc-voice-card::before { content:''; position:absolute; left:0; top:0; width:4px; height:100%; background:linear-gradient(180deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleY(.32); transform-origin:top; transition:transform .4s var(--ease); }
.svc-voice-card:hover { border-color:var(--blue-pale); box-shadow:var(--sh-hover); transform:translateY(-4px); }
.svc-voice-card:hover::before { transform:scaleY(1); }
.svc-voice-card__mark { position:absolute; top:20px; right:28px; font-size:64px; line-height:1; color:var(--blue); opacity:.14; font-weight:900; pointer-events:none; }
.svc-voice-card__body { font-size:16px; color:var(--ink); line-height:1.9; margin:24px 0 28px; flex:1; font-weight:500; }
.svc-voice-card__meta { display:flex; flex-direction:column; gap:10px; padding-top:22px; border-top:1px solid var(--gray-100); }
.svc-voice-card__persona { font-size:13.5px; color:var(--muted); font-weight:700; letter-spacing:0.02em; }
.svc-voice-card__metric { display:inline-flex; align-items:center; gap:8px; width:fit-content; font-size:14px; color:var(--blue-dk); font-weight:800; padding:6px 12px; background:var(--blue-tint); border:1px solid var(--blue-pale); border-radius:4px; letter-spacing:0.02em; }
.svc-voice-card__metric::before { content:'↑'; color:var(--blue); }
.svc-vision__timeline { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; }
.svc-vision__stage { padding:40px 32px; background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-vision__stage::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue-pale) 0%,var(--blue-mist) 100%); transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); }
.svc-vision__stage:hover { background:rgba(255,255,255,.07); border-color:rgba(147,197,253,.5); transform:translateY(-4px); }
.svc-vision__stage:hover::before { transform:scaleX(1); }
.svc-vision__stage-dot { display:none; }
.svc-vision__stage-label { font-size:12.5px; font-weight:800; color:var(--blue-pale); letter-spacing:0.06em; margin-bottom:18px; }
.svc-vision__stage-num { font-size:56px; font-weight:900; color:#fff; line-height:1; letter-spacing:-0.02em; margin:0 0 22px; }
.svc-vision__stage-num small { font-size:.36em; color:var(--blue-pale); font-weight:700; margin-left:6px; }
.svc-vision__stage-title { font-size:19px; font-weight:800; color:#fff; margin:0 0 14px; line-height:1.5; }
.svc-vision__stage-body { font-size:15px; color:#fff; line-height:1.9; margin:0; font-weight:500; }
.svc-plans { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:64px; align-items:stretch; }
.svc-plan { background:#fff; border:1px solid var(--border); border-radius:10px; padding:40px 30px 30px; display:flex; flex-direction:column; box-shadow:var(--sh-card); transition:all .35s var(--ease); position:relative; overflow:hidden; }
.svc-plan::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue) 0%,var(--blue-pale) 100%); transform:scaleX(.3); transform-origin:left; transition:transform .4s var(--ease); }
.svc-plan:hover { border-color:var(--blue-pale); box-shadow:var(--sh-strong); transform:translateY(-6px); }
.svc-plan:hover::before { transform:scaleX(1); }
.svc-plan__idx { font-size:13px; font-weight:800; color:var(--muted); letter-spacing:0.06em; margin-bottom:10px; }
.svc-plan__tag { font-size:13px; font-weight:800; color:var(--blue); letter-spacing:0.04em; margin-bottom:14px; display:inline-flex; align-items:center; gap:10px; }
.svc-plan__tag::before { content:''; width:24px; height:2px; background:var(--blue); }
.svc-plan__name { font-size:24px; font-weight:900; color:var(--ink); margin:0 0 14px; line-height:1.4; }
.svc-plan__sub { font-size:15px; color:var(--ink-2); margin:0 0 28px; line-height:1.8; font-weight:500; }
.svc-plan__price { display:flex; align-items:baseline; flex-wrap:wrap; gap:6px; padding-bottom:26px; margin-bottom:26px; border-bottom:1px solid var(--gray-100); }
.svc-plan__price-num { font-size:42px; font-weight:900; color:var(--ink); line-height:1; letter-spacing:-0.02em; transition:color .35s var(--ease); }
.svc-plan__price-num small { font-size:.4em; color:var(--ink); font-weight:700; margin-left:4px; }
.svc-plan:hover .svc-plan__price-num { color:var(--blue); }
.svc-plan__price-unit { font-size:13px; color:var(--muted); font-weight:600; line-height:1.6; width:100%; margin-top:8px; }
.svc-plan__for { background:var(--bg-soft); border-left:3px solid var(--blue); border-radius:4px; padding:18px 22px; margin-bottom:24px; }
.svc-plan__block-label { font-size:12.5px; font-weight:800; color:var(--blue); letter-spacing:0.04em; margin-bottom:12px; }
.svc-plan__block-label--accent { color:var(--blue-dk); }
.svc-plan__for-text { font-size:14px; color:var(--ink-2); line-height:1.85; margin:0; font-weight:500; }
.svc-plan__block { margin-bottom:24px; }
.svc-plan__block-list { list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:12px; }
.svc-plan__block-list li { font-size:14.5px; color:var(--ink-2); line-height:1.7; padding-left:24px; position:relative; font-weight:500; }
.svc-plan__block-list li::before { content:''; position:absolute; left:0; top:7px; width:14px; height:14px; background:var(--blue-tint); border:1.5px solid var(--blue); border-radius:50%; }
.svc-plan__block-list li::after { content:''; position:absolute; left:4px; top:13px; width:6px; height:3px; border-left:1.5px solid var(--blue); border-bottom:1.5px solid var(--blue); transform:rotate(-45deg); }
.svc-plan__cta { display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:18px 28px; margin-top:auto; background:var(--blue); color:#fff; font-weight:800; font-size:14px; letter-spacing:0.04em; border-radius:6px; transition:all .35s var(--ease); box-shadow:0 4px 12px rgba(37,99,235,.28); }
.svc-plan__cta:hover { background:var(--blue-dk); transform:translateY(-1px); box-shadow:0 12px 28px rgba(37,99,235,.42); }
.svc-plan__cta-arrow { transition:transform .35s var(--ease); }
.svc-plan__cta:hover .svc-plan__cta-arrow { transform:translateX(6px); }
.svc-plans-note { text-align:center; font-size:14px; color:var(--ink-2); margin-top:40px; line-height:1.9; font-weight:500; }
.svc-flow { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:64px; position:relative; }
.svc-flow__step { background:rgba(255,255,255,.04); border:1px solid rgba(147,197,253,.22); border-radius:8px; padding:32px 24px; transition:all .35s var(--ease); position:relative; overflow:visible; }
.svc-flow__step::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--blue-pale) 0%,var(--blue-mist) 100%); border-radius:8px 8px 0 0; transform:scaleX(0); transform-origin:left; transition:transform .4s var(--ease); }
.svc-flow__step:not(:last-child)::after { content:'→'; position:absolute; right:-26px; top:46px; width:32px; height:32px; display:flex; align-items:center; justify-content:center; font-size:18px; font-weight:700; color:var(--blue-pale); background:var(--ink); border:1px solid rgba(147,197,253,.4); border-radius:50%; z-index:5; }
.svc-flow__step:hover { background:rgba(96,165,250,.12); border-color:rgba(147,197,253,.5); transform:translateY(-3px); }
.svc-flow__step:hover::before { transform:scaleX(1); }
.svc-flow__num { display:flex; flex-direction:column; gap:10px; margin-bottom:24px; line-height:1; }
.svc-flow__num-label { font-size:12px; font-weight:800; color:var(--blue-pale); letter-spacing:0.06em; }
.svc-flow__num-digit { font-size:48px; font-weight:900; color:#fff; line-height:1; letter-spacing:-0.02em; }
.svc-flow__title { font-size:18px; font-weight:800; color:#fff; margin:0 0 14px; line-height:1.5; }
.svc-flow__desc { font-size:14.5px; color:#fff; line-height:1.9; margin:0; font-weight:500; }
.svc-faq { max-width:920px; margin:64px auto 0; display:flex; flex-direction:column; gap:14px; }
.svc-faq__item { background:#fff; border:1px solid var(--border); border-radius:8px; overflow:hidden; transition:all .35s var(--ease); box-shadow:var(--sh-card); }
.svc-faq__item:hover { border-color:var(--blue-pale); }
.svc-faq__item[open] { border-color:var(--blue); box-shadow:var(--sh-hover); }
.svc-faq__q { padding:24px 28px; display:flex; align-items:center; gap:18px; cursor:pointer; font-size:17px; font-weight:800; color:var(--ink); list-style:none; line-height:1.55; }
.svc-faq__q::-webkit-details-marker { display:none; }
.svc-faq__icon { flex-shrink:0; width:36px; height:36px; background:var(--blue-tint); color:var(--blue-dk); border:1px solid var(--blue-pale); border-radius:6px; display:inline-flex; align-items:center; justify-content:center; font-size:15px; font-weight:900; }
.svc-faq__item[open] .svc-faq__icon { background:var(--blue); color:#fff; border-color:var(--blue); }
.svc-faq__q-text { flex:1; }
.svc-faq__chevron { transition:transform .3s var(--ease); color:var(--muted); font-size:14px; font-weight:700; }
.svc-faq__item[open] .svc-faq__chevron { transform:rotate(180deg); color:var(--blue); }
.svc-faq__a { display:flex; gap:18px; padding:6px 28px 24px; font-size:15.5px; color:var(--ink-2); line-height:1.95; font-weight:500; }
.svc-faq__a-icon { flex-shrink:0; width:36px; height:36px; background:var(--ink); color:#fff; border-radius:6px; display:inline-flex; align-items:center; justify-content:center; font-size:15px; font-weight:900; }
.svc-faq__a-text { flex:1; padding-top:4px; }
.svc-final { position:relative; background:var(--ink); color:#fff; padding:120px 0 104px; overflow:hidden; }
.svc-final::before { content:''; position:absolute; top:-320px; left:50%; transform:translateX(-50%); width:1100px; height:1100px; background:radial-gradient(circle,rgba(96,165,250,.22) 0%,transparent 60%); border-radius:50%; pointer-events:none; }
.svc-final__inner { position:relative; z-index:1; max-width:920px; margin:0 auto; text-align:center; padding:0 32px; }
.svc-final__title { font-size:clamp(32px,4.6vw,46px); font-weight:900; line-height:1.36; color:#fff; margin:24px 0 28px; text-wrap:balance; }
.svc-final__title em { font-style:normal; color:var(--blue-pale); font-weight:900; background:linear-gradient(transparent 64%,rgba(147,197,253,.24) 64%,rgba(147,197,253,.24) 92%,transparent 92%); padding:0 0.04em; }
.svc-final__lead { font-size:16px; color:#fff; line-height:2.0; margin:0 auto 44px; max-width:760px; font-weight:500; }
.svc-final__points { display:flex; justify-content:center; flex-wrap:wrap; margin:44px 0 48px; padding:0; border-top:1px solid rgba(147,197,253,.32); border-bottom:1px solid rgba(147,197,253,.32); }
.svc-final__point { display:flex; flex-direction:column; align-items:center; gap:10px; padding:32px 48px; border-right:1px solid rgba(147,197,253,.24); }
.svc-final__point:last-child { border-right:none; }
.svc-final__point-num { font-size:42px; font-weight:900; color:var(--blue-pale); line-height:1; letter-spacing:-0.02em; }
.svc-final__point-num small { font-size:.4em; color:var(--blue-mist); font-weight:700; margin-left:6px; }
.svc-final__point-label { font-size:13px; color:#fff; font-weight:700; letter-spacing:0.04em; }
.svc-final__ctas { display:flex; flex-wrap:wrap; gap:18px; justify-content:center; align-items:center; margin-bottom:30px; }
.svc-final__ctas .svc-btn--primary { background:var(--blue); color:#fff; }
.svc-final__ctas .svc-btn--primary:hover { background:var(--blue-dk); }
.svc-final__ctas .svc-btn--line { color:#fff; border-bottom-color:#fff; }
.svc-final__ctas .svc-btn--line:hover { color:var(--blue-pale); border-bottom-color:var(--blue-pale); }
.svc-final__note { font-size:14px; color:#fff; line-height:1.9; font-weight:500; margin:0; }
.svc-section--ink,.svc-section--ink *,
.svc-final,.svc-final *,
.svc-pitfalls *,.svc-vision__timeline *,.svc-flow *,
.svc-ba__total,.svc-ba__total * {
  color:#fff !important;
}
.svc-btn--primary, .svc-btn--primary *,
.svc-plan__cta, .svc-plan__cta *,
.svc-cov__note-cta, .svc-cov__note-cta *,
.svc-final__ctas .svc-btn--primary, .svc-final__ctas .svc-btn--primary *,
.svc-btn--primary .svc-btn__arrow,
.svc-plan__cta .svc-plan__cta-arrow,
.svc-cov__note-cta .svc-btn__arrow {
  color:#fff !important;
}
@keyframes svcRise { from { transform:translateY(24px); opacity:0; } to { transform:translateY(0); opacity:1; } }
@keyframes svcSlideRight { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcSlideLeft { from { transform:translateX(32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcZoomIn { from { transform:scale(.92); opacity:0; } to { transform:scale(1); opacity:1; } }
@keyframes svcExpandX { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes svcExpandY { from { transform:scaleY(0); } to { transform:scaleY(1); } }
@keyframes svcGlowPulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.78; transform:scale(1.06); } }
@keyframes svcDotPulse { 0%,100% { box-shadow:0 0 0 5px var(--bg),0 2px 6px rgba(37,99,235,.2); } 50% { box-shadow:0 0 0 5px var(--bg),0 0 0 10px rgba(37,99,235,.18),0 4px 14px rgba(37,99,235,.32); } }
@keyframes svcArrowSlide { 0%,100% { transform:translateX(0); } 50% { transform:translateX(5px); } }
@keyframes svcCounterIn { 0% { transform:translateY(40px); opacity:0; } 100% { transform:translateY(0); opacity:1; } }
@keyframes svcGlowFadeIn { from { opacity:0; transform:scale(.7); } to { opacity:1; transform:scale(1); } }
@keyframes svcGridFade { from { opacity:0; } to { opacity:1; } }
@keyframes svcHeroTitleIn { from { transform:translateY(40px); opacity:0; filter:blur(6px); } to { transform:translateY(0); opacity:1; filter:blur(0); } }
@keyframes svcHeroQuoteIn { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
.svc-hero::before { animation:svcGridFade 1.4s var(--ease-out) .1s both; }
.svc-hero::after { animation:svcGlowFadeIn 1.8s var(--ease-out) .3s both,svcGlowPulse 12s ease-in-out 1.8s infinite; }
.svc-hero__chapter, .svc-hero__meta { animation:svcHeroQuoteIn 1s var(--ease-out) .15s both; }
.svc-hero__quote { animation:svcHeroQuoteIn 1.1s var(--ease-out) .3s both; }
.svc-hero__title { animation:svcHeroTitleIn 1.2s var(--ease-out) .5s both; }
.svc-hero__lead { animation:svcRise 1s var(--ease-out) .75s both; }
.svc-hero__ctas { animation:svcRise 1s var(--ease-out) .95s both; }
.svc-hero__pillars { animation:svcRise 1s var(--ease-out) 1.15s both; }
.svc-hero__pillar:nth-child(1) { animation:svcSlideLeft .9s var(--ease-out) 1.3s both; }
.svc-hero__pillar:nth-child(2) { animation:svcSlideLeft .9s var(--ease-out) 1.45s both; }
.svc-hero__pillar:nth-child(3) { animation:svcSlideLeft .9s var(--ease-out) 1.6s both; }
.svc-story__moment::before { animation:svcDotPulse 5s ease-in-out infinite; }
.svc-flow__step:not(:last-child)::after { animation:svcArrowSlide 4s ease-in-out infinite; }
@supports (animation-timeline:view()) {
  .svc-section__head {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-why-card {
    animation:svcZoomIn .8s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-cov__card {
    animation:svcSlideRight .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-ba__row {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-pitfall {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-voice-card {
    animation:svcZoomIn 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-vision__stage {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 35%;
  }
  .svc-plan {
    animation:svcZoomIn 1.1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
  }
  .svc-flow__step {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-faq__item {
    animation:svcSlideRight .7s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-story__moment {
    animation:svcRise 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-story::before {
    animation:svcExpandY 1.4s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 5% cover 50%;
    transform-origin:top;
  }
  .svc-why-card__num-digit {
    animation:svcCounterIn .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 32%;
  }
  .svc-flow__num-digit {
    animation:svcCounterIn 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .svc-flow__step::before {
    animation:svcExpandX .9s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 40%;
    transform-origin:left;
  }
  .svc-title em, .svc-hero__title em, .svc-final__title em {
    animation:svcExpandX .8s var(--ease-out) .15s both;
    animation-timeline:view();
    animation-range:entry 30% cover 70%;
    transform-origin:left;
  }
  .svc-kicker__bar, .svc-kicker::before, .svc-hero__chapter-bar, .svc-hero__meta-line {
    animation:svcExpandX 1s var(--ease-out) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
    transform-origin:left;
  }
}
html:has(.svc-lp) { scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce) { .svc-lp *, .svc-lp *::before, .svc-lp *::after { animation:none !important; transition:none !important; } }
 }
@media (max-width:980px) {
  .svc-lp .wrap,.svc-lp .wrap-narrow { padding:0 22px; }
  .svc-section,.svc-final,.svc-section--ink,.svc-section--story { padding:80px 0; }
  .svc-section__head { margin-bottom:52px; }
  .svc-hero { padding:80px 0 64px; }
  .svc-plans,.svc-flow,.svc-voices,.svc-why-grid,.svc-pitfalls { grid-template-columns:1fr 1fr !important; }
  .svc-cov,.svc-vision__timeline { grid-template-columns:1fr 1fr !important; }
  .svc-ba__row { grid-template-columns:1fr; gap:14px; padding:24px; }
  .svc-ba__arrow { transform:rotate(90deg); padding:8px 0; justify-self:center; }
  .svc-cov__note { flex-direction:column; align-items:flex-start; }
  .svc-story__moment { grid-template-columns:auto 1fr; gap:24px; margin-bottom:40px; }
  .svc-story__moment::before { display:none; }
  .svc-story::before { left:60px; transform:none; }
  .svc-story__moment:nth-child(odd) .svc-story__time,.svc-story__moment:nth-child(even) .svc-story__time { grid-column:1; text-align:left; padding:0; width:96px; font-size:32px; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,.svc-story__moment:nth-child(even) .svc-story__scene { grid-column:2; padding:22px 24px; text-align:left; }
  .svc-hero__pillars { grid-template-columns:1fr; }
  .svc-hero__title { font-size:34px; }
  .svc-flow__step:not(:last-child)::after { display:none; }
  .svc-final__point { padding:22px 32px; }
}
@media (max-width:680px) {
  .svc-plans,.svc-flow,.svc-voices,.svc-cov,.svc-why-grid,.svc-pitfalls,.svc-vision__timeline { grid-template-columns:1fr !important; }
  .svc-hero__ctas { flex-direction:column; align-items:stretch; }
  .svc-btn { width:100%; }
  .svc-final__points { flex-direction:column; padding:0; }
  .svc-final__point { border-right:none; border-bottom:1px solid rgba(147,197,253,.24); padding:24px 0; }
  .svc-final__point:last-child { border-bottom:none; }
}
.svc-btn--primary, .svc-btn--primary *,
.svc-plan__cta, .svc-plan__cta *,
.svc-cov__note-cta, .svc-cov__note-cta *,
.svc-final__ctas .svc-btn--primary, .svc-final__ctas .svc-btn--primary * {
  color:#fff !important;
}
.svc-cov__note-cta { background:#fff !important; color:#1F2937 !important; }
.svc-cov__note-cta * { color:#1F2937 !important; }
.svc-cov__note-cta:hover { background:#1F2937 !important; color:#fff !important; }
.svc-cov__note-cta:hover * { color:#fff !important; }
.svc-cov__note {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  border:none !important;
  border-left:none !important;
  border-radius:10px !important;
  padding:36px 40px !important;
  box-shadow:0 16px 36px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08) !important;
  position:relative; overflow:hidden;
}
.svc-cov__note *:not(.svc-cov__note-cta):not(.svc-cov__note-cta *) { color:#fff !important; }
.svc-cov__note-title { color:#fff !important; font-weight:900; font-size:20px; }
.svc-cov__note-body { color:rgba(255,255,255,.92) !important; font-weight:500; }
.svc-cov__note-cta {
  font-weight:900 !important;
  padding:18px 32px !important;
  border-radius:8px !important;
  box-shadow:0 8px 22px rgba(255,255,255,.18),0 2px 6px rgba(0,0,0,.32) !important;
}
.svc-ba__after {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  border:none !important;
  box-shadow:0 10px 24px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.svc-ba__after::before { background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%) !important; }
.svc-ba__after .svc-ba__label { color:rgba(255,255,255,.85) !important; }
.svc-ba__after .svc-ba__text { color:#fff !important; }
.svc-ba__task-num {
  background:linear-gradient(135deg, #2D3748 0%, #111827 100%) !important;
  color:#fff !important;
  box-shadow:0 4px 12px rgba(0,0,0,.32) !important;
}
.svc-ba__task-num * { color:#fff !important; }
.svc-ba__arrow { color:#1F2937 !important; }
.svc-ba__row:hover .svc-ba__arrow { color:#000 !important; transform:translateX(8px); }
.svc-ba__total {
  background:linear-gradient(135deg, #2D3748 0%, #1F2937 50%, #111827 100%) !important;
  box-shadow:0 14px 32px rgba(0,0,0,.28) !important;
}
.svc-ba__total-label { color:rgba(255,255,255,.85) !important; }
.svc-ba__total-value, .svc-ba__total-value * { color:#fff !important; }
@supports (animation-timeline:view()) {
  .svc-section__head,
  .svc-why-card,.svc-plan,.svc-cov__card,.svc-ba__row,
  .svc-flow__step,.svc-faq__item,.svc-pitfall,
  .svc-voice-card,.svc-vision__stage,.svc-story__moment,
  .svc-cov__note,.svc-story__punch,.svc-ba__total,
  .svc-hero__pillar {
    animation:svcRise 1s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 0% cover 30% !important;
  }
  .svc-why-card__num-digit,.svc-cov__num,.svc-vision__stage-num,
  .svc-flow__num-digit,.svc-plan__price-num,.svc-ba__total-value,
  .svc-hero__pillar-num,.svc-story__time {
    animation:svcZoomIn 1s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 5% cover 28% !important;
  }
  .svc-title em,.svc-hero__title em,.svc-final__title em {
    background-size:0% 100%;
    animation:svcExpandHL .9s var(--ease-out) both !important;
    animation-timeline:view() !important;
    animation-range:entry 30% cover 60% !important;
  }
}
@keyframes svcExpandHL { from { background-size:0% 100%; } to { background-size:100% 100%; } }
@media (max-width:1024px) {
  .svc-hero { padding:100px 0 80px; }
  .svc-hero__title { font-size:44px !important; line-height:1.32; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:88px 0; }
  .svc-section__head { margin-bottom:56px; }
  .svc-flow { grid-template-columns:repeat(2,1fr); gap:16px; }
  .svc-flow__step:not(:last-child)::after { display:none; }
  .svc-cov, .svc-vision__timeline { grid-template-columns:repeat(2,1fr); gap:16px; }
}
@media (max-width:768px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 20px; }
  .svc-hero { padding:72px 0 60px; }
  .svc-hero__title { font-size:30px !important; line-height:1.35; margin-bottom:24px; }
  .svc-hero__lead, .svc-hero__quote { font-size:15px !important; }
  .svc-hero__chapter, .svc-hero__meta { font-size:11px; gap:10px; margin-bottom:24px; }
  .svc-hero__chapter-bar, .svc-hero__meta-line { width:24px; }
  .svc-hero__ctas { gap:12px; margin-bottom:48px; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:72px 0; }
  .svc-section__head { margin-bottom:48px; }
  .svc-title { font-size:26px !important; line-height:1.4; }
  .svc-lead { font-size:14.5px; }
  .svc-plans, .svc-flow, .svc-voices, .svc-why-grid, .svc-pitfalls,
  .svc-cov, .svc-vision__timeline { grid-template-columns:1fr 1fr !important; gap:14px !important; }
  .svc-ba__row { grid-template-columns:1fr !important; gap:12px; padding:24px 20px; }
  .svc-ba__arrow { transform:rotate(90deg); padding:8px 0; justify-self:center; font-size:28px; }
  .svc-ba__side { padding:20px; min-height:auto; }
  .svc-ba__text { font-size:20px; }
  .svc-ba__task-text { font-size:17px; }
  .svc-ba__total { padding:32px 24px; }
  .svc-ba__total-value { font-size:28px; }
  .svc-cov__note { padding:24px 22px; flex-direction:column; align-items:flex-start; gap:18px; border-radius:8px !important; }
  .svc-cov__note-main { min-width:auto; }
  .svc-cov__note-cta { width:100%; justify-content:center; padding:16px 24px !important; }
  .svc-cov__note-title { font-size:18px !important; }
  .svc-story__moment { grid-template-columns:auto 1fr !important; gap:20px; margin-bottom:36px; }
  .svc-story__moment::before { display:none; }
  .svc-story::before { left:48px !important; transform:none; }
  .svc-story__moment:nth-child(odd) .svc-story__time,
  .svc-story__moment:nth-child(even) .svc-story__time { grid-column:1 !important; text-align:left !important; padding:0 !important; width:80px; font-size:24px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,
  .svc-story__moment:nth-child(even) .svc-story__scene { grid-column:2 !important; padding:18px 20px !important; text-align:left !important; }
  .svc-story__scene-title { font-size:17px; }
  .svc-story__scene-body { font-size:14.5px; }
  .svc-story__time-meta { font-size:11px; }
  .svc-story__punch { padding:32px 22px; font-size:18px; margin-top:64px; }
  .svc-hero__pillars { grid-template-columns:1fr !important; gap:14px; padding-top:36px; }
  .svc-hero__pillar { padding:20px 22px; }
  .svc-hero__pillar-num { font-size:36px; }
  .svc-hero__pillar-text { font-size:14px; }
  .svc-pitfall { padding:24px 22px; }
  .svc-pitfall__title { font-size:16px; }
  .svc-pitfall__col-text { font-size:14px; }
  .svc-vision__stage { padding:28px 24px; }
  .svc-vision__stage-num { font-size:42px !important; margin-bottom:18px; }
  .svc-vision__stage-title { font-size:17px; }
  .svc-vision__stage-body { font-size:14px; }
  .svc-flow__step { padding:24px 22px; }
  .svc-flow__num-digit { font-size:38px !important; }
  .svc-flow__title { font-size:16px; }
  .svc-flow__desc { font-size:13.5px; }
  .svc-plan { padding:30px 24px 24px; }
  .svc-plan__name { font-size:21px; }
  .svc-plan__price-num { font-size:32px !important; }
  .svc-plan__sub { font-size:14px; margin-bottom:22px; }
  .svc-plan__cta { padding:16px 22px; font-size:13.5px; }
  .svc-final__point { padding:22px 28px; }
  .svc-final__point-num { font-size:32px; }
  .svc-final__title { font-size:26px !important; }
  .svc-final__lead { font-size:14.5px; }
  .svc-faq__q { padding:20px 22px; gap:14px; font-size:16px; }
  .svc-faq__a { padding:0 22px 22px; gap:14px; font-size:14.5px; }
  .svc-faq__icon, .svc-faq__a-icon { width:32px; height:32px; font-size:13px; }
  .svc-why-card { padding:28px 24px 24px; }
  .svc-why-card__num-digit { font-size:42px !important; }
  .svc-why-card__title { font-size:17px; }
  .svc-why-card__desc { font-size:14.5px; }
  .svc-cov__card { padding:26px 22px; min-height:auto; }
  .svc-cov__num { font-size:36px !important; }
  .svc-cov__title { font-size:16px; }
  .svc-cov__desc { font-size:14px; }
  .svc-voice-card { padding:28px 24px 22px; }
  .svc-voice-card__body { font-size:15px; }
  .svc-voice-card__mark { font-size:48px; top:12px; right:18px; }
}
@media (max-width:560px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 16px; }
  .svc-hero { padding:56px 0 44px; }
  .svc-hero__title { font-size:24px !important; }
  .svc-section, .svc-final, .svc-section--ink, .svc-section--story { padding:56px 0; }
  .svc-section__head { margin-bottom:36px; }
  .svc-title { font-size:22px !important; }
  .svc-plans, .svc-flow, .svc-voices, .svc-cov, .svc-why-grid,
  .svc-pitfalls, .svc-vision__timeline { grid-template-columns:1fr !important; gap:14px !important; }
  .svc-hero__ctas { flex-direction:column; align-items:stretch; gap:10px; }
  .svc-btn { width:100%; padding:16px 22px; font-size:14px; }
  .svc-btn--line { padding:14px 0; }
  .svc-ba__row { padding:20px 18px; }
  .svc-ba__task-text { font-size:16px; }
  .svc-ba__text { font-size:18px; }
  .svc-ba__total { padding:28px 22px; }
  .svc-ba__total-value { font-size:24px; }
  .svc-final__points { flex-direction:column; padding:0; margin:32px 0; }
  .svc-final__point { border-right:none !important; border-bottom:1px solid rgba(147,197,253,.24); padding:20px 0; }
  .svc-final__point:last-child { border-bottom:none; }
  .svc-story__moment { gap:16px; }
  .svc-story::before { left:44px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__time,
  .svc-story__moment:nth-child(even) .svc-story__time { width:72px; font-size:22px !important; }
  .svc-story__moment:nth-child(odd) .svc-story__scene,
  .svc-story__moment:nth-child(even) .svc-story__scene { padding:16px 18px !important; }
  .svc-story__punch { padding:24px 18px; font-size:16px; }
  .svc-cov__note { padding:22px 18px; }
  .svc-cov__note-title { font-size:17px !important; }
  .svc-cov__note-body { font-size:14px !important; }
  .svc-pitfall { padding:22px 18px; }
  .svc-vision__stage, .svc-flow__step { padding:24px 20px; }
  .svc-plan { padding:26px 20px 20px; }
  .svc-faq__q, .svc-faq__a { padding-left:18px; padding-right:18px; }
}
@media (max-width:380px) {
  .svc-lp .wrap, .svc-lp .wrap-narrow { padding:0 12px; }
  .svc-hero__title { font-size:22px !important; }
  .svc-title { font-size:20px !important; }
  .svc-ba__text { font-size:16px; }
  .svc-vision__stage-num { font-size:36px !important; }
  .svc-final__point-num { font-size:28px; }
}
.svc-lp { overflow-x:hidden; }
@media (max-width:768px) {
  .svc-btn, .svc-plan__cta, .svc-cov__note-cta, .svc-faq__q { min-height:44px; }
}
@keyframes svcRise { from { transform:translateY(28px); opacity:0; } to { transform:translateY(0); opacity:1; } }
@keyframes svcSlideRight { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcSlideLeft { from { transform:translateX(32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
@keyframes svcZoomIn { from { transform:scale(.92); opacity:0; } to { transform:scale(1); opacity:1; } }
@keyframes svcExpandX { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes svcExpandY { from { transform:scaleY(0); } to { transform:scaleY(1); } }
@keyframes svcCounterIn { 0% { transform:translateY(40px); opacity:0; } 100% { transform:translateY(0); opacity:1; } }
@keyframes svcGlowPulse { 0%,100% { opacity:1; transform:scale(1); } 50% { opacity:.78; transform:scale(1.06); } }
@keyframes svcDotPulse { 0%,100% { box-shadow:0 0 0 5px var(--bg),0 2px 6px rgba(37,99,235,.18); } 50% { box-shadow:0 0 0 5px var(--bg),0 0 0 10px rgba(37,99,235,.22),0 4px 14px rgba(37,99,235,.34); } }
@keyframes svcArrowSlide { 0%,100% { transform:translateX(0); } 50% { transform:translateX(5px); } }
@keyframes svcGlowFadeIn { from { opacity:0; transform:scale(.7); } to { opacity:1; transform:scale(1); } }
@keyframes svcHeroTitleIn { from { transform:translateY(40px); opacity:0; filter:blur(6px); } to { transform:translateY(0); opacity:1; filter:blur(0); } }
@keyframes svcHeroQuoteIn { from { transform:translateX(-32px); opacity:0; } to { transform:translateX(0); opacity:1; } }
.svc-hero::after { animation:svcGlowFadeIn 1.8s var(--ease-out) .3s both, svcGlowPulse 12s ease-in-out 1.8s infinite; }
.svc-hero__chapter, .svc-hero__meta { animation:svcHeroQuoteIn 1s var(--ease-out) .15s both; }
.svc-hero__quote { animation:svcHeroQuoteIn 1.1s var(--ease-out) .3s both; }
.svc-hero__title { animation:svcHeroTitleIn 1.2s var(--ease-out) .5s both; }
.svc-hero__lead { animation:svcRise 1s var(--ease-out) .75s both; }
.svc-hero__ctas { animation:svcRise 1s var(--ease-out) .95s both; }
.svc-hero__pillars { animation:svcRise 1s var(--ease-out) 1.15s both; }
.svc-hero__pillar:nth-child(1) { animation:svcZoomIn .9s var(--ease-out) 1.3s both; }
.svc-hero__pillar:nth-child(2) { animation:svcZoomIn .9s var(--ease-out) 1.45s both; }
.svc-hero__pillar:nth-child(3) { animation:svcZoomIn .9s var(--ease-out) 1.6s both; }
.svc-story__moment::before { animation:svcDotPulse 5s ease-in-out infinite; }
.svc-flow__step:not(:last-child)::after { animation:svcArrowSlide 4s ease-in-out infinite; }
@supports (animation-timeline:view()) {
  .svc-section__head { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-why-card { animation:svcZoomIn .8s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-cov__card { animation:svcSlideRight .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-ba__row { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-pitfall { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-voice-card { animation:svcZoomIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-vision__stage { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-plan { animation:svcZoomIn 1.1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; }
  .svc-flow__step { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-faq__item { animation:svcSlideRight .7s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-story__moment { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-story::before { animation:svcExpandY 1.4s var(--ease-out) both; animation-timeline:view(); animation-range:entry 5% cover 50%; transform-origin:top; }
  .svc-why-card__num-digit, .svc-why-card__num { animation:svcCounterIn .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 32%; }
  .svc-flow__num-digit, .svc-flow__num { animation:svcCounterIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; }
  .svc-flow__step::before { animation:svcExpandX .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 40%; transform-origin:left; }
  .svc-title em, .svc-hero__title em, .svc-final__title em { animation:svcExpandX .8s var(--ease-out) .15s both; animation-timeline:view(); animation-range:entry 30% cover 70%; transform-origin:left; }
  .svc-kicker__bar, .svc-kicker::before, .svc-hero__chapter-bar, .svc-hero__meta-line { animation:svcExpandX 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 30%; transform-origin:left; }
  .svc-cov__note { animation:svcRise 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 35%; }
  .svc-final__point { animation:svcZoomIn .9s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
  .svc-ba__total { animation:svcZoomIn 1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
  .svc-story__punch { animation:svcZoomIn 1.1s var(--ease-out) both; animation-timeline:view(); animation-range:entry 0% cover 50%; }
}
html:has(.svc-lp) { scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce) { .svc-lp *,.svc-lp *::before,.svc-lp *::after { animation:none !important; transition:none !important; } }
.bxp-mega-col-title {
  display:inline-block; position:relative;
  padding-bottom:10px; margin-bottom:16px;
  font-weight:800; font-size:16px;
  color:#0F172A;
  border-bottom:2px solid #2563EB;
  text-decoration:none;
  transition:all .3s cubic-bezier(.4,0,.2,1);
}
.bxp-mega-col-title:hover { color:#1D4ED8; }
.bxp-mega-list { list-style:none; padding:0; margin:0; }
.bxp-mega-list-2col { display:grid; grid-template-columns:repeat(2,1fr); gap:8px 24px; }
.bxp-mega-list li { margin:0; padding:0; position:relative; }
.bxp-mega-list a {
  display:inline-block;
  position:relative;
  color:#1E293B;
  font-size:15px;
  font-weight:600;
  padding:8px 0 8px 0;
  text-decoration:none;
  transition:all .3s cubic-bezier(.4,0,.2,1);
  line-height:1.6;
}
.bxp-mega-list a::before {
  content:'';
  position:absolute;
  left:0; top:50%;
  width:0; height:2px;
  background:#2563EB;
  transition:width .35s cubic-bezier(.4,0,.2,1);
  transform:translateY(-50%);
}
.bxp-mega-list a:hover {
  color:#2563EB;
  padding-left:20px;
  font-weight:700;
}
.bxp-mega-list a:hover::before { width:14px; }
.bxp-mega-cta-text { font-size:14px; font-weight:700; color:#475569; margin-bottom:14px; }
.bxp-mega-cta-btn {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:16px 32px;
  background:#2563EB;
  color:#fff;
  border-radius:6px;
  font-weight:700; font-size:14.5px;
  letter-spacing:0.04em;
  text-decoration:none;
  transition:all .35s cubic-bezier(.4,0,.2,1);
  box-shadow:0 6px 18px rgba(37,99,235,.32);
}
.bxp-mega-cta-btn:hover {
  background:#1D4ED8;
  transform:translateY(-2px);
  box-shadow:0 14px 32px rgba(37,99,235,.46);
}
.bxp-arrow {
  display:inline-block;
  transition:transform .3s cubic-bezier(.4,0,.2,1);
  font-weight:700;
}
.bxp-mega-cta-btn:hover .bxp-arrow { transform:translateX(6px); }
@supports (animation-timeline:view()) {
  .bxp-mega-col-title {
    animation:svcSlideRight .8s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 30%;
  }
  .bxp-mega-list li {
    animation:svcSlideRight .7s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 50%;
  }
  .bxp-mega-list li:nth-child(1) { animation-delay:0s; }
  .bxp-mega-list li:nth-child(2) { animation-delay:.04s; }
  .bxp-mega-list li:nth-child(3) { animation-delay:.08s; }
  .bxp-mega-list li:nth-child(4) { animation-delay:.12s; }
  .bxp-mega-list li:nth-child(5) { animation-delay:.16s; }
  .bxp-mega-list li:nth-child(6) { animation-delay:.20s; }
  .bxp-mega-list li:nth-child(7) { animation-delay:.24s; }
  .bxp-mega-list li:nth-child(8) { animation-delay:.28s; }
  .bxp-mega-list li:nth-child(9) { animation-delay:.32s; }
  .bxp-mega-list li:nth-child(10) { animation-delay:.36s; }
  .bxp-mega-list li:nth-child(11) { animation-delay:.40s; }
  .bxp-mega-list li:nth-child(12) { animation-delay:.44s; }
  .bxp-mega-list li:nth-child(13) { animation-delay:.48s; }
  .bxp-mega-list li:nth-child(14) { animation-delay:.52s; }
  .bxp-mega-list li:nth-child(15) { animation-delay:.56s; }
  .bxp-mega-cta-box {
    animation:svcZoomIn 1s cubic-bezier(.16,1,.3,1) both;
    animation-timeline:view();
    animation-range:entry 0% cover 50%;
  }
}
@media (prefers-reduced-motion:reduce) {
  .bxp-mega-col-title, .bxp-mega-list li, .bxp-mega-cta-box { animation:none !important; transition:none !important; }
}
/* === BX-SVC-RESTORE-END === */
