@media(max-width:768px){
  .mobile-nav{
    position:absolute;
        top:100%;
        left:0;
        right:0;
        border-top:1px solid var(--border);
        box-shadow:0 18px 40px rgba(15,23,42,0.14);
        max-height:calc(100vh - 84px);
        overflow:auto;
        -webkit-overflow-scrolling:touch;
  }
}

.page-hero{
  background-image:
      linear-gradient(180deg, rgba(255,255,255,0.55), rgba(255,255,255,0.35)),
      url('../../key_visual_low.jpg');
    background-size:cover;
    background-position:center;
    background-repeat:no-repeat;
    border-bottom:1px solid var(--border);
    padding:34px 0 22px 0;
}

.page-section .section-title-row{
  align-items:center;
    justify-content:flex-start;
    gap:10px;
}

.title-icon{
  width:60px;
    height:60px;
    flex:0 0 60px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin:0;
}

@media(max-width:768px){
  .title-icon{
    width:52px;height:52px;flex-basis:52px;
  }
}

.title-icon svg{
  width:100%;
    height:100%;
    display:block;
    fill:none !important;
}

.title-icon svg rect{
  display:none !important;
}

.title-icon svg path,
.title-icon svg circle,
.title-icon svg ellipse,
.title-icon svg line,
.title-icon svg polyline,
.title-icon svg polygon{
  fill:none !important;
    stroke:var(--accent-blue) !important;
    stroke-width:2.2 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
}

.card{
  border:1px solid var(--border);
    border-radius:18px;
    padding:18px;
    background:#fff;
    box-shadow:0 8px 24px rgba(0,0,0,0.04);
}

.page-section .card{
  position:relative;
}

.card-lead{
  margin:10px 0 0 0;
    color:var(--muted);
    font-size:0.98rem;
}

.card-more{
  display:inline-block;
    margin-top:10px;
    font-weight:700;
    color:rgba(30, 64, 175, 0.95);
}

.card-more:hover{
  text-decoration:underline;
    text-underline-offset:3px;
}
