/* Clearfield Systems — Custom Styles (M2 assets folder) */
html { scroll-behavior: smooth; }

/* Scale-up scroll animation */
.su { opacity: 0; transform: scale(.96); transition: opacity .55s ease, transform .55s ease; }
.su.vis { opacity: 1; transform: scale(1); }

/* Cookie bar */
#ck-bar { transition: transform .35s ease, opacity .35s ease; }
#ck-bar.ck-off { transform: translateY(110%); opacity: 0; pointer-events: none; }

/* FAQ */
details summary { cursor: pointer; list-style: none; }
details summary::-webkit-details-marker { display: none; }
details summary::marker { display: none; }
details[open] .arr { transform: rotate(180deg); }
.arr { transition: transform .2s ease; }

/* Focus */
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible {
  outline: 2px solid #ca8a04; outline-offset: 2px;
}

/* Buttons */
.btn-icon { transition: background .2s, border-color .2s, transform .15s, box-shadow .2s; }
.btn-icon:hover { transform: scale(1.02); box-shadow: 0 4px 16px rgba(202,138,4,.18); }

/* Cards */
.bcard { transition: box-shadow .25s, border-color .25s; }
.bcard:hover { box-shadow: 0 6px 20px rgba(0,0,0,.06); border-color: #ca8a04; }

/* Mobile menu */
#mob-dd { max-height: 0; overflow: hidden; transition: max-height .35s ease; }
#mob-dd.open { max-height: 500px; }

/* Form inputs */
.fi { transition: border-color .2s, box-shadow .2s; }
.fi:focus { border-color: #ca8a04; box-shadow: 0 0 0 3px rgba(202,138,4,.1); }
