/* Contact form with inherited original site header/footer and page heading */
.contact-refresh {max-width:630px;margin:22px 0;}
.contact-row{display:grid;grid-template-columns:165px minmax(0,1fr);border-bottom:1px solid #dedede;padding:13px 0;gap:18px;align-items:start;}
.contact-row>label{font-weight:bold;padding-top:8px;}
.contact-row input,.contact-row textarea{box-sizing:border-box;max-width:100%;width:100%;border:1px solid #c7c7c7;border-radius:3px;padding:10px;font:inherit;background:#fff;}
.contact-row input:focus,.contact-row textarea:focus{outline:2px solid #686868;outline-offset:1px;}
.contact-refresh em,.contact-consent em{font-style:normal;font-size:11px;background:#ad3744;color:white;padding:2px 5px;margin-left:5px;}
.contact-consent{margin:22px 0;}.contact-consent label{display:flex;align-items:flex-start;gap:10px;line-height:1.8;}.contact-consent input{margin-top:6px;flex-shrink:0;}
.contact-form-actions{display:flex;justify-content:center;align-items:center;gap:16px;margin:25px 0;flex-wrap:wrap;}
.contact-form-actions button,.contact-back{appearance:none;border:0;border-radius:3px;padding:13px 28px;background:#474747;color:#fff!important;font:inherit;cursor:pointer;text-decoration:none!important;}
.contact-back{background:#777;}.contact-form-actions button:hover,.contact-back:hover{opacity:.85;}
.contact-trap{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(100%);white-space:nowrap;}
.contact-errors{background:#fff5f5;color:#a12c37;border:1px solid #e3b9c0;padding:12px 16px;}
.contact-confirm-list{display:grid;grid-template-columns:165px minmax(0,1fr);margin:20px 0;word-break:break-word;}.contact-confirm-list dt,.contact-confirm-list dd{padding:12px;border-bottom:1px solid #ddd;margin:0;}.contact-confirm-list dt{font-weight:bold;background:#f7f7f7;}
@media(max-width:640px){.contact-row{display:block;}.contact-row>label{display:block;margin:0 0 6px;}.contact-confirm-list{grid-template-columns:110px minmax(0,1fr);}}

/* Center form and confirmation details within available content column */
#container #contactPage01 .contentsBox {box-sizing:border-box;max-width:100%;}
#container #contactPage01 .contentsBox > p {max-width:760px;margin-left:auto;margin-right:auto;}
#container #contactPage01 .contact-refresh {box-sizing:border-box;width:100%;max-width:760px;margin:28px auto 36px;}
#container #contactPage01 .contact-confirm-list {box-sizing:border-box;max-width:760px;margin:25px auto;}
#container #contactPage01 .contact-consent {width:100%;margin:24px auto;}
#container #contactPage01 .contact-form-actions {max-width:760px;margin:28px auto;}
#container #contactPage01 .contact-row {grid-template-columns:175px minmax(0,1fr);gap:20px;}
#container #contactPage01 .contact-row>div {min-width:0;}
#container #contactPage01 .contact-row input,
#container #contactPage01 .contact-row textarea {width:100%;max-width:100%;border-color:#aaa;}
#container #contactPage01 .contact-row input:focus,
#container #contactPage01 .contact-row textarea:focus {outline:2px solid #b08b49;outline-offset:1px;}
#container #contactPage01 .contact-form-actions button {background:#292929!important;color:#fff!important;}
#container #contactPage01 .contact-form-actions button:hover,
#container #contactPage01 .contact-form-actions button:focus-visible {background:#a12c36!important;color:#fff!important;opacity:1;}
#container #contactPage01 .contact-back{background:#666!important;color:#fff!important;}
#container #contactPage01 .contact-back:hover{background:#444!important;opacity:1;}
@media(max-width:767px){
 #container #contactPage01 .contact-refresh,#container #contactPage01 .contact-confirm-list{width:100%;max-width:100%;}
 #container #contactPage01 .contact-row{display:block;}
 #container #contactPage01 .contact-row>label{display:block;margin:0 0 8px;padding-top:0;}
 #container #contactPage01 .contact-confirm-list{grid-template-columns:minmax(100px,35%) minmax(0,1fr);}
 #container #contactPage01 .contact-form-actions button,#container #contactPage01 .contact-back{max-width:100%;}
}

/* Consent checkbox and its caption share the same vertical centerline. */
#container #contactPage01 .contact-consent label {display:flex;align-items:center;gap:10px;line-height:1.6;cursor:pointer;}
#container #contactPage01 .contact-consent input[type="checkbox"] {appearance:auto;position:static;display:block;flex:0 0 18px;width:18px;height:18px;min-width:18px;min-height:18px;margin:0;vertical-align:middle;accent-color:#a12c36;}
#container #contactPage01 .contact-consent label > span {display:block;min-width:0;line-height:1.6;}
#container #contactPage01 .contact-consent label em {display:inline-block;vertical-align:middle;}

/* Center the consent checkbox and the full text as one group. */
#container #contactPage01 .contact-consent {
  display:flex;
  justify-content:center;
  box-sizing:border-box;
}
#container #contactPage01 .contact-consent label {
  display:inline-flex;
  width:auto;
  max-width:100%;
  margin:0 auto;
  justify-content:center;
  align-items:center;
  gap:10px;
}
#container #contactPage01 .contact-consent label > span {
  flex:0 1 auto;
  text-align:left;
}

/* Contact pages: unified content-width rounded panel, full perimeter border. */
#container #contactPage01 .contentsBox{box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:20px 0 30px!important;padding:clamp(18px,3vw,32px)!important;border:1px solid #dedede!important;border-radius:12px!important;background:#fff!important;}
#container #contactPage01 .contentsBox>p,#container #contactPage01 .contact-refresh,#container #contactPage01 .contact-confirm-list,#container #contactPage01 .contact-form-actions{box-sizing:border-box!important;width:100%!important;max-width:none!important;}
#container #contactPage01 .contact-refresh{margin:22px 0 10px!important;}
#container #contactPage01 .contact-confirm-list{margin:20px 0!important;}
@media(max-width:767px){#container #contactPage01 .contentsBox{margin:14px 0 20px!important;padding:16px!important;border-radius:10px!important;}#container #contactPage01 .contact-row{grid-template-columns:minmax(0,1fr)!important;}}
