@charset "utf-8";
/* CSS Document */

  :root{
    --red:#bf0007; --red-btn:#b82626; --red-dark:#8f0005; --red-soft:#fbecec;
    --ink:#171a1c; --charcoal:#373838; --sub:#6b6e70; --line:#e4e4e5; --bg:#f7f7f7; --card:#fff;
  }


  /* ===== hero ===== */
  .phero-img{line-height:0;background:#171a1c;
  margin-top: 50px;}
  .phero-img img{width:100%;height:auto;display:block;}
  .phero{background:var(--ink);color:#fff;padding:44px 0 40px;position:relative;overflow:hidden;}
  .phero::after{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;
    background:radial-gradient(circle,rgba(191,0,7,.32),transparent 62%);pointer-events:none;}
  .crumb{font-size:12px;color:#a7abae;margin-bottom:16px;letter-spacing:.02em;position:relative;z-index:1;}
  .eyebrow{display:inline-block;font-size:11.5px;font-weight:800;letter-spacing:.14em;
    color:#fff;background:var(--red);padding:6px 13px;border-radius:4px;margin-bottom:18px;position:relative;z-index:1;}
  .phero h1{font-size:32px;font-weight:800;line-height:1.42;margin-bottom:16px;letter-spacing:.01em;position:relative;z-index:1;}
  .phero h1 .em{color:#ff5a5f;}
  .phero p{font-size:15px;color:#d8dadb;max-width:720px;position:relative;z-index:1;}

  /* breadth stat row */
  .stats{display:flex;gap:14px;flex-wrap:wrap;margin-top:26px;position:relative;z-index:1;}
  .stat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:12px;
    padding:14px 20px;min-width:120px;}
  .stat .n{font-size:26px;font-weight:800;color:#fff;line-height:1;}
  .stat .n b{color:#ff6b70;}
  .stat .t{font-size:11.5px;color:#c3c6c8;margin-top:6px;}

  /* section head */
  .section-h{font-size:22px;font-weight:800;color:var(--ink);margin:40px 0 6px;line-height:1.4;}
  .section-h .bar{color:var(--red);}
  .section-sub{font-size:13.5px;color:var(--sub);margin:32px 0 22px;}

  /* ===== domain block ===== */
  .domain{background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-bottom:20px;
    box-shadow:0 1px 0 rgba(23,26,28,.02);scroll-margin-top:20px;}

  /* photo (placeholder for real image) */
  .media{position:relative;overflow:hidden;line-height:0;background:#171a1c;}
  .media img{width:100%;height:auto;display:block;}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

  /* body */
  .dbody{
	  padding:22px 24px 8px;
	  text-align: left;
  }
  .learn{font-size:14px;color:var(--charcoal);line-height:1.75;}
  .learn b{color:inherit;font-weight:inherit;}
  .meta{display:flex;flex-wrap:wrap;gap:18px;margin-top:14px;}
  .meta .m{flex:1;min-width:240px;}
  .meta .ml{font-size:10px;font-weight:800;color:var(--red);letter-spacing:.08em;margin-bottom:5px;}
  .meta .mv{font-size:12.5px;color:var(--charcoal);}
  .belong{font-size:11.5px;color:var(--sub);margin-top:14px;}
  .belong b{color:var(--charcoal);}

  /* accordion */
  details{border-top:1px solid var(--line);margin-top:16px;}
  summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:16px 0;
    font-size:14px;font-weight:800;color:var(--ink);transition:.15s;}
  summary::-webkit-details-marker{display:none;}
  summary .count{font-size:11px;font-weight:800;color:#fff;background:var(--red);border-radius:999px;padding:3px 10px;}
  summary .txt{flex:1;}
  summary .ico{width:26px;height:26px;border-radius:7px;border:1.5px solid var(--red);color:var(--red);
    display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;transition:.2s;}
  summary:hover .ico{background:var(--red);color:#fff;}
  details[open] summary .ico{transform:rotate(45deg);background:var(--red);color:#fff;}

  .deg-list{list-style:none;padding:2px 0 20px;}
  .deg-list li{padding:11px 0;border-bottom:1px dashed #e6e6e7;display:flex;flex-direction:column;gap:2px;}
  .deg-list li:last-child{border-bottom:none;}
  .deg-list .jp{font-size:13.5px;font-weight:700;color:var(--ink);}
  .deg-list .en{font-size:11px;color:#9a9d9f;letter-spacing:.01em;}
  .deg-note{font-size:11px;color:var(--sub);padding:2px 0 18px;}

  /* ===== breadth reassurance ===== */
  .assure{background:var(--red-soft);border:1px solid #f0d3d4;border-radius:14px;padding:22px 24px;margin-top:26px;}
  .assure .h{font-size:16px;font-weight:800;color:var(--ink);margin-bottom:6px;}
  .assure p{font-size:12.5px;color:#6a4a4b;}

  /* pathway */
  .pathway{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px;margin-top:18px;}
  .pathway h3{font-size:16px;color:var(--ink);margin-bottom:8px;}
  .pathway p{font-size:13px;color:var(--sub);}
  .flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:15px;}
  .step{background:#f4f4f5;border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-size:12.5px;font-weight:700;color:var(--ink);}
  .arw{color:var(--red);font-weight:800;}

  /* CTA */
  .cta{background:var(--ink);border-radius:16px;padding:32px;margin:26px 0;text-align:center;color:#fff;position:relative;overflow:hidden;}
  .cta::after{content:"";position:absolute;left:-100px;bottom:-140px;width:340px;height:340px;
    background:radial-gradient(circle,rgba(191,0,7,.30),transparent 62%);}
  .cta h3{font-size:19px;margin-bottom:6px;position:relative;z-index:1;}
  .cta p{font-size:13px;color:#c8cacb;margin-bottom:20px;position:relative;z-index:1;}
  .btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;position:relative;z-index:1;}
  .btn{font-size:14px;font-weight:800;padding:14px 26px;border-radius:10px;text-decoration:none;display:inline-block;transition:.15s;}
  .btn.g{background:var(--red);color:#fff;} .btn.g:hover{background:var(--red-dark);}
  .btn.o{background:transparent;border:1.5px solid rgba(255,255,255,.55);color:#fff;} .btn.o:hover{background:rgba(255,255,255,.10);}

  .foot{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;margin:6px 0 40px;
  text-align: left;}
  .foot h4{font-size:12px;color:var(--ink);margin-bottom:8px;}
  .foot ul{margin:0;padding-left:18px;} .foot li{font-size:11.5px;color:var(--sub);margin:5px 0;}
  .cap{font-size:11px;color:#9a9d9f;text-align:center;margin:6px 0 40px;}

  @media(max-width:600px){
    .phero h1{font-size:26px;}
  }

