/* FOM Group static site — design-system component styles (from FOM DS Button / Input / Select) */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;font-family:var(--font-text);background:#fff}
[hidden]{display:none!important}
img{max-width:100%}

.fom-btn{--_bg:var(--fom-red);--_fg:#fff;--_bd:transparent;display:inline-flex;align-items:center;justify-content:center;gap:.5em;font-family:var(--font-text);font-weight:var(--fw-semibold);font-feature-settings:"ss01";border:1.5px solid var(--_bd);background:var(--_bg);color:var(--_fg);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;text-decoration:none;transition:background var(--dur-fast) var(--ease-standard),border-color var(--dur-fast) var(--ease-standard),color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard);-webkit-tap-highlight-color:transparent}
.fom-btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}
.fom-btn--md{height:44px;padding:0 20px;font-size:var(--fs-body)}
.fom-btn--sm{height:36px;padding:0 14px;font-size:var(--fs-body-sm);border-radius:var(--radius-sm)}
.fom-btn--lg{height:54px;padding:0 28px;font-size:var(--fs-body-lg)}
.fom-btn--block{width:100%}
.fom-btn--primary{--_bg:var(--action-primary);--_fg:var(--action-primary-fg)}
.fom-btn--primary:hover{--_bg:var(--action-primary-hover);color:#fff}
.fom-btn--primary:active{--_bg:var(--action-primary-active)}
.fom-btn--secondary{--_bg:var(--surface-input);--_fg:var(--text-strong);--_bd:var(--border-default)}
.fom-btn--secondary:hover{--_bg:var(--surface-hover);--_bd:var(--border-strong);color:var(--text-strong)}
.fom-btn--secondary:active{--_bg:var(--surface-hover-strong)}
.fom-btn--ghost{--_bg:transparent;--_fg:var(--text-strong)}
.fom-btn--ghost:hover{--_bg:var(--surface-hover)}
.fom-btn--inverse{--_bg:#fff;--_fg:var(--fom-red)}
.fom-btn--inverse:hover{--_bg:rgba(255,255,255,.88);color:var(--fom-red)}
.fom-btn svg{width:1.15em;height:1.15em;flex:none}

.fom-field{display:flex;flex-direction:column;gap:6px;font-family:var(--font-text);width:100%}
.fom-field__label{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}
.fom-field__wrap{display:flex;align-items:center;gap:8px;background:var(--surface-input);border:1.5px solid var(--border-default);border-radius:var(--radius-md);padding:0 12px;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}
.fom-field__wrap:focus-within{border-color:var(--fom-red);box-shadow:var(--shadow-focus)}
.fom-field__input{flex:1;border:0;outline:0;background:transparent;font:inherit;font-feature-settings:"ss01";color:var(--text-strong);height:42px;font-size:var(--fs-body);min-width:0}
.fom-field__input::placeholder{color:var(--text-subtle);font-size:var(--fs-body-sm)}

.fom-select{display:flex;flex-direction:column;gap:6px;font-family:var(--font-text);width:100%}
.fom-select__label{font-size:var(--fs-body-sm);font-weight:var(--fw-semibold);color:var(--text-strong)}
.fom-select__wrap{position:relative;display:flex;align-items:center}
.fom-select__el{appearance:none;-webkit-appearance:none;width:100%;height:44px;border:1.5px solid var(--border-default);border-radius:var(--radius-md);background:var(--surface-input);color:var(--text-strong);font:inherit;font-feature-settings:"ss01";font-size:var(--fs-body);padding:0 40px 0 12px;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-standard),box-shadow var(--dur-fast) var(--ease-standard)}
.fom-select__el:focus{outline:0;border-color:var(--fom-red);box-shadow:var(--shadow-focus)}
.fom-select__chev{position:absolute;right:12px;pointer-events:none;color:var(--text-muted);display:inline-flex}

.form-done{display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border-radius:10px;background:var(--status-success-bg);color:#0C6B39;font-size:14px;font-weight:600}

/* Desktop pages at narrow widths: burger opens the main menu as a drop-down */
@media (max-width:1180px){
  header .navlinks.open{display:flex!important;position:absolute;top:76px;left:0;right:0;flex-direction:column;gap:0!important;margin:0!important;padding:8px 16px 16px;background:#fff;border-bottom:1px solid var(--border-subtle);box-shadow:var(--shadow-md);animation:fomDown .3s cubic-bezier(.16,1,.3,1) both}
  header .navlinks.open a{display:flex;align-items:center;min-height:52px;border-bottom:1px solid var(--border-subtle);font-size:18px;font-weight:600}
}
