/* АймаСтрой — стили сайта (вынесены из компонента) */
html { scroll-behavior: smooth; }
body { margin: 0; background: #060607; }
a { color: #F4C11E; text-decoration: none; }
a:hover { color: #ffd75a; }
::selection { background: rgba(244,193,30,0.28); color: #fff; }
@keyframes amFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes amScrollDot { 0% { transform: translateY(0); opacity: 0; } 30% { opacity: 1; } 100% { transform: translateY(20px); opacity: 0; } }
@keyframes amTravel { to { transform: rotate(360deg); } }
@keyframes amPinDrop { 0% { transform: translate(-50%,-100%) translateY(-12px); opacity: 0; } 60% { opacity: 1; } 100% { transform: translate(-50%,-100%) translateY(0); opacity: 1; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
.am-input:focus { border-color: #F4C11E !important; }
.am-nav:hover { color: #F4C11E !important; }

/* SERVICES — dynamic accordion */
.am-acc { border-top: 1px solid rgba(245,242,236,0.14); }
.am-acc-head { all: unset; cursor: pointer; display: flex; align-items: center; gap: clamp(14px,2.4vw,26px); width: 100%; box-sizing: border-box; padding: clamp(20px,2.4vw,28px) 6px; }
.am-acc-num { font-family: var(--font-heading); font-weight: 700; font-size: 14px; color: rgba(245,242,236,0.45); font-feature-settings: "tnum" 1; transition: color .3s ease; }
.am-acc-title { flex: 1; font-family: var(--font-heading); font-weight: 700; font-size: clamp(16px,1.9vw,22px); line-height: 1.14; letter-spacing: -0.01em; text-transform: uppercase; transition: color .3s ease; }
.am-acc-chev { flex: none; width: 32px; height: 32px; border-radius: 50%; border: 2px solid rgba(245,242,236,0.28); display: flex; align-items: center; justify-content: center; color: #F4C11E; font-size: 17px; line-height: 1; transition: transform .4s ease, border-color .3s ease, background .3s ease; }
.am-acc-body { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .45s cubic-bezier(.22,.61,.36,1); }
.am-acc-inner { overflow: hidden; position: relative; }
.am-acc-light { position: absolute; inset: 0; z-index: 0; opacity: 0; pointer-events: none; transition: opacity .55s ease .12s; background: radial-gradient(130% 120% at 100% 100%, rgba(244,193,30,0.22), rgba(244,193,30,0) 58%); }
.am-acc.open .am-acc-light { opacity: 1; }
.am-acc.open .am-acc-body { grid-template-rows: 1fr; }
.am-acc.open .am-acc-title, .am-acc.open .am-acc-num { color: #F4C11E; }
.am-acc.open .am-acc-chev { transform: rotate(90deg); border-color: #F4C11E; background: rgba(244,193,30,0.12); }
.am-acc-head:hover .am-acc-title { color: #F4C11E; }

/* PROCESS — light pools behind the card and ignites as it reveals */
.am-proc-card { z-index: 0; }
.am-proc-card::before { content: ""; position: absolute; inset: -8px; border-radius: 26px; background: radial-gradient(58% 58% at 50% 42%, rgba(244,193,30,0.5), rgba(244,193,30,0) 72%); filter: blur(22px); opacity: 0; z-index: -1; transition: opacity .9s ease; }
.am-proc-card.am-lit::before { opacity: 0.5; }
.am-proc-card:hover::before { opacity: 0.92; }
.am-proc-card:hover { border-color: rgba(244,193,30,0.55) !important; }

/* WORKS — group covers */
.am-groupcard { transition: box-shadow .35s ease, transform .35s ease; }
.am-groupcard img, .am-groupcard video { transition: transform .55s ease; }
.am-groupcard:hover { box-shadow: 0 0 0 2px #F4C11E, 0 24px 60px rgba(0,0,0,0.6); }
.am-groupcard:hover img, .am-groupcard:hover video { transform: scale(1.06); }

@media (max-width: 1080px) {
  .am-proc-grid { grid-template-columns: repeat(3, 1fr) !important; }
}
.am-burger { display: none; }
.am-burger span { transition: transform .3s ease, opacity .3s ease; }
.am-burger.active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.am-burger.active span:nth-child(2) { opacity: 0; }
.am-burger.active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.am-menu { position: fixed; inset: 0; z-index: 70; background: rgba(8,8,9,0.98); backdrop-filter: blur(8px); transform: translateX(100%); transition: transform .42s cubic-bezier(.22,.61,.36,1); display: flex; flex-direction: column; padding: 92px clamp(24px,8vw,44px) 44px; }
.am-menu.open { transform: translateX(0); }
.am-menu-link { font-family: var(--font-heading); font-weight: 700; font-size: 26px; letter-spacing: -0.01em; text-transform: uppercase; color: #F5F2EC !important; padding: 16px 0; border-bottom: 1px solid rgba(245,242,236,0.12); }
.am-menu-link:hover { color: #F4C11E !important; }
@media (max-width: 860px) {
  .am-nav { display: none !important; }
  .am-navphone { display: none !important; }
  .am-burger { display: inline-flex !important; }
  .am-proc-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .am-about-grid, .am-contacts-grid, .am-footer-grid, .am-legal-grid { grid-template-columns: 1fr !important; }
  .am-about-grid > div:first-child { min-height: 320px !important; }
  .am-scrollhint { display: none !important; }
}
@media (max-width: 600px) {
  .am-proc-grid { grid-template-columns: 1fr !important; }
}
