/* HD Fence Inc. site styles for the vanilla islands (form, picker, configurator, FAQ). Page styles are inline from the design export. */
.ef-opt{min-height:56px;padding:12px 16px;text-align:left;background:#f4f6f6;border:2px solid #cad3d2;color:#141c1b;font:inherit;font-weight:600;font-size:16px;cursor:pointer;transition:border-color 120ms cubic-bezier(0.22,1,0.36,1),background 120ms cubic-bezier(0.22,1,0.36,1);}
.ef-opt:hover{border-color:#016159;}
.ef-opt:active{transform:translateY(1px);}
.ef-opt[aria-pressed="true"]{background:#dcf5ea;border-color:#016159;}
.ef-in{min-height:48px;padding:0 12px;background:#f4f6f6;border:1px solid #cad3d2;font:inherit;font-weight:400;font-size:16px;color:#141c1b;transition:border-color 120ms cubic-bezier(0.22,1,0.36,1);width:100%;box-sizing:border-box;}
.ef-in:hover{border-color:#55605f;}
.ef-submit{min-height:48px;padding:0 20px;background:#2bc493;color:#141c1b;border:0;font:inherit;font-weight:700;font-size:16px;cursor:pointer;transition:background 120ms cubic-bezier(0.22,1,0.36,1),transform 120ms cubic-bezier(0.22,1,0.36,1),opacity 250ms cubic-bezier(0.22,1,0.36,1);}
.ef-submit:hover{background:#23ad80;}
.ef-submit:active{transform:translateY(1px);}
.ef-submit[disabled]{opacity:.6;cursor:default;}
.ef-back{min-height:48px;padding:0 16px;background:transparent;color:#016159;border:0;font:inherit;font-weight:700;font-size:16px;cursor:pointer;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;}
.ef-back:hover{color:#005950;}
[hidden]{display:none !important;}
/* Fence picker tabs */
[data-picker-tab].is-on:hover{background:#005950 !important;}
[data-picker-tab].is-on:active{background:#005950 !important;}
[data-picker-tab]:not(.is-on):hover{background:#ffffff !important;}
[data-picker-tab]:not(.is-on):active{background:#e2e6e5 !important;}
/* Configurator swatches rebuilt by JS */
[data-cfg="color"]:hover{border-color:#016159 !important;}
/* Reduced motion */
@media (prefers-reduced-motion:reduce){*{transition-duration:0.01ms !important;animation-duration:0.01ms !important;}}
