/* Contact-page-only layout. Site navigation, header and footer keep their existing styles. */
/* SWELL applies body classes to #body_wrap and opens #content in its header. */
#body_wrap.gm-contact-page > #content {display:block;width:100%;max-width:none;margin:0;padding:0;}
#body_wrap.gm-contact-page > #breadcrumb {display:none;}
#gm-contact-page {
  --blue:#2453cc;--ink:#141b24;--paper:#fff;--mist:#f4f6f9;--line:#dce2eb;--muted:#657184;
  --body:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic','Noto Sans JP',sans-serif;
  --display:'Noto Sans JP',sans-serif;--utility:'Barlow Condensed',sans-serif;
  container:gm-contact / inline-size;position:relative;width:100%;min-width:0;margin:0;padding:0;
  background:var(--paper);color:var(--ink);font:14px/1.8 var(--body);letter-spacing:normal;
  -webkit-font-smoothing:antialiased;color-scheme:light;
}
#gm-contact-page,#gm-contact-page *,#gm-contact-page *::before,#gm-contact-page *::after {box-sizing:border-box;}
#gm-contact-page :is(h1,h2,h3,p,ol,ul,dl,dd,figure) {margin:0;padding:0;}
#gm-contact-page :is(h1,h2,h3) {border:0;border-radius:0;background:none;color:inherit;box-shadow:none;text-align:left;}
#gm-contact-page :is(h1,h2,h3)::before,#gm-contact-page :is(h1,h2,h3)::after {display:none;}
#gm-contact-page :is(button,input,select,textarea) {font:inherit;letter-spacing:normal;}
#gm-contact-page :is(button,a,input,select,textarea,summary) {touch-action:manipulation;outline-offset:4px;}
#gm-contact-page :focus-visible {outline:3px solid var(--blue);}
#gm-contact-page a {color:inherit;text-decoration:none;background:none;box-shadow:none;}
#gm-contact-page button {cursor:pointer;}
#gm-contact-page [hidden] {display:none!important;}
#gm-contact-page ::selection {background:#dce5ff;}
#gm-contact-page .contact-container {max-width:1112px;width:calc(100% - 64px);margin:0 auto;padding:0 0 66px;}
#gm-contact-page .contact-skip {position:absolute;z-index:5;top:10px;left:16px;padding:10px 15px;background:var(--paper);color:var(--blue);transform:translateX(-200%);}
#gm-contact-page .contact-skip:focus {transform:none;}
#gm-contact-page .breadcrumb {display:flex;gap:12px;font-size:10px;color:var(--muted);padding:22px 0 0;}
#gm-contact-page .breadcrumb a:hover {color:var(--blue);}
#gm-contact-page .intro {display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;padding:30px 0 38px;border-bottom:1px solid var(--line);}
#gm-contact-page .eyebrow {display:block;color:var(--blue);font:600 13px/1.2 var(--utility);letter-spacing:.14em;}
#gm-contact-page .intro h1 {font-family:var(--display);font-size:40px;line-height:1.5;font-weight:900;letter-spacing:-.05em;margin-top:10px;}
#gm-contact-page .intro-copy {font-size:14px;line-height:2;}
#gm-contact-page .intro-sub {color:var(--muted);margin-top:13px;font-size:12px;}
#gm-contact-page .contact-layout {display:grid;grid-template-columns:302px minmax(0,1fr);gap:70px;align-items:start;margin-top:40px;}
#gm-contact-page .contact-guide {padding:19px 0 0;min-width:0;}
#gm-contact-page .guide-heading h2 {font-family:var(--display);font-size:32px;line-height:1.5;font-weight:900;letter-spacing:-.04em;margin-top:10px;}
#gm-contact-page .guide-lead {margin-top:17px;line-height:1.95;color:var(--muted);font-size:12px;}
#gm-contact-page .consultation-list {list-style:none;padding:0;margin-top:27px;}
#gm-contact-page .consultation-list li {display:flex;align-items:center;gap:17px;padding:18px 0;border-top:1px solid var(--line);}
#gm-contact-page .consultation-list li:last-child {border-bottom:1px solid var(--line);}
#gm-contact-page .guide-icon {width:32px;height:32px;flex:none;color:var(--blue);}
#gm-contact-page .consultation-list h3 {font-size:14px;line-height:1.6;font-weight:700;}
#gm-contact-page .consultation-list p {font-size:11px;line-height:1.7;margin-top:4px;color:var(--muted);}
#gm-contact-page .guide-footnote {font-size:11px;color:var(--muted);line-height:1.9;margin-top:19px;}
#gm-contact-page .media-link {display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;margin-top:21px;padding:11px 0;width:180px;border-bottom:1px solid var(--ink);}
#gm-contact-page .media-link:hover {color:var(--blue);border-color:var(--blue);}
#gm-contact-page .media-link span {font-size:16px;}
#gm-contact-page .letter-art {margin-top:28px;background:var(--mist);padding:11px 10px 19px;text-align:center;border-radius:3px;}
#gm-contact-page .letter-art svg {width:100%;height:auto;display:block;}
#gm-contact-page .letter-art span {color:var(--muted);font:600 10px/1.2 var(--utility);letter-spacing:.18em;}
#gm-contact-page .form-panel {border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:3px;padding:24px 30px 26px;min-width:0;scroll-margin-top:90px;}
#gm-contact-page .wpcf7,#gm-contact-page .wpcf7-form,#gm-contact-page .gm-contact {min-width:0;margin:0;padding:0;}
#gm-contact-page .wpcf7-form-control-wrap {display:block;min-width:0;}
#gm-contact-page .wpcf7-list-item {margin:0;}
#gm-contact-page .form-progress {display:flex;justify-content:flex-end;gap:37px;list-style:none;padding:0;margin-bottom:20px;color:var(--muted);font-size:10px;line-height:1.5;font-weight:600;}
#gm-contact-page .form-progress li {position:relative;}
#gm-contact-page .form-progress li+li::before {position:absolute;left:-24px;content:'→';color:#a8b2c1;font-size:11px;}
#gm-contact-page .form-progress li[aria-current] {color:var(--blue);}
#gm-contact-page .form-progress li[aria-current]::after {content:'';display:block;position:absolute;bottom:-5px;left:0;width:100%;height:2px;background:var(--blue);}
#gm-contact-page .form-heading {font-size:22px;line-height:1.6;font-weight:800;letter-spacing:-.025em;}
#gm-contact-page .form-description {font-size:11px;line-height:1.85;color:var(--muted);margin-top:5px;margin-bottom:22px;}
#gm-contact-page fieldset {border:0;padding:0;margin:0;min-width:0;}
#gm-contact-page legend,#gm-contact-page .field>label {font-size:13px;line-height:1.6;font-weight:700;margin:0 0 8px;display:block;}
#gm-contact-page legend {padding:0;float:none;}
#gm-contact-page .required-label,#gm-contact-page .optional-label {display:inline-block;vertical-align:middle;margin-left:7px;padding:1px 5px;font-size:9px;line-height:1.5;font-weight:600;letter-spacing:0;}
#gm-contact-page .required-label {background:#edf2ff;color:var(--blue);border-radius:2px;}
#gm-contact-page .optional-label {color:var(--muted);background:var(--mist);border-radius:2px;}
#gm-contact-page .type-options {display:grid;grid-template-columns:1fr;gap:10px;}
#gm-contact-page .type-option {position:relative;display:block;cursor:pointer;}
#gm-contact-page .type-option input {position:absolute;width:1px;height:1px;margin:0;opacity:0;}
#gm-contact-page .type-content {position:relative;display:flex;align-items:center;gap:10px;min-height:64px;padding:15px 34px 15px 15px;border:1px solid var(--line);border-radius:3px;transition:background .15s,border-color .15s;color:var(--muted);}
#gm-contact-page .type-content svg {width:22px;height:22px;flex:none;}
#gm-contact-page .type-content strong {font-size:13px;line-height:1.65;font-weight:700;white-space:nowrap;}
#gm-contact-page .selection-dot {width:13px;height:13px;border:1px solid #acb7c8;border-radius:50%;position:absolute;right:13px;top:50%;transform:translateY(-50%);}
#gm-contact-page .type-option input:checked+.type-content {background:#f4f7ff;border-color:var(--blue);color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);}
#gm-contact-page .type-option input:checked+.type-content .selection-dot {border-color:var(--blue);background:var(--blue);}
#gm-contact-page .type-option input:checked+.type-content .selection-dot::after {content:'';position:absolute;width:5px;height:5px;border-radius:50%;background:white;left:3px;top:3px;}
#gm-contact-page .type-option input:focus-visible+.type-content {outline:3px solid var(--blue);outline-offset:4px;}
#gm-contact-page .type-option:hover .type-content {border-color:var(--blue);}
/* CF7's native radio markup uses a label span rather than .type-content. */
#gm-contact-page .type-options .wpcf7-radio {display:grid;grid-template-columns:1fr;gap:10px;}
#gm-contact-page .type-options .wpcf7-list-item {display:block;margin:0;min-width:0;}
#gm-contact-page .type-options .wpcf7-list-item>label {position:relative;display:block;cursor:pointer;}
#gm-contact-page .type-options .wpcf7-list-item input[type=radio] {position:absolute;width:1px;height:1px;margin:0;opacity:0;}
#gm-contact-page .type-options .wpcf7-list-item-label {position:relative;display:flex;align-items:center;min-height:64px;padding:15px 38px 15px 48px;border:1px solid var(--line);border-radius:3px;color:var(--muted);font-size:13px;line-height:1.65;font-weight:700;transition:background .15s,border-color .15s;}
#gm-contact-page .type-options .wpcf7-list-item-label::before {content:'';position:absolute;left:15px;top:50%;transform:translateY(-50%);width:22px;height:22px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2zM7 8h10M7 12h6'/%3E%3C/svg%3E") center / contain no-repeat;}
#gm-contact-page .type-options .wpcf7-list-item:last-child .wpcf7-list-item-label::before {mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='7' width='18' height='14' rx='2'/%3E%3Cpath d='M8 7V4h8v3M3 12l9 3 9-3M12 13v4'/%3E%3C/svg%3E");}
#gm-contact-page .type-options .wpcf7-list-item-label::after {content:'';position:absolute;right:13px;top:50%;transform:translateY(-50%);width:13px;height:13px;border:1px solid #acb7c8;border-radius:50%;}
#gm-contact-page .type-options input:checked+.wpcf7-list-item-label {background:#f4f7ff;border-color:var(--blue);color:var(--blue);box-shadow:inset 0 0 0 1px var(--blue);}
#gm-contact-page .type-options input:checked+.wpcf7-list-item-label::after {border-color:var(--blue);background:radial-gradient(circle,white 0 2px,var(--blue) 2.5px);}
#gm-contact-page .type-options input:focus-visible+.wpcf7-list-item-label {outline:3px solid var(--blue);outline-offset:4px;}
#gm-contact-page .type-options .wpcf7-list-item>label:hover .wpcf7-list-item-label {border-color:var(--blue);}
#gm-contact-page .type-hint {font-size:10px;line-height:1.8;color:var(--muted);margin-top:9px;min-height:18px;}
#gm-contact-page .field-row {display:grid;grid-template-columns:1fr 1fr;gap:18px;}
#gm-contact-page .field-row,#gm-contact-page .message-field {margin-top:20px;}
#gm-contact-page .field {min-width:0;}
#gm-contact-page .field :is(input,select,textarea) {display:block;width:100%;height:auto;max-width:100%;margin:0;border:1px solid #cbd3df;border-radius:3px;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:13px;font-weight:400;line-height:1.7;letter-spacing:normal;padding:12px 13px;min-height:46px;box-shadow:none;text-align:left;transition:border-color .15s;}
#gm-contact-page .field select {padding-right:24px;}
#gm-contact-page .field textarea {min-height:146px;resize:vertical;line-height:1.85;}
#gm-contact-page .field input::placeholder,#gm-contact-page .field textarea::placeholder {color:#808b9b;opacity:1;font-size:12px;}
#gm-contact-page .field input:focus,#gm-contact-page .field select:focus,#gm-contact-page .field textarea:focus {border-color:var(--blue);outline:2px solid #2453cc33;outline-offset:1px;}
#gm-contact-page .field-help {display:block;font-size:10px;line-height:1.9;color:var(--muted);margin-top:7px;}
#gm-contact-page .optional-details {margin-top:17px;border:1px solid var(--line);border-radius:3px;}
#gm-contact-page .optional-details summary {display:flex;justify-content:space-between;align-items:center;list-style:none;padding:12px 14px;cursor:pointer;font-size:11px;font-weight:600;min-height:47px;}
#gm-contact-page summary::-webkit-details-marker {display:none;}
#gm-contact-page .optional-details summary:hover {background:var(--mist);}
#gm-contact-page .detail-plus {font-size:18px;line-height:1;color:var(--muted);font-weight:400;}
#gm-contact-page .optional-details[open] .detail-plus {font-size:0;}
#gm-contact-page .optional-details[open] .detail-plus::after {content:'−';font-size:18px;}
#gm-contact-page .details-content {padding:5px 15px 18px;}
#gm-contact-page .details-content>.field-row {margin-top:16px;gap:14px;}
#gm-contact-page .details-content label {font-size:11px;}
#gm-contact-page .details-content .field input {font-size:12px;}
#gm-contact-page .details-content .field input::placeholder {font-size:11px;}
#gm-contact-page .privacy-field {margin-top:23px;}
#gm-contact-page .privacy-check,#gm-contact-page .privacy-field .wpcf7-list-item>label {display:flex;align-items:center;gap:9px;cursor:pointer;min-height:40px;font-size:12px;line-height:1.9;}
#gm-contact-page .privacy-check input,#gm-contact-page .privacy-field input[type=checkbox] {appearance:auto;width:16px;height:16px;margin:2px 0 0;flex:none;accent-color:var(--blue);}
#gm-contact-page .privacy-field .wpcf7-list-item-label {flex:1;min-width:0;}
#gm-contact-page .privacy-check a,#gm-contact-page .privacy-field a {color:var(--blue);text-decoration:underline;text-underline-offset:3px;}
#gm-contact-page .primary-button {display:flex;justify-content:center;align-items:center;gap:18px;width:100%;min-height:55px;margin:20px 0 0;padding:13px 24px;border:1px solid var(--blue);border-radius:3px;background:var(--blue);color:white;box-shadow:none;font-size:14px;line-height:1.6;font-weight:700;text-align:center;transition:background .15s,box-shadow .15s;}
#gm-contact-page .primary-button:hover {background:#1b42a8;box-shadow:0 3px 8px #2453cc24;}
#gm-contact-page .primary-button svg {width:20px;height:20px;}
#gm-contact-page .primary-button:disabled,#gm-contact-page .primary-button[aria-disabled=true] {cursor:not-allowed;opacity:.7;box-shadow:none;}
#gm-contact-page .form-panel[aria-busy=true] .primary-button:disabled {cursor:wait;}
#gm-contact-page .reply-note {font-size:10px;color:var(--muted);text-align:center;margin-top:10px;line-height:1.7;}
#gm-contact-page .error-summary {font-size:12px;line-height:1.9;padding:12px 14px;margin-bottom:20px;border-left:3px solid #b22438;background:#fff4f5;color:#9b1c2e;}
#gm-contact-page .field-error,#gm-contact-page .wpcf7-not-valid-tip {display:block;font-size:11px;line-height:1.8;color:#b22438;margin-top:6px;}
#gm-contact-page .field [aria-invalid=true] {border-color:#b22438;background:#fffafa;}
#gm-contact-page .wpcf7 .wpcf7-response-output {margin:20px 0 0;padding:12px 14px;border:1px solid var(--line);border-left:3px solid var(--blue);background:var(--mist);color:var(--ink);font-size:12px;line-height:1.9;}
#gm-contact-page .wpcf7 form:is(.failed,.aborted,.spam,.invalid,.unaccepted) .wpcf7-response-output {border-left-color:#b22438;background:#fff4f5;color:#9b1c2e;}
#gm-contact-page .wpcf7-spinner {vertical-align:middle;}
#gm-contact-page.gm-contact-enhanced .wpcf7-spinner {display:none;}
#gm-contact-page .review-list {margin:24px 0 0;}
#gm-contact-page .review-list>div {padding:16px 0;border-top:1px solid var(--line);}
#gm-contact-page .review-list>div:last-child {border-bottom:1px solid var(--line);}
#gm-contact-page .review-list dt {font-size:10px;font-weight:600;color:var(--muted);margin-bottom:5px;}
#gm-contact-page .review-list dd {font-size:13px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;}
#gm-contact-page .consent-note {font-size:10px;color:var(--muted);margin-top:20px;}
#gm-contact-page .back-button {display:block;width:100%;font-size:12px;font-weight:600;min-height:44px;margin-top:12px;padding:8px 12px;border:0;border-radius:0;background:transparent;color:var(--muted);box-shadow:none;}
#gm-contact-page .back-button:hover {color:var(--blue);}
#gm-contact-page .complete-view {text-align:center;padding:31px 0 20px;}
#gm-contact-page .complete-mark {width:64px;height:64px;margin:0 auto 24px;border-radius:50%;background:#edf2ff;color:var(--blue);display:grid;place-items:center;font-size:32px;line-height:1;font-weight:700;}
#gm-contact-page .complete-mark svg {height:32px;width:32px;}
#gm-contact-page .complete-view h2 {font-size:27px;font-family:var(--display);line-height:1.7;font-weight:800;margin-top:13px;letter-spacing:-.04em;text-align:center;}
#gm-contact-page .complete-view p {font-size:12px;color:var(--muted);line-height:2;margin-top:20px;}
#gm-contact-page .contact-faq {display:grid;grid-template-columns:302px minmax(0,1fr);gap:70px;margin-top:54px;padding-top:35px;border-top:1px solid var(--line);}
#gm-contact-page .faq-title h2 {font-size:19px;font-weight:800;margin-top:8px;line-height:1.6;}
#gm-contact-page .faq-lead {font-size:12px;line-height:2;color:var(--muted);margin-top:14px;}
#gm-contact-page .faq-items details {border-bottom:1px solid var(--line);}
#gm-contact-page .faq-items details:first-child {border-top:1px solid var(--line);}
#gm-contact-page .faq-items summary {display:flex;justify-content:space-between;align-items:center;gap:18px;list-style:none;cursor:pointer;font-size:12px;font-weight:600;line-height:1.8;padding:18px 0;}
#gm-contact-page .faq-items summary span {font-size:18px;color:var(--muted);font-weight:400;flex:none;}
#gm-contact-page .faq-items p {font-size:12px;line-height:2;color:var(--muted);padding:0 25px 18px 0;}
#gm-contact-page .faq-items details[open] summary span {font-size:0;}
#gm-contact-page .faq-items details[open] summary span::after {content:'−';font-size:18px;}
@container gm-contact (max-width:1200px) {
  #gm-contact-page .contact-container {max-width:calc(100% - 80px);width:auto;}
  #gm-contact-page .contact-layout,#gm-contact-page .contact-faq {gap:45px;grid-template-columns:275px minmax(0,1fr);}
  #gm-contact-page .form-panel {padding-left:25px;padding-right:25px;}
  #gm-contact-page .type-content {gap:8px;padding-left:12px;}
  #gm-contact-page .type-content svg {width:20px;height:20px;}
}
@container gm-contact (max-width:960px) {
  #gm-contact-page .contact-container {max-width:calc(100% - 64px);}
  #gm-contact-page .intro {gap:30px;}
  #gm-contact-page .intro h1 {font-size:34px;}
  #gm-contact-page .intro-copy {font-size:12px;}
  #gm-contact-page .contact-layout,#gm-contact-page .contact-faq {grid-template-columns:225px minmax(0,1fr);gap:28px;}
  #gm-contact-page .guide-heading h2 {font-size:28px;}
  #gm-contact-page .consultation-list li {gap:12px;}
  #gm-contact-page .consultation-list h3 {font-size:12px;}
  #gm-contact-page .consultation-list p {font-size:10px;}
  #gm-contact-page .form-panel {padding-left:22px;padding-right:22px;}
  #gm-contact-page .type-content,#gm-contact-page .type-options .wpcf7-list-item-label {min-height:48px;padding-top:10px;padding-bottom:10px;}
  #gm-contact-page .type-content {gap:12px;}
  #gm-contact-page .field-row {gap:12px;}
  #gm-contact-page .form-heading {font-size:20px;}
}
@container gm-contact (max-width:700px) {
  #gm-contact-page .contact-container {max-width:calc(100% - 40px);padding-bottom:37px;}
  #gm-contact-page .breadcrumb {padding-top:17px;font-size:9px;}
  #gm-contact-page .intro {grid-template-columns:1fr;gap:15px;padding:25px 0 28px;}
  #gm-contact-page .eyebrow {font-size:11px;}
  #gm-contact-page .intro h1 {font-size:29px;line-height:1.55;margin-top:9px;}
  #gm-contact-page .intro-copy {font-size:12px;line-height:1.9;}
  #gm-contact-page .intro-sub {font-size:11px;margin-top:9px;}
  #gm-contact-page .desktop-break {display:none;}
  #gm-contact-page .contact-layout {display:flex;flex-direction:column;gap:27px;margin-top:26px;}
  #gm-contact-page .contact-guide {width:100%;padding-top:0;}
  #gm-contact-page .guide-heading,#gm-contact-page .guide-lead,#gm-contact-page .guide-footnote,#gm-contact-page .media-link,#gm-contact-page .letter-art {display:none;}
  #gm-contact-page .consultation-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;background:var(--mist);border-radius:3px;padding:4px 12px;}
  #gm-contact-page .consultation-list li {flex-direction:row;justify-content:center;gap:9px;border:0;padding:13px 5px;text-align:left;}
  #gm-contact-page .consultation-list li:nth-child(even) {border-left:1px solid var(--line);}
  #gm-contact-page .consultation-list li:nth-child(n+3) {border-top:1px solid var(--line);}
  #gm-contact-page .consultation-list li:last-child {border-bottom:0;}
  #gm-contact-page .guide-icon {width:23px;height:23px;}
  #gm-contact-page .consultation-list h3 {font-size:10px;line-height:1.7;white-space:nowrap;}
  #gm-contact-page .consultation-list p {display:none;}
  #gm-contact-page .form-panel {width:100%;padding:19px 18px 22px;border-top-width:3px;}
  #gm-contact-page .form-progress {margin-bottom:21px;gap:35px;}
  #gm-contact-page .form-heading {font-size:19px;line-height:1.65;}
  #gm-contact-page .form-description {font-size:10px;margin-top:7px;margin-bottom:21px;}
  #gm-contact-page .type-options,#gm-contact-page .type-options .wpcf7-radio {gap:8px;}
  #gm-contact-page .type-content,#gm-contact-page .type-options .wpcf7-list-item-label {min-height:52px;padding-top:12px;padding-bottom:12px;}
  #gm-contact-page .type-content {padding-left:15px;gap:12px;}
  #gm-contact-page .type-content strong {font-size:13px;}
  #gm-contact-page .type-content svg {height:21px;width:21px;}
  #gm-contact-page .type-hint {font-size:11px;line-height:1.9;margin-top:10px;}
  #gm-contact-page .field-row {grid-template-columns:1fr;gap:19px;margin-top:21px;}
  #gm-contact-page .field>label,#gm-contact-page legend {font-size:13px;}
  #gm-contact-page .field :is(input,select,textarea) {font-size:16px;padding:11px 12px;min-height:48px;}
  #gm-contact-page .field input::placeholder,#gm-contact-page .field textarea::placeholder {font-size:13px;}
  #gm-contact-page .field textarea {min-height:166px;}
  #gm-contact-page .message-field {margin-top:21px;}
  #gm-contact-page .field-help {font-size:11px;}
  #gm-contact-page .optional-details summary {font-size:12px;padding:12px;}
  #gm-contact-page .details-content {padding-left:12px;padding-right:12px;}
  #gm-contact-page .details-content .field input {font-size:16px;}
  #gm-contact-page .details-content .field-row {gap:16px;}
  #gm-contact-page .privacy-check,#gm-contact-page .privacy-field .wpcf7-list-item>label {font-size:11px;gap:8px;}
  #gm-contact-page .primary-button {font-size:14px;min-height:54px;padding-left:10px;padding-right:10px;}
  #gm-contact-page .reply-note {font-size:10px;margin-top:11px;}
  #gm-contact-page .privacy-field {margin-top:22px;}
  #gm-contact-page .contact-faq {grid-template-columns:1fr;gap:19px;margin-top:32px;padding-top:28px;}
  #gm-contact-page .faq-title h2 {font-size:18px;margin-top:6px;}
  #gm-contact-page .faq-lead {font-size:11px;margin-top:10px;}
  #gm-contact-page .faq-items summary {font-size:11px;padding:16px 0;gap:12px;}
  #gm-contact-page .faq-items p {font-size:11px;padding-right:12px;}
  #gm-contact-page .complete-view {padding-top:20px;}
  #gm-contact-page .complete-view h2 {font-size:23px;}
  #gm-contact-page .complete-view p {font-size:11px;}
  #gm-contact-page .review-list dd {font-size:12px;}
}
@container gm-contact (max-width:350px) {
  #gm-contact-page .contact-container {max-width:calc(100% - 28px);}
  #gm-contact-page .intro h1 {font-size:26px;}
  #gm-contact-page .form-panel {padding-left:14px;padding-right:14px;}
  #gm-contact-page .form-heading {font-size:17px;}
  #gm-contact-page .consultation-list h3 {font-size:9px;}
  #gm-contact-page .required-label,#gm-contact-page .optional-label {margin-left:5px;}
}
@media(prefers-reduced-motion:reduce) {
  #gm-contact-page *,#gm-contact-page *::before,#gm-contact-page *::after {scroll-behavior:auto!important;transition:none!important;}
}
