/**
 * PowerForm - Base Layout Styles
 * 
 * Provides structural layout for the form (grid, steps, navigation).
 * Field styling (inputs, labels, etc.) should be customized per project.
 */

/* ============================================================
   Honeypot (spam protection)
   ============================================================ */
.power-form__potty {
  /* Visually move off-screen — NOT display:none / visibility:hidden
     because some bots detect those and skip the field intentionally. */
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  z-index: -1;
}

.power-form__potty-label,
.power-form__potty input {
  /* Extra belt-and-suspenders: hide label and input consistently */
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

/* ============================================================
   Form Wrapper
   ============================================================ */
.power-form-wrapper {
  position: relative;
  overflow: visible;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.power-form {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* ============================================================
   Step Layout
   ============================================================ */
.power-form__step {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

@media screen and (max-width: 710px) {
  .power-form__step {
    gap: 1rem;
  }
}

.power-form__step[hidden] {
  display: none;
}

.power-form__step-title {
  margin: 0;
  font-size: 1.25rem;
  font-weight: 600;
}

/* ============================================================
   Grid / Columns (Kirby Layout)
   ============================================================ */
.power-form .grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 1.5rem;
}

.power-form .column {
  grid-column: span 12;
}

@media screen and (min-width: 768px) {
  .power-form .column {
    grid-column: span var(--span, 12);
  }
}

.power-form .column .blocks {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

/* ============================================================
   Form Field (shared base)
   ============================================================ */
.form-field {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 0.375rem;
    height: 100%;
    position: relative;
}

.form-field.powerFormCheckbox .checkbox__label-text {
    opacity: 0.75;
}

@media screen and (max-width: 1169px) {
  .form-field.powerFormCheckbox .checkbox__label-text p {
    font-size: var(--fs-xs);
  }
}

.form-field.powerFormCheckbox .checkbox__label-text p,
.form-field.powerFormCheckbox .checkbox__label-text p a {
  font-weight: 500;
}

.form-field.hidden {
  display: none;
}

.form-field.disabled {
  opacity: 0.5;
  pointer-events: none;
}

.form-label {
  font-family: var(--ff-primary, sans-serif);
  color: var(--clr-font, #000);
}

.form-label.required::after {
  content: " *";
  color: var(--clr-accent, #ff0000);
}

.form-input {
  width: 100%;
  padding: 0.9rem 1rem;
  border-radius: 0;
  border: none;
  font-size: var(--fs-base);
  line-height: 1.2;
  font-weight: 500;
  background-color: var(--formfield-background-color, #fff);
  color: var(--clr-font, #0A1027);
  box-sizing: border-box;
}

@media screen and (max-width: 1169px) {
  .form-input {
    font-size: var(--fs-xs);
  }
}

.form-input:focus {
  outline: none;
}

.form-input::placeholder {
  color: var(--clr-font, #0A1027);
  opacity: 0.5;
}

.form-field.has-error .form-input {
  outline: 2px solid var(--clr-error, #ff0000);
}

/* Autofill: preserve background color and text styling across browsers.
   Browsers block overriding background-color on autofilled inputs,
   but allow box-shadow inset — use it to fake the background color.
   Icons live on the wrapper ::before, so autofill cannot affect them. */
.form-input:-webkit-autofill,
.form-input:-webkit-autofill:hover,
.form-input:-webkit-autofill:focus,
.form-input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 1000px var(--formfield-background-color, #fff) inset !important;
  box-shadow: 0 0 0 1000px var(--formfield-background-color, #fff) inset !important;
  -webkit-text-fill-color: var(--clr-font, #0A1027) !important;
  transition: background-color 9999s ease-in-out 0s;
  caret-color: var(--clr-font, #0A1027);
  font-family: inherit;
  font-size: inherit;
}

/* ============================================================
   Input Wrapper (icon host)
   Icons are placed on the wrapper's ::before pseudo-element,
   completely isolated from browser autofill overrides.
   ============================================================ */
.form-input-wrapper {
  position: relative;
}

/* When icon present: indent input text to clear the icon */
.form-input-wrapper[data-icon] .form-input {
  padding-left: 3.25rem;
}

/* Base ::before — shared geometry for all icons */
.form-input-wrapper[data-icon]::before {
  content: '';
  position: absolute;
  left: 1rem;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  background-color: var(--clr-accent, #000);
  pointer-events: none;
}

/* ------------------------------------------------------------
   Icon registry
------------------------------------------------------------ */

[data-icon*="user-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20 21.5C20 20.1044 20 19.4067 19.8278 18.8389C19.44 17.5605 18.4395 16.56 17.1611 16.1722C16.5933 16 15.8956 16 14.5 16H9.5C8.10444 16 7.40665 16 6.83886 16.1722C5.56045 16.56 4.56004 17.5605 4.17224 18.8389C4 19.4067 4 20.1044 4 21.5M16.5 8C16.5 10.4853 14.4853 12.5 12 12.5C9.51472 12.5 7.5 10.4853 7.5 8C7.5 5.51472 9.51472 3.5 12 3.5C14.4853 3.5 16.5 5.51472 16.5 8Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="users-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M22 21V19C22 17.1362 20.7252 15.5701 19 15.126M15.5 3.29076C16.9659 3.88415 18 5.32131 18 7C18 8.67869 16.9659 10.1159 15.5 10.7092M17 21C17 19.1362 17 18.2044 16.6955 17.4693C16.2895 16.4892 15.5108 15.7105 14.5307 15.3045C13.7956 15 12.8638 15 11 15H8C6.13623 15 5.20435 15 4.46927 15.3045C3.48915 15.7105 2.71046 16.4892 2.30448 17.4693C2 18.2044 2 19.1362 2 21M13.5 7C13.5 9.20914 11.7091 11 9.5 11C7.29086 11 5.5 9.20914 5.5 7C5.5 4.79086 7.29086 3 9.5 3C11.7091 3 13.5 4.79086 13.5 7Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="briefcase-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M16 7.5C16 6.57003 16 6.10504 15.8978 5.72354C15.6204 4.68827 14.8117 3.87962 13.7765 3.60222C13.395 3.5 12.93 3.5 12 3.5C11.07 3.5 10.605 3.5 10.2235 3.60222C9.18827 3.87962 8.37962 4.68827 8.10222 5.72354C8 6.10504 8 6.57003 8 7.5M6.8 21.5H17.2C18.8802 21.5 19.7202 21.5 20.362 21.173C20.9265 20.8854 21.3854 20.4265 21.673 19.862C22 19.2202 22 18.3802 22 16.7V12.3C22 10.6198 22 9.77976 21.673 9.13803C21.3854 8.57354 20.9265 8.1146 20.362 7.82698C19.7202 7.5 18.8802 7.5 17.2 7.5H6.8C5.11984 7.5 4.27976 7.5 3.63803 7.82698C3.07354 8.1146 2.6146 8.57354 2.32698 9.13803C2 9.77976 2 10.6198 2 12.3V16.7C2 18.3802 2 19.2202 2.32698 19.862C2.6146 20.4265 3.07354 20.8854 3.63803 21.173C4.27976 21.5 5.11984 21.5 6.8 21.5Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="building-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M13 11H17.8C18.9201 11 19.4802 11 19.908 11.218C20.2843 11.4097 20.5903 11.7157 20.782 12.092C21 12.5198 21 13.0799 21 14.2V21M13 21V6.2C13 5.0799 13 4.51984 12.782 4.09202C12.5903 3.71569 12.2843 3.40973 11.908 3.21799C11.4802 3 10.9201 3 9.8 3H6.2C5.0799 3 4.51984 3 4.09202 3.21799C3.71569 3.40973 3.40973 3.71569 3.21799 4.09202C3 4.51984 3 5.0799 3 6.2V21M22 21H2M6.5 7H9.5M6.5 11H9.5M6.5 15H9.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="email-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 7.5L10.1649 13.2154C10.8261 13.6783 11.1567 13.9097 11.5163 13.9993C11.8339 14.0785 12.1661 14.0785 12.4837 13.9993C12.8433 13.9097 13.1739 13.6783 13.8351 13.2154L22 7.5M6.8 20.5H17.2C18.8802 20.5 19.7202 20.5 20.362 20.173C20.9265 19.8854 21.3854 19.4265 21.673 18.862C22 18.2202 22 17.3802 22 15.7V9.3C22 7.61984 22 6.77976 21.673 6.13803C21.3854 5.57354 20.9265 5.1146 20.362 4.82698C19.7202 4.5 18.8802 4.5 17.2 4.5H6.8C5.11984 4.5 4.27976 4.5 3.63803 4.82698C3.07354 5.1146 2.6146 5.57354 2.32698 6.13803C2 6.77976 2 7.61984 2 9.3V15.7C2 17.3802 2 18.2202 2.32698 18.862C2.6146 19.4265 3.07354 19.8854 3.63803 20.173C4.27976 20.5 5.11984 20.5 6.8 20.5Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="phone-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M14.0497 6.5C15.0264 6.69057 15.924 7.16826 16.6277 7.87194C17.3314 8.57561 17.8091 9.47326 17.9997 10.45M14.0497 2.5C16.0789 2.72544 17.9713 3.63417 19.4159 5.07701C20.8606 6.51984 21.7717 8.41101 21.9997 10.44M10.2266 14.3631C9.02506 13.1615 8.07627 11.8028 7.38028 10.3532C7.32041 10.2285 7.29048 10.1662 7.26748 10.0873C7.18576 9.80695 7.24446 9.46269 7.41447 9.22526C7.46231 9.15845 7.51947 9.10129 7.63378 8.98698C7.98338 8.63737 8.15819 8.46257 8.27247 8.28679C8.70347 7.6239 8.70347 6.76932 8.27247 6.10643C8.15819 5.93065 7.98338 5.75585 7.63378 5.40624L7.43891 5.21137C6.90747 4.67993 6.64174 4.41421 6.35636 4.26987C5.7888 3.9828 5.11854 3.9828 4.55098 4.26987C4.2656 4.41421 3.99987 4.67993 3.46843 5.21137L3.3108 5.36901C2.78117 5.89863 2.51636 6.16344 2.31411 6.52348C2.08969 6.92298 1.92833 7.54347 1.9297 8.0017C1.93092 8.41464 2.01103 8.69687 2.17124 9.26131C3.03221 12.2947 4.65668 15.1571 7.04466 17.545C9.43264 19.933 12.295 21.5575 15.3284 22.4185C15.8928 22.5787 16.1751 22.6588 16.588 22.66C17.0462 22.6614 17.6667 22.5 18.0662 22.2756C18.4263 22.0733 18.6911 21.8085 19.2207 21.2789L19.3783 21.1213C19.9098 20.5898 20.1755 20.3241 20.3198 20.0387C20.6069 19.4712 20.6069 18.8009 20.3198 18.2333C20.1755 17.948 19.9098 17.6822 19.3783 17.1508L19.1835 16.9559C18.8339 16.6063 18.6591 16.4315 18.4833 16.3172C17.8204 15.8862 16.9658 15.8862 16.3029 16.3172C16.1271 16.4315 15.9523 16.6063 15.6027 16.9559C15.4884 17.0702 15.4313 17.1274 15.3644 17.1752C15.127 17.3453 14.7828 17.404 14.5024 17.3222C14.4235 17.2992 14.3612 17.2693 14.2365 17.2094C12.7869 16.5134 11.4282 15.5646 10.2266 14.3631Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="street-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4 22.5L8 2.5M20 22.5L16 2.5M12 2.5V4.5M12 8.5V10.5M12 14.5V16.5M12 20.5V22.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"/></svg>');
}

[data-icon*="coins-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 17.5C12 20.2614 14.2386 22.5 17 22.5C19.7614 22.5 22 20.2614 22 17.5C22 14.7386 19.7614 12.5 17 12.5C14.2386 12.5 12 14.7386 12 17.5ZM12 17.5C12 16.3742 12.3721 15.3353 13 14.4995V5.5M12 17.5C12 18.3254 12.2 19.104 12.5541 19.7901C11.7117 20.5018 9.76584 21 7.5 21C4.46243 21 2 20.1046 2 19V5.5M13 5.5C13 6.60457 10.5376 7.5 7.5 7.5C4.46243 7.5 2 6.60457 2 5.5M13 5.5C13 4.39543 10.5376 3.5 7.5 3.5C4.46243 3.5 2 4.39543 2 5.5M2 14.5C2 15.6046 4.46243 16.5 7.5 16.5C9.689 16.5 11.5793 16.035 12.4646 15.3618M13 10C13 11.1046 10.5376 12 7.5 12C4.46243 12 2 11.1046 2 10" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="star-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.2827 3.95307C11.5131 3.48613 11.6284 3.25266 11.7848 3.17807C11.9209 3.11317 12.0791 3.11317 12.2152 3.17807C12.3717 3.25266 12.4869 3.48613 12.7174 3.95307L14.9041 8.38304C14.9721 8.52089 15.0061 8.58982 15.0558 8.64333C15.0999 8.69071 15.1527 8.72911 15.2113 8.75638C15.2776 8.78718 15.3536 8.7983 15.5057 8.82053L20.397 9.53546C20.9121 9.61075 21.1696 9.64839 21.2888 9.77419C21.3925 9.88365 21.4412 10.0341 21.4215 10.1835C21.3988 10.3553 21.2124 10.5369 20.8395 10.9001L17.3014 14.3462C17.1912 14.4536 17.136 14.5073 17.1004 14.5712C17.0689 14.6278 17.0487 14.69 17.0409 14.7543C17.0321 14.8269 17.0451 14.9027 17.0711 15.0545L17.906 19.9219C17.994 20.4352 18.038 20.6919 17.9553 20.8443C17.8833 20.9768 17.7554 21.0697 17.6071 21.0972C17.4366 21.1288 17.2061 21.0076 16.7451 20.7652L12.3724 18.4656C12.2361 18.3939 12.168 18.3581 12.0962 18.344C12.0327 18.3316 11.9673 18.3316 11.9038 18.344C11.832 18.3581 11.7639 18.3939 11.6277 18.4656L7.25492 20.7652C6.79392 21.0076 6.56341 21.1288 6.39297 21.0972C6.24468 21.0697 6.11672 20.9768 6.04474 20.8443C5.962 20.6919 6.00603 20.4352 6.09407 19.9219L6.92889 15.0545C6.95491 14.9027 6.96793 14.8269 6.95912 14.7543C6.95132 14.69 6.93111 14.6278 6.89961 14.5712C6.86402 14.5073 6.80888 14.4536 6.69859 14.3462L3.16056 10.9001C2.78766 10.5369 2.60121 10.3553 2.57853 10.1835C2.55879 10.0341 2.60755 9.88365 2.71125 9.77419C2.83044 9.64839 3.08797 9.61075 3.60304 9.53546L8.49431 8.82053C8.64642 8.7983 8.72248 8.78718 8.78872 8.75638C8.84736 8.72911 8.90016 8.69071 8.94419 8.64333C8.99391 8.58982 9.02793 8.52089 9.09597 8.38304L11.2827 3.95307Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="map-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M22.4697 24.0303C22.7626 24.3232 23.2374 24.3232 23.5303 24.0303C23.8232 23.7374 23.8232 23.2626 23.5303 22.9697L22.4697 24.0303ZM4.64018 4.86692L5.12032 4.29075L4.64018 4.86692ZM7.71963 7.43313L8.19977 6.85696L7.71963 7.43313ZM10.2804 7.43313L10.7605 8.00929L10.2804 7.43313ZM13.7196 4.56707L13.2395 3.99091L13.2395 3.99091L13.7196 4.56707ZM16.2804 4.56707L15.8002 5.14324L16.2804 4.56707ZM19.5607 7.30071L19.0806 7.87688V7.87688L19.5607 7.30071ZM7.71963 20.4331L8.19977 19.857L8.19977 19.857L7.71963 20.4331ZM3.71963 17.0998L3.23949 17.676H3.23949L3.71963 17.0998ZM9 21.6467C9.41421 21.6467 9.75 21.3109 9.75 20.8967C9.75 20.4825 9.41421 20.1467 9 20.1467V21.6467ZM9.75 8.5001C9.75 8.08589 9.41421 7.7501 9 7.7501C8.58579 7.7501 8.25 8.08589 8.25 8.5001H9.75ZM8.25 20.5001C8.25 20.9143 8.58579 21.2501 9 21.2501C9.41421 21.2501 9.75 20.9143 9.75 20.5001H8.25ZM19.5304 10.5C19.5304 10.9142 19.8662 11.25 20.2804 11.25C20.6946 11.25 21.0304 10.9142 21.0304 10.5H19.5304ZM21.0588 17.0294H20.3088C20.3088 19.1167 18.6167 20.8088 16.5294 20.8088V21.5588V22.3088C19.4452 22.3088 21.8088 19.9452 21.8088 17.0294H21.0588ZM16.5294 21.5588V20.8088C14.4421 20.8088 12.75 19.1167 12.75 17.0294H12H11.25C11.25 19.9452 13.6137 22.3088 16.5294 22.3088V21.5588ZM12 17.0294H12.75C12.75 14.9421 14.4421 13.25 16.5294 13.25V12.5V11.75C13.6137 11.75 11.25 14.1137 11.25 17.0294H12ZM16.5294 12.5V13.25C18.6167 13.25 20.3088 14.9421 20.3088 17.0294H21.0588H21.8088C21.8088 14.1137 19.4452 11.75 16.5294 11.75V12.5ZM19.7647 20.2647L19.2344 20.795L22.4697 24.0303L23 23.5L23.5303 22.9697L20.295 19.7344L19.7647 20.2647ZM4.64018 4.86692L4.16005 5.44309L7.23949 8.00929L7.71963 7.43313L8.19977 6.85696L5.12032 4.29075L4.64018 4.86692ZM10.2804 7.43313L10.7605 8.00929L14.1998 5.14324L13.7196 4.56707L13.2395 3.99091L9.80023 6.85696L10.2804 7.43313ZM16.2804 4.56707L15.8002 5.14324L19.0806 7.87688L19.5607 7.30071L20.0409 6.72455L16.7605 3.99091L16.2804 4.56707ZM7.71963 20.4331L8.19977 19.857L4.19977 16.5236L3.71963 17.0998L3.23949 17.676L7.23949 21.0093L7.71963 20.4331ZM3 15.5633H3.75V5.63514H3H2.25V15.5633H3ZM3.71963 17.0998L4.19977 16.5236C3.91478 16.2861 3.75 15.9343 3.75 15.5633H3H2.25C2.25 16.3795 2.61251 17.1535 3.23949 17.676L3.71963 17.0998ZM13.7196 4.56707L14.1998 5.14324C14.6633 4.75694 15.3367 4.75694 15.8002 5.14324L16.2804 4.56707L16.7605 3.99091C15.7407 3.14105 14.2593 3.14105 13.2395 3.99091L13.7196 4.56707ZM7.71963 7.43313L7.23949 8.00929C8.25932 8.85915 9.74068 8.85915 10.7605 8.00929L10.2804 7.43313L9.80023 6.85696C9.33667 7.24326 8.66333 7.24326 8.19977 6.85696L7.71963 7.43313ZM4.64018 4.86692L5.12032 4.29075C3.9805 3.3409 2.25 4.15143 2.25 5.63514H3H3.75C3.75 5.42318 3.99722 5.30739 4.16005 5.44309L4.64018 4.86692ZM9 20.8967V20.1467C8.71515 20.1467 8.43164 20.0502 8.19977 19.857L7.71963 20.4331L7.23949 21.0093C7.74932 21.4341 8.37532 21.6467 9 21.6467V20.8967ZM9 8.5001H8.25V20.5001H9H9.75V8.5001H9ZM20.2804 8.83716H19.5304V10.5H20.2804H21.0304V8.83716H20.2804ZM19.5607 7.30071L19.0806 7.87688C19.3656 8.11437 19.5304 8.46618 19.5304 8.83716H20.2804H21.0304C21.0304 8.02101 20.6679 7.24703 20.0409 6.72455L19.5607 7.30071Z" fill="currentColor"/></svg>');
}

[data-icon*="pin-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="25" viewBox="0 0 24 25" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12 13.5C13.6569 13.5 15 12.1569 15 10.5C15 8.84315 13.6569 7.5 12 7.5C10.3431 7.5 9 8.84315 9 10.5C9 12.1569 10.3431 13.5 12 13.5Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M12 22.5C16 18.5 20 14.9183 20 10.5C20 6.08172 16.4183 2.5 12 2.5C7.58172 2.5 4 6.08172 4 10.5C4 14.9183 8 18.5 12 22.5Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="location-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M5 14.2864C3.14864 15.1031 2 16.2412 2 17.5C2 19.9853 6.47715 22 12 22C17.5228 22 22 19.9853 22 17.5C22 16.2412 20.8514 15.1031 19 14.2864M18 8C18 12.0637 13.5 14 12 17C10.5 14 6 12.0637 6 8C6 4.68629 8.68629 2 12 2C15.3137 2 18 4.68629 18 8ZM13 8C13 8.55228 12.5523 9 12 9C11.4477 9 11 8.55228 11 8C11 7.44772 11.4477 7 12 7C12.5523 7 13 7.44772 13 8Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="language-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M12.913 17H20.087M12.913 17L11 21M12.913 17L15.7783 11.009C16.0092 10.5263 16.1246 10.2849 16.2826 10.2086C16.4199 10.1423 16.5801 10.1423 16.7174 10.2086C16.8754 10.2849 16.9908 10.5263 17.2217 11.009L20.087 17M20.087 17L22 21M2 5H8M8 5H11.5M8 5V3M11.5 5H14M11.5 5C11.0039 7.95729 9.85259 10.6362 8.16555 12.8844M10 14C9.38747 13.7248 8.76265 13.3421 8.16555 12.8844M8.16555 12.8844C6.81302 11.8478 5.60276 10.4266 5 9M8.16555 12.8844C6.56086 15.0229 4.47143 16.7718 2 18" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="hashtag-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.49999 3L6.49999 21M17.5 3L14.5 21M20.5 8H3.5M19.5 16H2.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="globe-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M2 12H22M2 12C2 17.5228 6.47715 22 12 22M2 12C2 6.47715 6.47715 2 12 2M22 12C22 17.5228 17.5228 22 12 22M22 12C22 6.47715 17.5228 2 12 2M12 2C14.5013 4.73835 15.9228 8.29203 16 12C15.9228 15.708 14.5013 19.2616 12 22M12 2C9.49872 4.73835 8.07725 8.29203 8 12C8.07725 15.708 9.49872 19.2616 12 22" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="country-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> <path d="M15 2.4578C14.053 2.16035 13.0452 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 10.2847 21.5681 8.67022 20.8071 7.25945M17 5.75H17.005M10.5001 21.8883L10.5002 19.6849C10.5002 19.5656 10.5429 19.4502 10.6205 19.3596L13.1063 16.4594C13.3106 16.2211 13.2473 15.8556 12.9748 15.6999L10.1185 14.0677C10.0409 14.0234 9.97663 13.9591 9.93234 13.8814L8.07046 10.6186C7.97356 10.4488 7.78657 10.3511 7.59183 10.3684L2.06418 10.8607M21 6C21 8.20914 19 10 17 12C15 10 13 8.20914 13 6C13 3.79086 14.7909 2 17 2C19.2091 2 21 3.79086 21 6ZM17.25 5.75C17.25 5.88807 17.1381 6 17 6C16.8619 6 16.75 5.88807 16.75 5.75C16.75 5.61193 16.8619 5.5 17 5.5C17.1381 5.5 17.25 5.61193 17.25 5.75Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="bank-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5 9.00002V17M9.5 9.00002V17M14.5 9.00002V17M19 9.00002V17M3 18.6L3 19.4C3 19.9601 3 20.2401 3.10899 20.454C3.20487 20.6422 3.35785 20.7952 3.54601 20.891C3.75992 21 4.03995 21 4.6 21H19.4C19.9601 21 20.2401 21 20.454 20.891C20.6422 20.7952 20.7951 20.6422 20.891 20.454C21 20.2401 21 19.9601 21 19.4V18.6C21 18.04 21 17.7599 20.891 17.546C20.7951 17.3579 20.6422 17.2049 20.454 17.109C20.2401 17 19.9601 17 19.4 17H4.6C4.03995 17 3.75992 17 3.54601 17.109C3.35785 17.2049 3.20487 17.3579 3.10899 17.546C3 17.7599 3 18.04 3 18.6ZM11.6529 3.07715L4.25291 4.7216C3.80585 4.82094 3.58232 4.87062 3.41546 4.99082C3.26829 5.09685 3.15273 5.24092 3.08115 5.40759C3 5.59654 3 5.82553 3 6.28349L3 7.40002C3 7.96007 3 8.2401 3.10899 8.45401C3.20487 8.64217 3.35785 8.79515 3.54601 8.89103C3.75992 9.00002 4.03995 9.00002 4.6 9.00002H19.4C19.9601 9.00002 20.2401 9.00002 20.454 8.89103C20.6422 8.79515 20.7951 8.64217 20.891 8.45401C21 8.2401 21 7.96007 21 7.40002V6.2835C21 5.82553 21 5.59655 20.9188 5.40759C20.8473 5.24092 20.7317 5.09685 20.5845 4.99082C20.4177 4.87062 20.1942 4.82094 19.7471 4.7216L12.3471 3.07715C12.2176 3.04837 12.1528 3.03398 12.0874 3.02824C12.0292 3.02314 11.9708 3.02314 11.9126 3.02824C11.8472 3.03398 11.7824 3.04837 11.6529 3.07715Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

[data-icon*="calendar-icon"] {
  --field-icon: url('data:image/svg+xml;utf8,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M21 10H3M16 2V6M8 2V6M10.5 14L12 13V18M10.75 18H13.25M7.8 22H16.2C17.8802 22 18.7202 22 19.362 21.673C19.9265 21.3854 20.3854 20.9265 20.673 20.362C21 19.7202 21 18.8802 21 17.2V8.8C21 7.11984 21 6.27976 20.673 5.63803C20.3854 5.07354 19.9265 4.6146 19.362 4.32698C18.7202 4 17.8802 4 16.2 4H7.8C6.11984 4 5.27976 4 4.63803 4.32698C4.07354 4.6146 3.6146 5.07354 3.32698 5.63803C3 6.27976 3 7.11984 3 8.8V17.2C3 18.8802 3 19.7202 3.32698 20.362C3.6146 20.9265 4.07354 21.3854 4.63803 21.673C5.27976 22 6.11984 22 7.8 22Z" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
}

.form-input-wrapper::before {
  -webkit-mask-image: var(--field-icon);
  mask-image: var(--field-icon);
}

/* ------------------------------------------------------------
   END Icon registry
------------------------------------------------------------ */

select.form-input {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 1.25em;
  padding-right: 2.5rem;
  cursor: pointer;
  color: rgba(10, 16, 39, 0.5);
}

select.form-input.has-value {
  color: #0A1027;
}

textarea.form-input {
  resize: vertical;
  min-height: 4rem;
  padding: 0.9rem 1rem;
}

/* ============================================================
   Error Messages
   ============================================================ */
.power-form-wrapper .form-field .error-message {
  color: var(--clr-error, #ff0000);
  font-size: 0.8rem;
  margin: 0;
  display: none;
  position: absolute;
  bottom: -20px;
}

/* ============================================================
   Checkbox & Radio Shared
   ============================================================ */
.checkboxes__wrapper,
.radios__wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
}

.checkboxes__wrapper.vertical,
.radios__wrapper.vertical {
  flex-direction: column;
}

.checkbox__item,
.radio__item {
  position: relative;
  display: inline-flex;
  align-items: flex-start;
  gap: 0.5rem;
  cursor: pointer;
  user-select: none;
}

.checkbox__item .form-checkbox,
.radio__item .form-radio {
  appearance: none;
  -webkit-appearance: none;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  margin: 0;
  opacity: 0;
  z-index: 5;
  cursor: pointer;
  pointer-events: auto;
}

/* Checkbox custom */
.form-checkbox-custom {
  width: 19px;
  height: 19px;
  border: 2px solid var(--clr-accent, #0A1027);
  position: relative;
  flex: 0 0 18px;
  pointer-events: none;
  top: 2px;
}

.form-checkbox-custom::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px;
  height: 7px;
  border-right: 2px solid var(--clr-light, #fff);
  border-bottom: 2px solid var(--clr-light, #fff);
  transform: translate(-50%, -65%) rotate(45deg);
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}

.form-checkbox:checked + .form-checkbox-custom {
  background: var(--clr-accent, #0A1027);
}

.form-checkbox:checked + .form-checkbox-custom::after {
  opacity: 1;
}

.form-checkbox:focus-visible + .form-checkbox-custom {
  outline: 2px solid var(--clr-accent, #0A1027);
  outline-offset: 3px;
}

/* Radio custom */
.form-radio-custom {
  width: 18px;
  height: 18px;
  border: 2px solid var(--clr-accent, #0A1027);
  border-radius: 50%;
  position: relative;
  flex: 0 0 18px;
  pointer-events: none;
}

.form-radio-custom::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  background: var(--clr-accent, #0A1027);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
}

.form-radio:checked + .form-radio-custom::after {
  opacity: 1;
}

.form-radio:focus-visible + .form-radio-custom {
  outline: 2px solid var(--clr-accent, #0A1027);
  outline-offset: 3px;
}

.checkbox__label-text,
.radio__label-text {
  line-height: 1.3;
}

.checkbox__label-text p,
.radio__label-text p {
  margin: 0;
  font-size: var(--fs-base, 1rem);
}

/* ============================================================
   Single Checkbox (consent / powerFormSingleCheckbox)
   ============================================================ */
.form-checkbox-label {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  cursor: pointer;
  font-size: 0.95rem;
  line-height: 1.6;
  user-select: none;
  color: var(--clr-font);
}

.form-checkbox-label a {
  color: var(--clr-accent);
  text-decoration: underline;
  transition: opacity 0.2s;
}

.form-checkbox-label a:hover {
  opacity: 0.8;
}

.form-checkbox-label .form-checkbox {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.form-checkbox-label .form-checkbox-custom {
  position: relative;
  flex-shrink: 0;
  width: 1.25rem;
  height: 1.25rem;
  margin-top: 0.125rem;
  border: 2px solid var(--clr-dark, #0A1027);
  border-radius: 0.25rem;
  background: var(--clr-light, #fff);
  transition: all 0.2s;
  flex: 0 0 auto;
}

.form-checkbox-label .form-checkbox-custom::after {
  content: '';
  position: absolute;
  left: 5px;
  top: 0px;
  width: 4px;
  height: 10px;
  border: solid var(--clr-light, #fff);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
}

.form-checkbox-label .form-checkbox:checked + .form-checkbox-custom {
  border-color: var(--clr-accent, #d4a843);
  background-color: var(--clr-accent, #d4a843);
}

.form-checkbox-label .form-checkbox:checked + .form-checkbox-custom::after {
  opacity: 1;
}

.form-checkbox-label .form-checkbox:focus + .form-checkbox-custom {
  outline: 2px solid var(--clr-accent, #d4a843);
  outline-offset: 2px;
}

.form-checkbox-label .form-checkbox.error + .form-checkbox-custom {
  border-color: var(--clr-error, #ff0000);
  background-color: rgba(220, 53, 69, 0.05);
}

.form-checkbox-text {
  display: flex;
  align-items: center;
  flex: 1;
}

.form-checkbox-text.required::after {
  content: " *";
  color: var(--clr-error, #ff0000);
}

.form-checkbox-text.error {
  color: var(--clr-error, #ff0000);
}

.form-checkbox-text p {
  margin: 0;
}

/* ============================================================
   Content Block
   ============================================================ */
.form-content-heading {
  margin: 0;
  font-size: 1.125rem;
  font-weight: 600;
}

.form-content-text {
  font-size: 0.9375rem;
}

.form-content-text p {
  margin: 0;
}

@media screen and (max-width: 1169px) {
  .form-content-text p {
    font-size: var(--fs-xs);
  }
}

/* ============================================================
   Step Progress Bar (wizard breadcrumb)
   ============================================================ */
.power-form__progress {
  margin-bottom: 2rem;
}

.power-form__progress-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: flex-start;
  position: relative;
}

.power-form__progress-item {
  flex: 1;
  position: relative;
  text-align: center;
  padding-top: 1.25rem;
}

/* Connecting line (rendered behind labels via ::before on every item except the first) */
.power-form__progress-item::before {
  content: '';
  position: absolute;
  top: 0.5rem;
  left: 0;
  right: 50%;
  height: 3px;
  background: var(--clr-border, #d0d0d0);
}

.power-form__progress-item::after {
  content: '';
  position: absolute;
  top: 0.5rem;
  left: 50%;
  right: 0;
  height: 3px;
  background: var(--clr-border, #d0d0d0);
}

/* First / last items: no hiding — line runs full width of the block */

/* Completed items: orange line */
.power-form__progress-item.is-completed::before,
.power-form__progress-item.is-completed::after {
  background: var(--clr-accent, #e8930c);
}

/* Active item: line on the left side is orange (came from completed) */
.power-form__progress-item.is-active::before {
  background: var(--clr-accent, #e8930c);
}

/* Label */
.power-form__progress-label {
  display: block;
  font-size: 0.8rem;
  font-weight: 600;
  line-height: 1.3;
  color: var(--clr-muted, #999);
  transition: color 0.25s ease;
  padding: 0 0.25rem;
}

/* Dot on top of each label */
.power-form__progress-item .power-form__progress-label::before {
  content: '';
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--clr-border, #d0d0d0);
  margin: 0 auto 0.5rem;
  position: relative;
  z-index: 1;
  transition: background 0.25s ease, transform 0.25s ease;
}

/* Completed: orange dot */
.power-form__progress-item.is-completed .power-form__progress-label::before {
  background: var(--clr-accent, #e8930c);
}

/* Active: orange dot, slightly larger */
.power-form__progress-item.is-active .power-form__progress-label::before {
  background: var(--clr-accent, #e8930c);
}

/* Completed & active label text color */
.power-form__progress-item.is-completed .power-form__progress-label,
.power-form__progress-item.is-active .power-form__progress-label {
  color: var(--clr-accent, #e8930c);
}

/* Mobile: horizontal scroll progress bar */
@media screen and (max-width: 710px) {
  .power-form__progress-list {
    overflow-x: scroll;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }

  .power-form__progress-list::-webkit-scrollbar {
    display: none;
  }

  .power-form__progress-item {
    flex: 0 0 7rem;
    min-width: 7rem;
  }

  .power-form__progress-label {
    font-size: 0.7rem;
  }

  /* Force single-column layout for form fields */
  .power-form .grid {
    display: flex;
    flex-direction: column;
  }

  .power-form .column {
    width: 100%;
  }
}

/* ============================================================
   Step Navigation
   ============================================================ */
.power-form__step-nav {
  display: flex;
  align-items: center;
  gap: 3rem;
  justify-content: space-between;
  padding-top: 1.5rem;
  border-top: 1px solid var(--clr-border, #e0e0e0);
  margin-top: 1rem;
}

.power-form__step-nav-left,
.power-form__step-nav-right {
  flex: 1;
}

.power-form__step-nav-right {
  display: flex;
  justify-content: flex-end;
}

.power-form__step-indicator {
  text-align: center;
  font-size: 0.875rem;
  color: var(--clr-font, #666);
  flex: 0 0 auto;
}

/* ============================================================
   Buttons
   ============================================================ */
.power-form__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 1rem 2rem;
  border: none;
  border-radius: var(--br-xs, 0.25rem);
  font-size: 1rem;
  font-family: inherit;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease, opacity 0.2s ease;
}

.power-form__btn--prev {
  background: transparent;
  color: var(--clr-font, #0A1027);
}

.power-form__btn--prev:hover {
  opacity: 0.7;
}

.power-form__btn--next {
  justify-content: center;
  font-size: var(--fs-base);
  background: var(--clr-green);
  color: var(--clr-light);
  width: 100%;
  border-radius: 4px;
  font-weight: 700;
  transition: .2s;
}

.power-form__btn--next:hover {
    background-color: var(--clr-dark);
    border-color: var(--clr-dark);
    color: var(--clr-green);

}

.power-form__btn.loading {
  opacity: 0.6;
  cursor: wait;
}

.power-form__btn-arrow {
  font-size: 1.2em;
}

/* ============================================================
   Form Actions Row (single-step)
   ============================================================ */
.power-form__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.power-form__required-note {
  font-size: 0.8rem;
  color: var(--clr-accent, #666);
}

/* ============================================================
   Success / Error States
   ============================================================ */
.power-form__success {
  padding: 1rem;
  background: var(--bg-success, #e6f9f0);
  border: 1px solid var(--clr-success, #27ae60);
  border-radius: var(--radius-input, 0.5rem);
  text-align: center;
  width: 100%;
}

.power-form__success[hidden] {
  display: none;
}

.power-form__success-message {
  font-size: 1.125rem;
  color: var(--clr-success, #27ae60);
}

.power-form__success-message > * {
  color: var(--clr-success, #27ae60);
}

.power-form__error {
  margin-top: 2rem;
  padding: 1rem;
  background: var(--bg-error, #fef2f2);
  border: 1px solid var(--clr-error, #ff0000);
  border-radius: var(--radius-input, 0.5rem);
   width: 100%;
}

.power-form__error[hidden] {
  display: none;
}

.power-form__error-message {
  color: var(--clr-error, #ff0000);
  margin: 0;
  font-size: 0.9375rem;
}

/* ============================================================
   Date Input
   ============================================================ */
input[type="date"].form-input {
  cursor: pointer;
}



@media screen and (max-width: 480px) {
  .power-form__progress {
    margin-top: 2rem;
    margin-bottom: 1rem;
    width: 100vw;
  }
  .power-form__step-indicator {
    display: none;
  }
}

.powerFormFile .form-label.has-notice {
  margin-bottom: 0;
}

.form__file__notice {
  font-size: var(--fs-xs, 0.75rem);
  margin-bottom: var(--m-xs, 0.25rem);
}

.power-form__file-drop-zone:focus-visible {
  text-decoration: none;
  text-decoration-thickness: 0;
  text-decoration-skip-ink: none;
  outline: var(--clr-blue);
  outline-style: solid;
  outline-width: 2px;
  outline-offset: 2px;
  z-index: 5;
}

.power-form__file-drop {
    width: 100%;

    .sr-only,
    .power-form__file-status {
        color: var(--clr-dark);
        font-size: 16px;
        font-style: normal;
        font-weight: 200;
        line-height: 142.5%;
    }

    > .power-form__file-status {
        margin-top: 8px;
    }
}

.power-form__file-drop-zone {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border: 2px dashed var(--clr-dark);
    border-radius: 6px;
    padding: 22px;
    text-align: center;
    cursor: pointer;
    color: var(--clr-dark);
    background: transparent;
    transition: background .15s ease, border-color .15s ease;
    user-select: none;

    @media screen and (max-width: 1169px) {
        text-align: left;
    }
}

.power-form__file-drop-text {
    color: var(--clr-dark);
    font-size: var(--fs-base);
    font-style: normal;
    font-weight: 200;
    line-height: 142.5%;

    @media screen and (max-width: 1169px) {
        font-size: var(--fs-xs);
    }

    @media screen and (max-width: 480px) {
        flex: 1 0 0;
    }
}

.power-form__file-drop-sub {
    display: block;
    font-size: 13px;
    color: #6b7d86;
    margin-top: 4px;
}

.power-form__file-drop.dragover .power-form__file-drop-zone {
    border-color: var(--clr-primary);
    background: rgba(27, 107, 155, 0.03);
}

.power-form__file-list {
    list-style: none;
    margin: 12px 0 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px 1%;
}

.power-form__file-list li {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    border: 1px solid #e6eef1;
    padding: 6px 8px;
    border-radius: 6px;
    min-width: 155px;
    max-width: 32.6%;
    width: 100%;

    @media screen and (max-width: 1169px) {
        max-width: 49.5%;
    }
}

main ul.power-form__file-list li:not(:last-child) {
  margin-bottom: 0;
}

.power-form__file-thumb {
    width: 48px;
    height: 48px;
    border-radius: 4px;
    object-fit: cover;
    background: #f6f8f9;
    display: inline-block;
    flex-shrink: 0;
}

.power-form__file-meta {
    flex: 1;
    min-width: 0;
}

.power-form__file-name {
    font-size: 13px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.power-form__file-size {
    font-size: 12px;
    color: var(--clr-dark);
}

.power-form__file-remove {
    background: transparent;
    border: none;
    color: #192A39;
    font-size: 14px;
    cursor: pointer;
    padding: 4px;
    margin-left: 8px;
    flex-shrink: 0;
}

@media (min-width: 1169px) {
    .power-form__file-drop-zone:focus {
        outline: none;
        box-shadow: 0 0 0 3px rgba(37, 64, 79, 0.12);
    }

    .power-form__file-drop-zone:hover {
        background: rgba(234, 243, 251, 0.4);
    }

    .power-form__file-remove:focus {
        outline: 2px solid #192A39;
        border-radius: 3px;
    }
}

.power-form__file-drop.has-error {
    .power-form__file-drop-zone {
        border: 2px dashed var(--clr-error, red);

        .power-form__file-drop-text {
            color: var(--clr-error, red);
        }

        svg path {
            stroke: var(--clr-error, red);
        }
    }
}
