/* =========================================================
   v1.10.16 — Mobile hamburger submenu accordion
   Desktop mega menu remains fully expanded and unchanged.
   ========================================================= */
.mega-mobile-toggle{
  appearance:none;
  -webkit-appearance:none;
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  text-align:left;
  font:inherit;
}
.mega-mobile-toggle strong{font:inherit;font-weight:600;color:inherit}
.mega-mobile-toggle>i,.mega-child-toggle{display:none}
.mega-mobile-section--spaced{margin-top:38px}
.mega-hierarchy__parent-row{display:block}


@media (max-width:860px){
  .mega-menu__body,.mega-menu__body--canonical{padding-top:18px!important}
  .mega-column{margin-bottom:0!important;border-bottom:1px solid #d7d4cc}
  .mega-column:last-child{border-bottom:0}
  .mega-mobile-section,.mega-mobile-section--spaced{margin:0!important;border-bottom:1px solid #d7d4cc}
  .mega-column>.mega-mobile-section:last-child{border-bottom:0}

  .mega-mobile-toggle.mega-column__title{
    position:relative;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 34px;
    grid-template-areas:"en icon" "ja icon";
    gap:3px 12px;
    align-items:center;
    width:100%;
    margin:0!important;
    padding:18px 2px 17px!important;
    cursor:pointer!important;
    pointer-events:auto!important;
  }
  .mega-mobile-toggle.mega-column__title>span{grid-area:en;display:block;margin:0!important;font-family:Georgia,serif;font-style:italic;font-weight:400;font-size:12px!important;line-height:1.2;color:#7b7c75}
  .mega-mobile-toggle.mega-column__title>strong{grid-area:ja;display:block;min-width:0;font-size:14px;line-height:1.45;letter-spacing:.02em;white-space:normal;overflow-wrap:anywhere}
  .mega-mobile-toggle.mega-column__title>i{grid-area:icon;display:block!important;position:relative;justify-self:end;width:32px;height:32px;border:1px solid #c7c9c3;border-radius:50%}
  .mega-mobile-toggle.mega-column__title>i::before,.mega-mobile-toggle.mega-column__title>i::after,.mega-child-toggle i::before,.mega-child-toggle i::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:1px;background:#34433b;transform:translate(-50%,-50%);transition:transform .22s ease,opacity .22s ease}
  .mega-mobile-toggle.mega-column__title>i::after,.mega-child-toggle i::after{transform:translate(-50%,-50%) rotate(90deg)}
  .mega-mobile-toggle[aria-expanded="true"]>i::after,.mega-child-toggle[aria-expanded="true"] i::after{opacity:0;transform:translate(-50%,-50%) rotate(0)}

  /* Closed by default. Only the clicked group is opened. */
  .mega-mobile-panel{display:none!important;opacity:1!important;transform:none!important;animation:none!important}
  .mega-mobile-panel.is-open{display:block!important}
  .mega-mobile-section>.mega-mobile-panel.is-open{padding:0 0 20px}

  .mega-hierarchy--services{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
  .mega-hierarchy__group{border-top:1px solid #d9d7d0}
  .mega-hierarchy__group:last-child{border-bottom:1px solid #d9d7d0}
  .mega-hierarchy__parent-row{display:grid!important;grid-template-columns:minmax(0,1fr) 50px;align-items:stretch;background:rgba(255,255,255,.24)}
  .mega-hierarchy__parent-row .mega-hierarchy__parent{min-width:0;border-bottom:0!important}
  .mega-child-toggle{appearance:none;-webkit-appearance:none;display:block!important;position:relative;min-width:50px;border:0;border-left:1px solid #d1cec6;background:transparent;cursor:pointer}
  .mega-child-toggle i{position:absolute;inset:0;display:block}
  .mega-hierarchy__children.mega-mobile-panel{display:none!important;background:rgba(255,255,255,.5);border-top:1px solid #dedbd4}
  .mega-hierarchy__children.mega-mobile-panel.is-open{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mega-child-link{min-width:0;min-height:50px!important;padding:12px 16px 12px 28px!important;border-right:0!important;border-bottom:1px solid #e1dfd8!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .mega-child-link:last-child{border-bottom:0!important}

  .mega-problem-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mega-text-link,.mega-problem-link{min-width:0;min-height:50px;display:flex;align-items:center;white-space:normal!important;overflow-wrap:anywhere!important}
  .mega-arrow-link{margin-top:16px!important}
}

@media (max-width:560px){
  .mega-problem-grid,.mega-hierarchy__children.mega-mobile-panel.is-open{grid-template-columns:1fr!important}
}

@media (min-width:861px){
  .mega-mobile-panel{display:block!important}
  .mega-mobile-toggle{pointer-events:none}
}
