.service-shell {margin-bottom:28px}
.service-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.service-card {min-height:190px;display:flex;flex-direction:column;align-items:flex-start;padding:23px}
.service-icon {width:46px;height:46px;stroke:currentColor;stroke-width:1.5;fill:none;stroke-linecap:round;stroke-linejoin:round;color:#a18c53;margin-bottom:17px}
.service-card .service-icon {width:47px;height:47px;border:1px solid #e9e3d2;padding:7px;border-radius:11px;overflow:visible}
.service-card h2 {font-size:14px;font-weight:500;margin:0 0 8px}
.service-card p {font-size:11px;line-height:1.9;color:var(--muted);max-width:260px}
.form-layout {display:grid;grid-template-columns:210px minmax(0,1fr);gap:20px;align-items:start;margin-bottom:30px}
.form-panel {background:white;border:1px solid var(--line);border-radius:15px;padding:27px;max-width:none;min-width:0}
.section-title {font-weight:500;font-size:13px;margin:25px 0 16px;display:flex;gap:9px;align-items:center}
.section-title:before {content:'';width:3px;height:15px;background:var(--gold);border-radius:2px}
.fields {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 17px}
.question-field {display:flex;flex-direction:column;gap:7px;min-width:0}
.full {grid-column:1/-1}
.question-field label, .question-field legend {font-size:12px;color:#454b40;margin:0}
.required {color:var(--gold-dark);margin-right:3px}
.question-field input, .question-field select, .question-field textarea {background:#fff;font-size:13px;min-height:43px}
.question-field input[type=email], .question-field input[type=tel] {direction:ltr;text-align:right}
.question-field input::placeholder {color:#a1a397;font-size:11px}
.question-field textarea {min-height:110px}
fieldset.question-field {border:0;padding:0;margin:0}
fieldset.question-field legend {margin-bottom:9px}
.choices {display:flex;flex-wrap:wrap;gap:8px}
.choices .choice {display:flex;gap:7px;align-items:center;padding:10px 12px;margin:0;font-size:11px;cursor:pointer;background:#fdfefa}
.choice:has(input:checked) {border-color:var(--gold);background:#fbf8ef;color:var(--gold-dark)}
.choices .choice input {width:15px;height:15px;min-height:0;accent-color:var(--gold);margin:0}
.upload {border:1px dashed #c9cbbf;background:#fbfcf8;border-radius:11px;padding:17px;display:flex;flex-direction:column;gap:10px}
.upload small {color:var(--muted);font-size:10px}
.upload input {font-size:11px;width:100%;min-height:0;padding:0;border:0;background:transparent}
.file-name {font-size:11px;color:var(--gold-dark);overflow-wrap:anywhere}
.error:empty {display:none}
.error:not(:empty) {padding:12px;background:#fff2ed;border-radius:8px}
.honeypot {position:absolute;right:0;left:auto;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.success {max-width:640px;margin:35px auto 60px;padding:38px 30px;background:white;border:1px solid var(--line);border-radius:15px}
.success-icon {width:68px;height:68px;display:grid;place-items:center;border-radius:50%;background:#eaf2e8;color:#5a7852;margin:0 auto 20px;font-size:29px}
.success h1 {font-size:25px}
.success p {color:var(--muted);font-size:14px;line-height:2;max-width:520px;margin:16px auto;text-align:center}
.ref {padding:15px;margin:22px 0;background:#fbf8ef;border:1px dashed #d5c79d;border-radius:9px;font-size:11px;color:var(--gold-dark)}
.ref strong {display:block;direction:ltr;font:17px Arial;letter-spacing:1px;margin-top:8px}
.success .btn {background:var(--gold);color:#fff;margin-top:8px}
.service-shell:before, .service-shell:after {display:none}
@media(max-width:1200px) {
  .service-card {padding:19px}
  .service-card p {font-size:10px}
  .form-layout {grid-template-columns:190px minmax(0,1fr);gap:16px}
  .form-panel {padding:22px}
}
@media(max-width:1000px) {
  .service-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-layout {grid-template-columns:minmax(0,1fr)}
}
@media(max-width:760px) {
  main {padding-bottom:24px}
  .service-grid {gap:11px}
  .service-card {padding:18px 14px;min-height:192px}
  .service-card h2 {font-size:12px}
  .service-card p {font-size:10px}
  .service-card .service-icon {width:43px;height:43px;margin-bottom:17px}
  .form-panel {padding:21px 17px}
  .fields {grid-template-columns:minmax(0,1fr);gap:17px}
  .full {grid-column:auto}
  .question-field input, .question-field select, .question-field textarea {font-size:16px}
  .success {margin:25px 0;padding:32px 22px}
  .success h1 {font-size:22px}
  .choice {font-size:11px}
  .service-grid .service-card:last-child:nth-child(odd) {grid-column:1/-1;min-height:160px}
}
.application-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.all-services {display:flex;align-items:center;gap:8px;font-size:12px;color:var(--gold-dark)}
.all-services .icon {transform:rotate(180deg);width:16px;height:16px}
.application-tag {font-size:11px;color:var(--muted);display:flex;gap:7px;align-items:center}
.application-tag .icon {width:16px;height:16px}
.form-panel {padding:0;overflow:hidden}
.form-progress {display:flex;padding:23px 25px;background:#fcfcf9;border-bottom:1px solid var(--line);gap:10px;justify-content:space-between}
.progress-item {display:flex;align-items:center;flex-direction:column;gap:8px;position:relative;flex:1;font-size:10px;color:#989f92;text-align:center}
.progress-symbol {display:grid;place-items:center;width:34px;height:34px;border:1px solid #e2e5d9;background:#f4f5ef;border-radius:11px;position:relative;z-index:1}
.progress-symbol .icon {width:17px;height:17px}
.progress-item:not(:last-child):after {content:'';height:1px;background:#e4e7dc;position:absolute;top:17px;right:calc(50% + 23px);width:calc(100% - 36px)}
.progress-item.current {color:#8b743b}
.progress-item.current .progress-symbol {background:#f0e8d2;border-color:#d8c799;color:#93783a;box-shadow:0 0 0 4px #f8f4e9}
.progress-item.complete {color:#6b8064}
.progress-item.complete .progress-symbol {background:#ecf2e8;border-color:#cddbc5;color:#6b8064}
.form-panel form {padding:27px}
.step-heading {display:flex;gap:13px;align-items:center;margin-bottom:26px}
.step-icon {display:grid;place-items:center;width:42px;height:42px;background:#f7f3e8;color:#a18b52;border-radius:12px;border:1px solid #efe7d2;flex-shrink:0}
.step-icon .icon {width:21px;height:21px}
.step-heading h2 {font-size:17px;font-weight:500;margin:0 0 4px}
.step-heading p {font-size:10px;color:var(--muted)}
.step-counter {margin-right:auto;font:11px Ping;color:#a1a897;white-space:nowrap}
.question-group+.question-group {border-top:1px solid #edf0e6;margin-top:25px;padding-top:21px}
.question-group .section-title {margin:0 0 17px;color:#59624e}
.question-group .section-title:before {display:none}
.section-title .icon {width:17px;height:17px;color:#a18b52}
.question-field label:has(+input) {display:flex;align-items:center}
.question-field input:not([type=radio]):not([type=file]), .question-field select, .question-field textarea {background:#fcfdf9;border-color:#e0e5d8;transition:border-color .15s,box-shadow .15s}
.question-field input:focus, .question-field select:focus, .question-field textarea:focus {box-shadow:0 0 0 3px #ad996114}
.question-field input[type=file] {font-size:11px}
.wizard-footer {border-top:1px solid var(--line);padding-top:23px;margin-top:28px;display:flex;justify-content:space-between;align-items:center;gap:12px}
.required-help {font-size:10px;color:#969e8e}
.wizard-actions {display:flex;gap:10px}
.wizard-actions .btn {min-width:105px}
.wizard-actions .btn .icon {width:16px;height:16px}
.form-consent {margin-top:18px;font-size:10px;color:#8b9481;line-height:1.9}
.review-group {border:1px solid #e8ecdf;border-radius:12px;overflow:hidden;margin-top:15px}
.review-group h3 {padding:12px 16px;font-size:12px;font-weight:500;background:#f8faf4;display:flex;gap:8px;align-items:center;color:#6f7a61}
.review-group h3 .icon {width:16px;height:16px;color:#a18b52}
.review-group dl {margin:0;padding:0 16px}
.review-group dl>div {display:grid;grid-template-columns:1fr 1.5fr;gap:15px;padding:12px 0;border-bottom:1px solid #eff1e9;font-size:11px}
.review-group dl>div:last-child {border-bottom:0}
.review-group dt {color:#8d9682}
.review-group dd {margin:0;color:#414a37;white-space:pre-wrap;overflow-wrap:anywhere}
.review-note {font-size:10px;color:#8b9481;margin-top:15px}
.service-grid {padding-top:3px}
.service-card {min-height:190px}
.service-card .service-icon {background:#faf8f0}
.question-field label .required {margin-inline-start:3px}
@media(max-width:1000px) {
  .form-layout {display:flex;flex-direction:column-reverse}
  .form-panel {width:100%}
}
@media(max-width:760px) {
  .application-heading {margin-bottom:17px}
  .application-tag {font-size:10px}
  .all-services {font-size:11px}
  .form-progress {padding:20px 12px;gap:7px}
  .progress-item {font-size:9px;gap:9px}
  .progress-symbol {width:31px;height:31px;border-radius:9px}
  .progress-item:not(:last-child):after {top:15px;right:calc(50% + 20px);width:calc(100% - 28px)}
  .form-panel {padding:0}
  .form-panel form {padding:22px 18px}
  .step-heading {gap:10px;margin-bottom:23px}
  .step-heading h2 {font-size:16px}
  .step-heading p {font-size:10px;max-width:220px}
  .step-icon {width:36px;height:36px;border-radius:10px}
  .step-counter {font-size:10px}
  .wizard-actions .btn {min-width:88px}
  .required-help {font-size:9px}
  .question-group+.question-group {padding-top:20px;margin-top:22px}
  .question-field .choices {gap:8px}
  .choices .choice {padding:11px 14px}
  .review-group dl>div {grid-template-columns:1fr 1fr;font-size:11px}
  .success .btn {font-size:12px}
}
.step-counter {direction:ltr}
.choices .choice {gap:8px;min-height:52px;transition:border-color .18s,background .18s,box-shadow .18s}
.choices .choice .icon {width:19px;height:19px;stroke-width:1.5;color:#9a9f8f;flex-shrink:0}
.choices .choice:has(input:checked) {box-shadow:0 0 0 2px #ad99610c}
.choices .choice:has(input:checked) .icon {color:#a18b51}
.choices .choice:hover {border-color:#c9bd99}
.choices .choice span {white-space:nowrap}
.choices .choice input {width:14px;height:14px}
@media(max-width:760px) {
  .choices .choice {padding:12px 13px}
  .choices .choice .icon {width:19px;height:19px}
}
.form-layout {display:block;max-width:940px;margin-inline:auto}
.application-heading {max-width:940px;margin-inline:auto}
.form-layout .form-panel {width:100%}
.service-grid .service-card {min-height:0;padding:18px;gap:0}
.service-grid .service-card .service-icon {width:40px;height:40px;margin-bottom:12px;padding:6px}
.service-grid .service-card h2 {font-size:13px;margin-bottom:5px}
.service-grid .service-card p {font-size:10px;line-height:1.8;max-width:none}
.service-grid .service-card:last-child:nth-child(odd) {grid-column:auto;min-height:0}
@media(max-width:760px) {
  .service-grid .service-card {min-height:0;padding:16px 14px}
  .service-grid .service-card .service-icon {width:36px;height:36px;margin-bottom:12px}
  .service-grid .service-card h2 {font-size:12px}
  .service-grid .service-card p {font-size:10px;line-height:1.8}
  .service-grid .service-card:last-child:nth-child(odd) {grid-column:auto;min-height:0}
}
.forms-header {height:88px;padding:12px max(24px,calc((100vw - 1080px)/2));background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}
.forms-brand img {display:block;width:175px;height:60px;object-fit:contain;filter:brightness(.23)}
.forms-main {max-width:1080px;padding:30px 24px 24px;min-height:calc(100vh - 88px)}
.forms-only .service-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
.forms-only .service-grid .service-card {padding:22px;min-height:0}
.forms-only .service-card .service-icon {width:43px;height:43px}
.forms-only .form-layout {max-width:820px}
.forms-only .application-heading {max-width:820px}
@media(max-width:760px) {
  .forms-header {height:77px;padding:10px 20px}
  .forms-brand img {width:145px;height:52px}
  .forms-main {padding:22px 18px}
  .forms-only .service-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .forms-only .service-grid .service-card {padding:17px 14px}
  .forms-only .service-card .service-icon {width:36px;height:36px}
}
.whatsapp-link {width:44px;height:44px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:transparent;color:#3b3b3b;transition:background .15s}
.whatsapp-link svg {width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.whatsapp-link:hover {background:#f1f2ee}
.whatsapp-link:focus-visible {outline:2px solid #3b3b3b;outline-offset:4px}
@media(max-width:760px) {
  .whatsapp-link {width:40px;height:40px;border-radius:11px}
  .whatsapp-link svg {width:25px;height:25px}
}
body.forms-only {font-weight:600}
.forms-only .service-card h2, .forms-only .step-heading h2, .forms-only .success h1 {font-weight:700}
.forms-only .btn, .forms-only .question-field label, .forms-only .question-field legend {font-weight:600}
.forms-only .service-card p, .forms-only .step-heading p, .forms-only .success p {color:#5f675e}
.forms-only .success p {font-size:15px;font-weight:600;line-height:2}

.question-field textarea[placeholder] {line-height:1.9;}
.question-field textarea::placeholder {color:#92988e;font-size:13px;font-weight:400;line-height:1.8;opacity:1;}
