/* ===== ICON WRAPPERS ===== */
.cat-icon-wrap{width:44px;height:44px;border-radius:10px;background:#edf3fa;display:flex;align-items:center;justify-content:center;margin:0 auto 6px;transition:background .15s;}
.cat-item:hover .cat-icon-wrap{background:#1460a8;}
.cat-item:hover .cat-icon-wrap svg{stroke:#fff;}
.cat-icon-wrap svg{width:26px;height:26px;stroke:#1460a8;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;}

.step-icon-bg{width:56px;height:56px;border-radius:50%;background:#edf3fa;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;}
.step-icon-bg svg{width:30px;height:30px;stroke:#1460a8;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;}

.str-icon-bg{width:60px;height:60px;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(14,46,90,.12);flex-shrink:0;}
.str-icon-bg svg{width:34px;height:34px;stroke:#1460a8;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;}

.guar-icon-bg{width:72px;height:72px;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(14,46,90,.1);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;}
.guar-icon-bg svg{width:38px;height:38px;stroke:#1460a8;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round;}

.menu-icon-bg{width:52px;height:52px;border-radius:12px;background:#edf3fa;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.menu-icon-bg svg{width:30px;height:30px;stroke:#1460a8;stroke-width:1.8;fill:none;stroke-linecap:round;stroke-linejoin:round;}

/* ===== LOGO (free assets版) ===== */
.hdr-logo-wordmark{font-size:15px;font-weight:900;color:#1b2c3e;line-height:1;letter-spacing:.3px;}
.hdr-logo .wrd-span{font-size:15px;font-weight:900;color:#1b2c3e;line-height:1;}
.phone-svg{flex:none;}
.star-txt{color:#f5a623;font-size:14px;letter-spacing:1px;}
.badge-free{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:110px;height:110px;border-radius:50%;background:#fff;box-shadow:0 3px 12px rgba(0,0,0,.2);}
.badge-free .b1{font-size:9px;font-weight:700;color:#0b4e9a;line-height:1.4;}
.badge-free .b2{font-size:22px;font-weight:900;color:#f07d0c;line-height:1;}

/* ===== HERO BADGES (CSS) ===== */
.hero-badge-pill{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1.5px solid #d4e4f4;border-radius:24px;padding:6px 14px;font-size:12px;font-weight:700;color:#1460a8;white-space:nowrap;}
.hero-badge-pill .dot{width:8px;height:8px;border-radius:50%;background:#f07d0c;flex:none;}

/* Category emoji */
.cat-emoji{font-size:28px;line-height:1;margin-bottom:2px;}

/* Step emoji */
.step-emoji{font-size:32px;line-height:1;margin-bottom:6px;}

/* Icon emoji in str-card */
.str-emoji{font-size:40px;line-height:1;flex:none;}

/* Guarantee card emoji */
.guar-emoji{font-size:48px;line-height:1;margin:0 auto 12px;}

/* ===== RESET ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Noto Sans JP',sans-serif;color:#3a4450;background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
button{cursor:pointer;border:none;background:none;font-family:inherit;}
details summary::-webkit-details-marker{display:none;}

/* ===== CONTAINER ===== */
.c{max-width:1200px;margin:0 auto;padding:0 24px;}

/* ===== HEADER ===== */
.site-hdr{position:sticky;top:0;z-index:200;background:#fff;border-bottom:1px solid #e4eaf2;box-shadow:0 1px 4px rgba(0,0,0,.06);}
.hdr-row{display:flex;align-items:center;gap:14px;height:64px;}
.hdr-logo{display:flex;align-items:center;gap:8px;flex:none;}
.hdr-logo .ico{height:36px;width:auto;}
.hdr-logo-txt{display:flex;flex-direction:column;gap:2px;}
.hdr-logo-txt .sub{font-size:9px;color:#8a939d;line-height:1;letter-spacing:.2px;}
.hdr-logo .wrd{height:21px;width:auto;}
.hdr-nav{flex:1;display:flex;align-items:center;justify-content:center;gap:18px;}
.hdr-nav a{font-size:12px;font-weight:500;color:#3a4450;white-space:nowrap;padding:4px 0;transition:color .15s;}
.hdr-nav a:hover{color:#1460a8;}
.hdr-nav a.active{color:#1460a8;font-weight:700;border-bottom:2px solid #1460a8;padding-bottom:2px;}
.hdr-contact{flex:none;display:flex;align-items:center;gap:12px;margin-left:auto;}
.hdr-tel{text-align:right;line-height:1.2;}
.hdr-tel .lbl{font-size:9px;color:#8a939d;margin-bottom:3px;}
.hdr-tel .num{display:flex;align-items:center;gap:5px;justify-content:flex-end;font-size:18px;font-weight:700;color:#0b4e9a;line-height:1;}
.hdr-tel .num img{height:14px;width:auto;}
.hdr-tel .hrs{font-size:8.5px;color:#9aa3ae;margin-top:2px;}
.btn-hdr{flex:none;background:#f07d0c;color:#fff;font-size:11px;font-weight:700;padding:9px 12px;border-radius:6px;line-height:1.45;text-align:center;box-shadow:0 2px 6px rgba(240,125,12,.38);white-space:nowrap;}

/* ===== HAMBURGER ===== */
.ham{display:none;flex-direction:column;justify-content:center;gap:5px;padding:8px;margin-left:auto;background:none;border:none;flex:none;}
.ham span{display:block;width:22px;height:2px;background:#3a4450;border-radius:2px;transition:all .25s;}
.ham.open span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.ham.open span:nth-child(2){opacity:0;transform:scaleX(0);}
.ham.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

/* ===== PAGE HERO ===== */
.page-hero{background:linear-gradient(160deg,#eef5fb 0%,#f5f9fd 100%);padding:36px 0 32px;border-bottom:1px solid #dde8f2;}
.page-hero h1{font-size:30px;font-weight:900;color:#1b2c3e;margin-bottom:10px;line-height:1.4;}
.page-hero p{font-size:14px;color:#5a6470;line-height:1.75;}
.breadcrumb{display:flex;align-items:center;gap:6px;font-size:11px;color:#8a939d;margin-bottom:14px;flex-wrap:wrap;}
.breadcrumb a{color:#1460a8;}

/* ===== SECTION LABEL ===== */
.sec-lbl{display:inline-block;font-size:11px;font-weight:700;color:#1460a8;background:#deeaf8;border-radius:3px;padding:2px 12px;margin-bottom:10px;}

/* ===== FOOTER CTA ===== */
.ftr-cta{background:linear-gradient(135deg,#1560b0 0%,#0a3d7a 100%);padding:32px 0;}
.ftr-row{display:flex;align-items:center;gap:18px;}
.ftr-badge{flex:none;width:88px;height:88px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 2px 12px rgba(0,0,0,.2);margin-left:40px;}
.ftr-badge .s{font-size:8.5px;font-weight:700;color:#0b4e9a;line-height:1.4;}
.ftr-badge .f{font-size:20px;font-weight:900;color:#f07d0c;line-height:1.1;}
.ftr-copy{flex:1;min-width:0;}
.ftr-copy h2{font-size:20px;font-weight:900;color:#fff;line-height:1.6;margin-bottom:10px;}
.ftr-checks{display:flex;flex-direction:column;gap:5px;}
.ftr-checks span{font-size:12px;color:#b8d4f0;display:flex;align-items:center;gap:6px;}
.ftr-checks .ck{color:#f07d0c;font-weight:700;}
.ftr-act{flex:none;display:flex;flex-direction:column;gap:10px;min-width:260px;}
.ftr-numlbl{font-size:10px;color:#b8d4f0;margin-bottom:4px;}
.ftr-num{display:flex;align-items:center;gap:8px;}
.ftr-num img{height:18px;width:auto;filter:brightness(0) invert(1);}
.ftr-num span{font-size:26px;font-weight:900;color:#fff;letter-spacing:.5px;line-height:1;}
.btn-ftr{display:flex;align-items:center;justify-content:center;gap:8px;background:#f07d0c;color:#fff;font-size:15px;font-weight:700;padding:14px 20px;border-radius:7px;transition:background .15s;}
.btn-ftr:hover{background:#d96e00;}
.btn-ftr .arr{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.25);font-size:13px;flex:none;}
.ftr-ill{flex:none;align-self:flex-end;margin-left:-80px;}
.ftr-ill img{height:220px;width:auto;object-fit:contain;}

/* ===== GRIDS ===== */
.g2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.g4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.g4-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}

/* ===== FLEX ROW (stacks on mobile) ===== */
.flex-r{display:flex;gap:28px;align-items:flex-start;}
.flex-r.center{align-items:center;}

/* ===== CARD ===== */
.card{background:#fff;border-radius:10px;box-shadow:0 2px 8px rgba(14,46,90,.06);overflow:hidden;}
.card-body{padding:16px;}

/* ===== BUTTONS ===== */
.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1.5px solid #1460a8;color:#1460a8;background:#fff;font-size:13px;font-weight:700;padding:10px 16px;border-radius:6px;transition:background .15s;}
.btn-outline:hover{background:#edf3fa;}
.btn-orange-lg{display:flex;align-items:center;justify-content:center;gap:12px;background:#f07d0c;color:#fff;font-size:19px;font-weight:700;padding:17px 24px;border-radius:8px;box-shadow:0 5px 16px rgba(242,129,12,.4);transition:background .15s;max-width:460px;}
.btn-orange-lg:hover{background:#d96e00;}
.btn-phone{display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;border:2px solid #c8dbed;color:#0d4f9c;border-radius:8px;padding:11px 22px;max-width:460px;transition:border-color .15s;}
.btn-phone:hover{border-color:#0d4f9c;}

/* ===== FAQ ACCORDION ===== */
details.faq{background:#f4f8fd;border:1px solid #dce8f5;border-radius:8px;overflow:hidden;}
details.faq summary{padding:16px 20px;font-size:14px;font-weight:700;color:#1b2c3e;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;}
details.faq summary .plus{font-size:20px;color:#1460a8;font-weight:400;line-height:1;flex:none;transition:transform .2s;}
details.faq[open] summary .plus{transform:rotate(45deg);}
details.faq .ans{padding:0 20px 16px;font-size:13px;line-height:1.85;color:#5a6470;border-top:1px solid #dce8f5;}

/* ===== INTRO STEPS CARD ===== */
.intro-card{display:flex;background:#fff;border-radius:10px;box-shadow:0 2px 10px rgba(14,46,90,.07);overflow:hidden;}
.intro-left{flex:none;width:240px;background:#edf3fa;padding:24px 20px;display:flex;flex-direction:column;border-right:1px solid #d4e4f4;}
.intro-steps-row{flex:1;min-width:0;padding:18px 12px;display:flex;align-items:center;}
.step-col{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 4px;}
.step-arrow{flex:none;color:#b0c8de;font-size:18px;padding:0 2px;margin-bottom:20px;}

/* ===== CAT STRIP ===== */
.cat-row{display:flex;justify-content:space-between;align-items:flex-start;gap:4px;flex-wrap:wrap;}
.cat-item{flex:1;min-width:64px;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:opacity .15s;}
.cat-item:hover{opacity:.7;}
.cat-item img{height:38px;width:auto;}
.cat-item span{font-size:11px;font-weight:500;color:#48515c;text-align:center;}

/* ===== CASE CARD ===== */
.case-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px rgba(14,46,90,.06);}
.case-card .thumb{position:relative;height:160px;}
.case-card .thumb img{width:100%;height:100%;object-fit:cover;}
.case-card .badge-cat{position:absolute;top:10px;left:10px;color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:4px;}
.case-card .card-body{padding:14px 16px;}
.case-card h3{font-size:14px;font-weight:700;color:#1b2c3e;margin-bottom:8px;line-height:1.4;}
.case-card .meta{display:flex;align-items:flex-end;justify-content:space-between;}
.case-card .area{font-size:11px;color:#8a939d;}
.case-card .price{font-size:20px;font-weight:900;color:#ee6f00;}
.case-card .price-pre{font-size:12px;color:#5a6470;}

/* ===== STRENGTH CARD ===== */
.str-card{display:flex;gap:18px;align-items:flex-start;background:#f4f8fd;border-radius:12px;padding:24px 20px;}
.str-card img{height:64px;width:auto;flex-shrink:0;}
.str-card h3{font-size:17px;font-weight:900;color:#1460a8;margin-bottom:8px;}
.str-card p{font-size:13px;line-height:1.85;color:#5a6470;}

/* ===== VOICE CARD ===== */
.voice-card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 2px 8px rgba(14,46,90,.06);}
.voice-card .head{display:flex;align-items:center;gap:12px;margin-bottom:12px;}
.voice-card .head img{width:52px;height:52px;border-radius:50%;object-fit:cover;flex-shrink:0;}
.voice-card h3{font-size:13.5px;font-weight:700;color:#1b2c3e;margin-bottom:4px;line-height:1.4;}
.voice-card p{font-size:12.5px;line-height:1.85;color:#5a6470;margin-bottom:10px;}
.voice-card .area{font-size:11px;color:#9aa3ae;}

/* ===== GUARANTEE STRIP ===== */
.guar-card{background:#fff;border-radius:10px;padding:24px 18px;text-align:center;box-shadow:0 2px 8px rgba(14,46,90,.06);}
.guar-card img{height:64px;width:auto;margin:0 auto 12px;}
.guar-card h3{font-size:15px;font-weight:700;color:#1b2c3e;margin-bottom:8px;}
.guar-card p{font-size:12px;line-height:1.75;color:#5a6470;}

/* ===== STAFF MINI CARD ===== */
.staff-card{background:#fff;border-radius:10px;padding:20px 16px;text-align:center;box-shadow:0 2px 8px rgba(14,46,90,.06);}
.staff-card img{width:80px;height:80px;border-radius:50%;object-fit:cover;margin:0 auto 10px;border:3px solid #edf3fa;}
.staff-card .role{font-size:10.5px;color:#8a939d;margin-bottom:3px;}
.staff-card .name{font-size:15px;font-weight:700;color:#1b2c3e;margin-bottom:8px;}
.staff-card p{font-size:11.5px;line-height:1.7;color:#5a6470;}

/* ===== PRICE CARD ===== */
.price-card{background:#f4f8fd;border-radius:8px;padding:16px 14px;}
.price-card .title{font-size:12.5px;font-weight:700;color:#3a4450;margin-bottom:6px;}
.price-card .amount{font-size:22px;font-weight:900;color:#1460a8;line-height:1;}
.price-card .amount span{font-size:13px;}
.price-card .note{font-size:10.5px;color:#8a939d;margin-top:4px;}

/* ===== STAT BOX ===== */
.stat-box{background:#edf3fa;border-radius:10px;padding:24px 14px;text-align:center;}
.stat-box .num{font-size:38px;font-weight:900;color:#1460a8;line-height:1;}
.stat-box .num span{font-size:17px;}
.stat-box .lbl{font-size:12px;color:#5a6470;margin-top:6px;}

/* ===== OVERLAY BA ===== */
.ba-overlay{position:absolute;left:0;right:0;bottom:8px;display:flex;align-items:center;justify-content:center;gap:6px;}
.ba-tag{background:rgba(20,32,48,.75);color:#fff;font-size:10px;padding:2px 8px;border-radius:10px;}

/* ===== DIVIDER ===== */
.divider{border:none;border-top:1px solid #e4eaf2;margin:0;}

/* ===== RESPONSIVE ===== */
@media(max-width:860px){
  /* --- Header --- */
  .ham{display:flex;}
  .hdr-nav{
    display:none;
    position:fixed;top:64px;left:0;right:0;
    background:#fff;border-top:1px solid #e4eaf2;
    box-shadow:0 8px 24px rgba(0,0,0,.14);
    flex-direction:column;align-items:flex-start;justify-content:flex-start;
    padding:8px 20px 24px;gap:0;z-index:199;
    max-height:calc(100vh - 64px);overflow-y:auto;
  }
  .hdr-nav.open{display:flex;}
  .hdr-nav a{padding:13px 0;border-bottom:1px solid #eef1f5;font-size:14px;width:100%;white-space:normal;}
  .hdr-tel{display:none;}
  .hdr-row{height:auto;padding:10px 0;gap:8px;}
  .c{padding:0 16px;}

  /* --- Hero --- */
  .hero-row{flex-direction:column!important;gap:24px!important;}
  .hero-h1{font-size:28px!important;}
  .hero-photo{width:100%!important;}
  .hero-photo img:first-child{height:240px!important;}
  .hero-photo img.badge-abs{width:80px!important;right:8px!important;bottom:-14px!important;}
  .btn-orange-lg{font-size:16px!important;padding:14px 18px!important;max-width:100%!important;}
  .btn-phone{max-width:100%!important;}

  /* --- Stats bar --- */
  .stats-row{flex-wrap:wrap!important;gap:14px!important;justify-content:center!important;}
  .stats-row .divider-v{display:none!important;}
  .stats-row .stat-item{flex:0 0 42%!important;}

  /* --- Category --- */
  .cat-row{gap:10px 4px!important;}
  .cat-item{min-width:58px;flex:0 0 17%!important;}

  /* --- Intro card --- */
  .intro-card{flex-direction:column!important;}
  .intro-left{width:100%!important;border-right:none!important;border-bottom:1px solid #d4e4f4!important;}
  .intro-steps-row{flex-wrap:wrap!important;justify-content:center!important;gap:14px!important;padding:16px!important;}
  .step-col{flex:0 0 44%!important;}
  .step-arrow{display:none!important;}

  /* --- Grids --- */
  .g4{grid-template-columns:repeat(2,1fr)!important;}
  .g4-stats{grid-template-columns:repeat(2,1fr)!important;}
  .g3{grid-template-columns:repeat(2,1fr)!important;}
  .g2{grid-template-columns:1fr!important;}

  /* --- Flex rows --- */
  .flex-r{flex-direction:column!important;gap:20px!important;}
  .flex-r .fixed-w{width:100%!important;min-width:0!important;}

  /* --- Section padding --- */
  section{padding-top:32px!important;padding-bottom:32px!important;}
  .page-hero{padding-top:24px!important;padding-bottom:24px!important;}
  .page-hero h1{font-size:24px!important;}

  /* --- Price section --- */
  .price-row{flex-direction:column!important;gap:14px!important;}
  .price-row .icon-col{display:flex;flex-direction:row;align-items:center;gap:10px;width:100%;}

  /* --- Str card (center on mobile) --- */
  .str-card{flex-direction:column!important;gap:12px!important;align-items:center!important;text-align:center!important;}
  .str-card img{height:52px!important;}
  .str-card h3,.str-card p{text-align:center!important;}

  /* --- Price/menu icon+content rows --- */
  [style*="display:flex;gap:28px;align-items:flex-start"]{
    align-items:center!important;
  }
  /* Price cards center on mobile */
  .price-card{text-align:center!important;}
  .price-card .title{text-align:center!important;}
  .price-card .amount{text-align:center!important;}
  /* Price section g3 cells center */
  section .g3>div[style*="background:#f4f8fd"]{
    align-items:center!important;text-align:center!important;
  }
  section .g3>div[style*="background:#f4f8fd"]>div[style*="display:flex;align-items:center"]{
    justify-content:center!important;
  }
  [style*="display:flex;gap:28px;align-items:flex-start"] > div[style*="flex:none;width:80px"]{
    width:100%!important;flex-direction:row!important;display:flex!important;align-items:center!important;gap:10px!important;
  }
  [style*="display:flex;gap:28px;align-items:flex-start"] > div[style*="flex:none;width:80px"] img{
    margin:0!important;
  }

  /* --- Step flow cards (icon + text horizontal -> vertical) --- */
  [style*="display:flex;gap:20px;align-items:center"]{
    flex-direction:column!important;gap:12px!important;align-items:flex-start!important;
  }

  /* --- Guarantee + voice cards --- */
  .guar-card{text-align:center!important;}

  /* --- ftr-badge and ftr-copy inline-style fallback --- */
  .ftr-badge{width:80px!important;height:80px!important;}
  .ftr-num span{font-size:22px!important;}
  .btn-ftr{font-size:14px!important;padding:13px 16px!important;}

  /* --- Footer --- */
  .ftr-cta{padding:28px 0!important;}
  .ftr-row{flex-direction:column!important;align-items:stretch!important;gap:16px!important;padding:0 16px!important;}
  .ftr-badge{align-self:center!important;}
  .ftr-ill{display:none!important;}
  .ftr-act{min-width:0!important;}

  /* --- Table --- */
  table{width:100%;}
  td:first-child{width:90px!important;font-size:12px!important;}

  /* --- Company two-col --- */
  .company-row{flex-direction:column!important;}
  .company-row .map-col{width:100%!important;}
}

@media(max-width:500px){
  .g4{grid-template-columns:1fr!important;}
  .g4-stats{grid-template-columns:repeat(2,1fr)!important;}
  .g3{grid-template-columns:1fr!important;}
  .step-col{flex:0 0 100%!important;}
  .cat-item{flex:0 0 28%!important;}
  .hero-h1{font-size:24px!important;}
  .case-card .thumb{height:130px!important;}
}

/* ===== STATS GRID ===== */
.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;}
.scard{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:12px;padding:20px 10px;text-align:center;transition:background .2s;}
.scard:hover{background:rgba(255,255,255,.18);}
.scard .snum{font-size:30px;font-weight:900;color:#fff;line-height:1.1;}
.scard .snum .u{font-size:13px;font-weight:700;}
.scard .sdiv{width:28px;height:2px;background:rgba(255,255,255,.3);margin:7px auto;}
.scard .slbl{font-size:10.5px;color:rgba(255,255,255,.82);line-height:1.5;}

/* ===== STAT SECTION MOBILE ===== */
@media(max-width:768px){
  .stats-grid{grid-template-columns:repeat(3,1fr);gap:7px;}
  .scard{padding:14px 6px;}
  .scard .snum{font-size:18px;}
  .scard .slbl{font-size:9px;}
  /* Header phone on mobile */
  .hdr-tel .lbl{display:none!important;}
  .hdr-tel .num span{font-size:13px!important;letter-spacing:0!important;}
  .hdr-tel .hrs{font-size:8px!important;}
  .btn-hdr{font-size:11px!important;padding:8px 10px!important;}
  /* Intro card steps */
  .intro-card{flex-direction:column!important;}
  .intro-left{width:100%!important;border-right:none!important;border-bottom:1px solid #d4e4f4!important;}
  .intro-steps-row{flex-wrap:wrap!important;gap:12px 0!important;padding:16px 10px!important;}
  .step-col{flex:0 0 50%!important;padding:0 6px!important;}
  .step-arrow{display:none!important;}
}

 (attribute selectors) ===== */
@media(max-width:860px){
  /* Grids */
  [style*="grid-template-columns:repeat(4"],[style*="grid-template-columns:repeat(3"]{
    grid-template-columns:repeat(2,1fr)!important;
  }
  [style*="grid-template-columns:repeat(2"]{
    grid-template-columns:1fr!important;
  }
  /* Flex rows that stack on mobile */
  [style*="display:flex;gap:48px;align-items:flex-start"],
  [style*="display:flex;gap:40px;align-items"],
  [style*="display:flex;gap:32px;align-items:flex-start"]{
    flex-direction:column!important;gap:20px!important;
  }
  [style*="display:flex;gap:28px;align-items:flex-start"]{
    flex-direction:column!important;gap:16px!important;
  }
  [style*="display:flex;gap:22px;align-items:flex-start"]{
    flex-direction:column!important;gap:12px!important;
  }
  /* Fixed widths -> full width */
  [style*="width:340px"]{width:100%!important;}
  [style*="width:500px"],[style*="width:480px"]{width:100%!important;}
  [style*="min-width:280px"]{min-width:0!important;}
  /* Section padding */
  [style*="padding:52px 0"]{padding:32px 0!important;}
  [style*="padding:48px 0"]{padding:32px 0!important;}
  [style*="padding:44px 0"]{padding:28px 0!important;}
  /* Staff cards */
  [style*="grid-template-columns:repeat(4,1fr);gap:24px"]{
    grid-template-columns:repeat(2,1fr)!important;
  }
  /* Price/menu rows */
  [style*="display:flex;gap:28px;align-items:flex-start"]>div[style*="flex:none;width:80px"]{
    width:auto!important;
  }
  /* Company row */
  [style*="display:flex;gap:48px;align-items:flex-start"]{
    flex-direction:column!important;
  }
  /* Intro card */
  [style*="width:256px;background:#edf3fa"]{
    width:100%!important;border-right:none!important;border-bottom:1px solid #d4e4f4!important;
  }
}
@media(max-width:500px){
  [style*="grid-template-columns:repeat("]{
    grid-template-columns:1fr!important;
  }
  [style*="font-size:44px"]{ font-size:26px!important; }
  [style*="font-size:34px"]{ font-size:22px!important; }
}

/* ===== NAV HOME LINK (mobile-only) ===== */
.nav-home-link{display:none!important;}
@media(max-width:768px){
  .nav-home-link{display:flex!important;align-items:center;gap:8px;font-weight:700;color:#1460a8!important;border-bottom:1px solid #f0f3f7;padding-bottom:12px!important;margin-bottom:4px;}
}
