/* Elektrik ve yazılım: hareketli yıldırım, devre akışı ve kod dokusu. */
body { --circuit-x: 70%; --circuit-y: 50%; --circuit-turn: 0deg; }
body[data-page="anasayfa"] { --circuit-x: 73%; --circuit-y: 52%; }
body[data-page="portfoy"] { --circuit-x: 65%; --circuit-y: 44%; --circuit-turn: 22deg; }
body[data-page="hakkimizda"] { --circuit-x: 78%; --circuit-y: 48%; --circuit-turn: 45deg; }
body[data-page="yapay-zeka"] { --circuit-x: 69%; --circuit-y: 60%; --circuit-turn: 68deg; }
body[data-page="ortakliklar"] { --circuit-x: 80%; --circuit-y: 42%; --circuit-turn: 90deg; }
body[data-page="grup-sirketleri"] { --circuit-x: 66%; --circuit-y: 55%; --circuit-turn: 115deg; }
body[data-page="iletisim"] { --circuit-x: 79%; --circuit-y: 59%; --circuit-turn: 140deg; }
body[data-page="ai-asistan"] { --circuit-x: 74%; --circuit-y: 43%; --circuit-turn: 165deg; }
body[data-page="tika-kiz-bocegi"] { --circuit-x: 63%; --circuit-y: 48%; --circuit-turn: 190deg; }
.energy-template { position: fixed; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; opacity: .38; animation: template-arrive .85s cubic-bezier(.2,.8,.2,1) both; will-change: transform, opacity; }
.home-background, .page-backdrop { z-index: -2; }
.energy-circuit { position: absolute; width: clamp(750px, 100vw, 1500px); height: auto; left: var(--circuit-x); top: var(--circuit-y); transform: translate(-50%, -50%) rotate(calc(var(--circuit-turn) * .12)); color: #5caddb; transition: left 1s cubic-bezier(.2,.8,.2,1), top 1s cubic-bezier(.2,.8,.2,1), transform 1.2s cubic-bezier(.2,.8,.2,1); }
.circuit-base { stroke: currentColor; stroke-width: .8; opacity: .37; }
.circuit-current { stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-dasharray: 65 380; filter: drop-shadow(0 0 5px #62c3ff); animation: circuit-current 9s linear infinite; }
.circuit-current-lower { animation-direction: reverse; animation-duration: 12s; }
.circuit-current-center { animation-delay: -4s; }
.circuit-nodes { fill: #b9e8ff; stroke: #66b9ef; stroke-width: 1.5; filter: drop-shadow(0 0 7px #64c5ff); animation: node-glow 6s ease-in-out infinite alternate; }
.energy-bolt { stroke: currentColor; stroke-width: 1.8; fill: #79cfff0a; stroke-linejoin: round; filter: drop-shadow(0 0 7px #62c3ff66); animation: bolt-flow 14s ease-in-out infinite alternate; }
.energy-bolt-aura { stroke: #6bc7ff; stroke-width: 34; opacity: .09; filter: blur(20px); animation: bolt-flow 14s ease-in-out infinite alternate; }
.code-brackets { stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; opacity: .5; animation: code-drift 12s ease-in-out infinite alternate; }
.energy-code { position: absolute; left: var(--circuit-x); color: #79caff; display: flex; flex-wrap: wrap; gap: 12px; width: 275px; font: .75rem/1.8 ui-monospace, Consolas, monospace; letter-spacing: .04em; animation: code-drift 10s ease-in-out infinite alternate; transition: left 1s, top 1s; }
.energy-code-top { top: 16%; transform: translateX(-45%); }
.energy-code-bottom { top: 82%; transform: translateX(-75%); animation-delay: -5s; }
.code-line { flex-basis: 100%; opacity: .65; }
.code-signal { width: 5px; height: 5px; margin-top: 8px; background: currentColor; box-shadow: 0 0 12px currentColor; }
.page-hidden .energy-template *, .template-motion-paused .energy-template *, .page-hidden .frame-circuit *, .template-motion-paused .frame-circuit * { animation-play-state: paused; }
html.route-leaving #main { animation: route-content-out .22s ease both; }
html.route-arriving #main { animation: route-content-in .65s cubic-bezier(.2,.8,.2,1) both; }
main:focus { outline: none; }
html { overflow-x: clip; }
/* İleri/geri gezinmede de içerik üstten gelir; yatay sayfa kayması oluşturmaz. */
@keyframes route-content-out { to { opacity: .25; transform: translateY(calc(var(--travel-distance) * .4)); } }
@keyframes route-content-in { from { opacity: .25; transform: translateY(calc(var(--travel-distance) * -1)); } to { opacity: 1; transform: none; } }
[data-theme="dark"] .energy-template { opacity: .68; }
[data-theme="dark"] .energy-circuit { color: #7acfff; }
@keyframes circuit-current { to { stroke-dashoffset: -890; } }
@keyframes bolt-flow { from { translate: 0 -10px; opacity: .55; } to { translate: 0 10px; opacity: 1; } }
@keyframes code-drift { from { translate: -8px 0; } to { translate: 8px -12px; } }
@keyframes node-glow { from { opacity: .4; } to { opacity: 1; } }
@keyframes template-arrive { from { opacity: 0; transform: translateY(-24px) scale(.98); } to { transform: none; } }
@media (max-width: 600px) { .energy-circuit { width: 900px; } .energy-template { opacity: .28; } }
@media (prefers-reduced-motion: reduce) {

  .energy-template, .energy-template * { animation: none; }
  .energy-template { will-change: auto; }
  .energy-circuit { transition: none; }
}

/* Açık tema: daha canlı buz mavisi, belirgin devreler ve ışık derinliği. */
:root:not([data-theme="dark"]) { --blue-light: #247ea9; --paper: #eaf6ff; --line: #bfdfef; --frame-surface: #f4fbff88; }
:root:not([data-theme="dark"]) .home-background::after { background: linear-gradient(90deg, #f4fbffe0 0%, #e7f6ff98 35%, #ccecff15 75%), linear-gradient(0deg, #d8efff70, transparent 55%); }
:root:not([data-theme="dark"]) .page-backdrop > div { opacity: .46; }
:root:not([data-theme="dark"]) .page-backdrop::after { background: linear-gradient(90deg, #f3fbffcf, #eaf7ff33 72%); }
:root:not([data-theme="dark"]) .energy-template { opacity: .58; }
:root:not([data-theme="dark"]) .energy-circuit { color: #349bcf; }
:root:not([data-theme="dark"]) .project-showcase { box-shadow: 0 22px 75px #3e9cd11c, 0 1px 0 #fff inset; border-color: #a8d4ed; }
:root:not([data-theme="dark"]) .project-slide { background: linear-gradient(125deg, #dff2ff, #f4fbff 75%); }
.primary-nav a { transition: color .25s, transform .3s; }
.primary-nav a:hover { transform: translateY(-2px); }
.product-card { display: block; transition: transform .4s, box-shadow .4s; }
.product-card:hover, .product-card:focus-visible { transform: translateY(-5px); box-shadow: 0 20px 45px #4c92bb22; }
.product-card > img { transition: transform .7s cubic-bezier(.2,.8,.2,1); }
.product-card:hover > img { transform: scale(1.025); }
@media (prefers-reduced-motion: reduce) { .primary-nav a:hover, .product-card:hover, .product-card:hover > img { transform: none; } }

/* Açılır uzmanlık kartı: bütün başlık alanı fare ve klavyeyle açılır. */
.service-grid { align-items: start; }
.service-disclosure { padding: 0; }
.service-disclosure > summary { display: block; list-style: none; cursor: pointer; padding: 32px; }
.service-disclosure > summary::-webkit-details-marker { display: none; }
.service-disclosure > summary > p { color: var(--muted); line-height: 1.8; min-height: 115px; }
.service-disclosure-cue { display: flex; align-items: center; justify-content: space-between; margin-top: 25px; font-size: .8rem; color: var(--blue-light); }
.service-disclosure-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 8px; border: 1px solid var(--line); font-size: 1.3rem; transition: transform .35s, background .35s; }
.service-disclosure[open] .service-disclosure-icon { transform: rotate(45deg); background: var(--paper); }
.service-explanation { margin: 0 32px 32px; padding-top: 24px; border-top: 1px solid var(--line); animation: story-copy-in .45s ease both; }
.service-explanation p { font-size: .9rem; color: var(--muted); line-height: 1.85; }
.service-explanation p + p { margin-top: 18px; }
.service-disclosure:focus-within { border-color: var(--blue-light); }

/* Sabit buton ölçüleri; belirgin ışık, ok ve basılma geri bildirimi. */
.button::before { transition-duration: .8s; }
.hero-actions .button-primary, .project-feature-copy .button-primary { animation: button-beacon 6s ease-in-out infinite; }
.hero-actions .button-primary:hover, .project-card-link:hover .button-primary { animation-play-state: paused; }
@keyframes button-beacon { 0%, 100% { box-shadow: 0 5px 16px #76bed52b; } 50% { box-shadow: 0 6px 26px #76bed559, 0 0 0 3px #84cfff0c; } }
.button:hover, .button:focus-visible { box-shadow: 0 8px 30px #62c6ff36; }
.button svg, .project-arrow svg { transition: translate .3s; }
.button:hover svg { translate: 3px 0; }
.project-arrow:hover svg { translate: 3px 0; }
.project-arrow[data-carousel-previous]:hover svg, .project-arrow[data-spotlight-previous]:hover svg { translate: -3px 0; }
.project-arrow:active { transform: scale(.94); }
.hero-project-preview { position: relative; cursor: pointer; }
.hero-project-preview .preview-detail::after, .product-card .text-link::after { content: ' ↗'; display: inline-block; transition: translate .3s; }
.hero-project-preview:hover .preview-detail::after, .product-card:hover .text-link::after { translate: 4px -3px; }
.preview-status > span { animation: node-glow 3s ease-in-out infinite alternate; }
.project-card-link { cursor: pointer; }
.project-card-link .project-flow { transition: transform .45s, border-color .45s, box-shadow .45s; }
.project-card-link:hover .project-flow, .project-card-link:focus-visible .project-flow { transform: translateY(-5px); border-color: var(--blue-light); box-shadow: 0 15px 45px #62c6ff18; }
.project-card-link:hover .button { transform: translateY(-3px); }
.project-card-link:hover .button::before { transform: translateX(110%); }
.project-card-link .text-link { display: inline-block; }
.company-card-link { cursor: pointer; display: flex; flex-direction: column; }
.company-card-link .company-visit { margin-top: auto; align-self: flex-start; }
.company-card-link > p { margin-bottom: 28px; }
.button-icon { display: inline-flex; }
.company-card-link .company-visit svg { width: 18px; height: 18px; }
.company-card-link:hover .company-visit, .company-card-link:focus-visible .company-visit { transform: translateY(-3px); box-shadow: 0 8px 25px #62c6ff26; }
.company-card-link:hover .company-visit::before { transform: translateX(110%); }
.company-card-link:hover .company-visit svg { translate: 3px 0; }
/* Ana sayfada halka, diğer sayfalarda yıldırım; kablolar bütün görünümü kaplar. */
.energy-home-ring { display: none; position: absolute; inset: -8%; width: 116%; height: 116%; max-width: none; object-fit: cover; opacity: .9; mask-image: linear-gradient(90deg, #0002, #0007 35%, #000 65%); transform-origin: 65% 50%; animation: ring-orbit 18s ease-in-out infinite; }
body[data-page="anasayfa"] .energy-home-ring { display: block; }
body[data-page="anasayfa"] .energy-circuit { display: none; }
.hero-spotlight { justify-self: end; align-self: end; width: 290px; position: relative; }
.hero-spotlight .hero-project-preview { width: 100%; min-height: 335px; padding: 24px; animation: spotlight-in .6s ease both; }
.hero-project-preview[hidden], .spotlight-controls[hidden] { display: none; }
.preview-cover { width: 100%; height: 105px; object-fit: cover; border-radius: 8px; margin-top: 18px; }
.hero-spotlight h2 { font-size: 1.6rem; margin-top: 18px; }
.hero-spotlight .preview-detail { margin-top: 18px; }
.spotlight-controls { display: flex; gap: 8px; justify-content: flex-end; margin-top: 12px; }
.spotlight-controls .project-arrow { backdrop-filter: blur(12px); background: var(--frame-surface); }
.project-field-visual { position: relative; border: 1px solid #85c9ed69; border-radius: 18px; overflow: hidden; box-shadow: 0 20px 70px #4eabe322; }
.project-field-visual img { width: 100%; aspect-ratio: 1.3; object-fit: cover; transition: transform .8s; }
.project-card-link:hover .project-field-visual img { transform: scale(1.035); }
.field-scan { position: absolute; inset: 10% 0 auto; height: 1px; background: linear-gradient(90deg, transparent, #bbf0ff, transparent); box-shadow: 0 0 18px #9feaff; animation: field-scan 9s ease-in-out infinite alternate; pointer-events: none; }
.page-hidden .field-scan, .template-motion-paused .field-scan { animation-play-state: paused; }
.field-tags { position: absolute; inset: auto 18px 18px; display: flex; flex-wrap: wrap; gap: 8px; }
.field-tags span { padding: 8px 12px; border: 1px solid #b7ecff38; border-radius: 8px; font-size: .7rem; background: #102135de; color: #d4f1ff; backdrop-filter: blur(8px); }
.home-tika .project-feature-copy h2 > span { color: var(--blue-light); }
@keyframes spotlight-in { from { opacity: .4; translate: 10px 0; } to { opacity: 1; translate: 0 0; } }
@keyframes field-scan { to { top: 85%; opacity: .5; } }
@media (max-width: 600px) {
  .hero-spotlight { width: 100%; justify-self: stretch; }
  .hero-spotlight .hero-project-preview { min-height: 220px; padding: 20px; }
  .hero-spotlight .preview-cover { float: right; width: 34%; height: 100px; margin: 16px 0 0 12px; }
  .hero-spotlight h2 { font-size: 1.4rem; }
  .spotlight-controls { margin-top: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-spotlight .hero-project-preview, .field-scan { animation: none; }
  .project-field-visual img { transition: none; }
  .project-arrow { transition: none; }
  .project-arrow:hover { transform: none; }
  .project-arrow[data-spotlight-previous]:hover svg { translate: none; }
  .project-card-link:hover .project-field-visual img { transform: none; }
}
.energy-cables { position: absolute; inset: 0; width: 100%; height: 100%; color: #71bfe6; }
.cable-base { stroke: currentColor; stroke-width: 1; opacity: .25; }
.cable-flow { stroke: currentColor; stroke-width: 1.6; stroke-dasharray: 75 500; filter: drop-shadow(0 0 4px #80d5ff); animation: circuit-current 12s linear infinite; }
.energy-cables path { vector-effect: non-scaling-stroke; }
.site-header, .site-footer { position: relative; isolation: isolate; }
.site-header { position: sticky; }
.frame-circuit { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; pointer-events: none; color: #59a7d1; overflow: hidden; }
.frame-circuit path { vector-effect: non-scaling-stroke; }
.frame-circuit-base { stroke: currentColor; stroke-width: .9; opacity: .19; }
.frame-circuit-flow { stroke: currentColor; stroke-width: 1.2; stroke-dasharray: 50 430; opacity: .6; animation: circuit-current 15s linear infinite; filter: drop-shadow(0 0 3px #68c7ff); }
.site-footer .frame-circuit-flow { animation-direction: reverse; }
body[data-page="anasayfa"] .assistant-evolution, body[data-page="anasayfa"] .home-explore, body[data-page="anasayfa"] .home-project { background: #edf8ff73; backdrop-filter: blur(2px); }
[data-theme="dark"] body[data-page="anasayfa"] .assistant-evolution, [data-theme="dark"] body[data-page="anasayfa"] .home-explore, [data-theme="dark"] body[data-page="anasayfa"] .home-project { background: #0b172a75; }
.home-background .hero-art { background: linear-gradient(125deg, transparent 30%, #409bce26 65%, transparent 85%), linear-gradient(165deg, transparent 40%, #62c9ff1c 65%, transparent 80%); }
.home-background::after { background: linear-gradient(90deg, #f4fbffb3, transparent 75%); }
[data-theme="dark"] .home-background::after { background: linear-gradient(90deg, #0a1020a8, transparent 75%); }
@media (max-width: 600px) {
  .service-disclosure { padding: 0; }
  .service-disclosure > summary { padding: 25px; }
  .service-disclosure > summary > p { min-height: 0; }
  .service-explanation { margin: 0 25px 25px; }
  .energy-code { font-size: .6rem; opacity: .7; }
}
@media (prefers-reduced-motion: reduce) {
  .frame-circuit * { animation: none; }
  .hero-actions .button-primary, .project-feature-copy .button-primary { animation: none; }
  .service-explanation, .preview-status > span { animation: none; }
  .button, .button::before, .button svg, .project-arrow svg, .service-disclosure-icon, .project-card-link .project-flow { transition: none; }
  .button:hover, .button:focus-visible, .button:active, .product-card:focus-visible, .project-card-link:hover .project-flow, .project-card-link:focus-visible .project-flow, .project-card-link:hover .button, .project-arrow:active { transform: none; }
  .button:hover svg, .project-arrow:hover svg, .project-arrow[data-carousel-previous]:hover svg, .hero-project-preview:hover .preview-detail::after, .product-card:hover .text-link::after { translate: none; }
  .company-card-link:hover .company-visit, .company-card-link:focus-visible .company-visit { transform: none; }
  .company-card-link:hover .company-visit svg { translate: none; }
}

/* Three blue tones; movement uses transform/opacity rather than animated blur. */
:root { --motion-blue-ice: #c2eeff; --motion-blue-sky: #69c8f4; --motion-blue-deep: #2c82ce; }
/* Resmî kare logo değiştirilmeden, açık bir zemin üzerinde gösterilir. */
.brand { position: relative; flex-shrink: 0; }
.brand-logo, [data-theme="dark"] .brand-logo { width: 70px; height: 70px; padding: 4px; background: #edf6fb; border-radius: 50%; filter: none; }
.about .page-title span, .about-copy > .lead,
.ai-section :is(.ai-monogram, .step-number),
.ai-section .ai-faq summary::after { color: var(--ink); }
/* Hareket kartın tamamında kalır; metin ve logo yerinden oynamaz. */
.company-card-link { position: relative; overflow: hidden; transition: border-color .25s, box-shadow .25s; }
.company-card-link::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(115deg, transparent 15%, #c2eeff13 38%, #69c8f426 50%, #2c82ce10 62%, transparent 85%);
  transform: translateX(-110%); animation: group-card-light 12s ease-in-out infinite;
}
.company-card-link:nth-child(2)::after { animation-delay: -4s; }
.company-card-link:nth-child(3)::after { animation-delay: -8s; }
.company-card-link:hover, .company-card-link:focus-visible { border-color: var(--motion-blue-sky); box-shadow: 0 8px 28px #2c82ce25; }
.company-card-link:focus-visible { outline: 2px solid var(--motion-blue-sky); outline-offset: 4px; }
@keyframes group-card-light {
  0%, 45% { transform: translateX(-110%); opacity: 0; }
  55% { opacity: 1; }
  85%, 100% { transform: translateX(110%); opacity: 0; }
}
.page-hidden .company-card-link::after, .template-motion-paused .company-card-link::after,
html.is-scrolling .company-card-link::after { animation-play-state: paused; }
@keyframes ring-orbit {
  0%, 100% { transform: translate3d(-1%, -.5%, 0) scale(1.02) rotate(-2deg); }
  50% { transform: translate3d(1%, 1%, 0) scale(1.07) rotate(2deg); }
}
.company-card-link .company-visit {
  color: #082b49;
  background: linear-gradient(115deg, var(--motion-blue-ice), var(--motion-blue-sky) 58%, #8dd7f8);
  border-color: #8cd4f0;
  box-shadow: 0 4px 16px #2c82ce22;
}
[data-theme="dark"] .company-card-link .company-visit {
  color: #effaff;
  background: linear-gradient(115deg, #174575, var(--motion-blue-deep) 58%, #226da4);
  border-color: #69c8f466;
}
.company-card-link .company-visit::before { animation: none; }
.page-hidden .company-visit::before, .template-motion-paused .company-visit::before { animation-play-state: paused; }

/* Large blurred surfaces repaint while scrolling; keep translucent colors instead. */
.energy-template { will-change: auto; }
.home-background .hero-art { animation: none; }
body[data-page="anasayfa"] :is(.assistant-evolution, .home-explore, .home-project),
.site-header, .site-header.is-scrolled, .site-footer,
[data-theme="dark"] :is(.site-header, .site-header.is-scrolled, .site-footer),
.page-navigation, .hero-project-preview, .spotlight-controls .project-arrow, .field-tags span { backdrop-filter: none; }
.site-header, .site-header.is-scrolled { background: #f3faff; }
[data-theme="dark"] .site-header, [data-theme="dark"] .site-header.is-scrolled { background: #192a40; }
html.is-scrolling .energy-template *, html.is-scrolling .frame-circuit *,
html.is-scrolling .field-scan, html.is-scrolling .company-visit::before { animation-play-state: paused; }
.energy-bolt-aura { filter: none; stroke-width: 14; }
.circuit-current, .circuit-nodes, .cable-flow, .frame-circuit-flow { filter: none; }
.code-brackets, .energy-code, .circuit-nodes { animation: none; }
.hero-actions .button-primary, .project-feature-copy .button-primary { animation: none; }
.field-scan { animation-duration: 16s; }
@media (max-width: 860px) {
  .energy-code, .energy-bolt-aura { display: none; }
  .circuit-current-lower, .circuit-current-center, .frame-circuit-flow { animation: none; }
}

/* Ana başlıklar her ekran genişliğinde üst çubukta görünür. */
.primary-nav { display: flex; position: static; flex: 1; align-items: center; gap: 4px; min-width: 0; width: auto; max-height: none; padding: 0; overflow: visible; border: 0; box-shadow: none; background: transparent; font-size: .85rem; font-weight: 600; }
.nav-row { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 4px; min-width: 0; }
.nav-row > a, .nav-dropdown > summary { min-height: 44px; padding: 10px 8px; border-radius: 8px; display: flex; align-items: center; white-space: nowrap; }
.primary-nav a:hover, .primary-nav a:focus-visible { color: var(--ink); background: var(--paper); }
.primary-nav a:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
.primary-nav a:not(.nav-contact)::after { left: 8px; bottom: 4px; width: calc(100% - 16px); background: currentColor; }
.primary-nav .nav-contact { min-height: 44px; width: auto; margin: 0; padding: 10px 8px; }
.primary-nav { --nav-selected-color: #226389; }
[data-theme="dark"] .primary-nav { --nav-selected-color: #95cdec; }
.primary-nav a[aria-current="page"] { color: var(--nav-selected-color); }
.header-inner { min-height: 88px; padding-block: 8px; gap: 16px; }
.header-actions, .header-inner > .brand { flex-shrink: 0; }
.menu-toggle { display: none; }
@media (max-width: 1240px) {
  .header-inner { display: grid; grid-template-columns: 1fr auto; gap: 4px 16px; }
  .header-inner > .brand { grid-column: 1; grid-row: 1; justify-self: start; }
  .header-actions { grid-column: 2; grid-row: 1; }
  .primary-nav { grid-column: 1 / -1; grid-row: 2; width: 100%; justify-content: center; }
  .nav-row { gap: 2px; }
  .nav-row > a, .nav-dropdown > summary, .primary-nav .nav-contact { padding-inline: 6px; font-size: .8rem; }
}
@media (max-width: 600px) {
  .header-inner { gap: 6px 8px; }
  .nav-row { gap: 2px 4px; }
  .nav-row > a, .nav-dropdown > summary, .primary-nav .nav-contact { min-height: 40px; padding: 8px 6px; font-size: .75rem; }
}
.nav-dropdown { position: relative; }
.nav-dropdown > summary { gap: 8px; cursor: pointer; list-style: none; }
.nav-dropdown > summary::-webkit-details-marker { display: none; }
.nav-dropdown > summary::after { content: ''; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
.nav-dropdown[open] > summary::after { transform: rotate(225deg); }
.nav-dropdown > summary:hover, .nav-dropdown > summary:focus-visible { color: var(--ink); background: var(--paper); }
.nav-dropdown > summary:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
.nav-dropdown.is-current > summary { color: var(--nav-selected-color); }
.nav-submenu { position: absolute; z-index: 1; top: calc(100% + 8px); left: 0; width: 250px; max-width: calc(100vw - 32px); display: flex; flex-direction: column; padding: 10px; border: 1px solid var(--line); border-radius: 12px; background: var(--page-background); box-shadow: 0 16px 38px #071b342b; }
.nav-dropdown:not([open]) > .nav-submenu { display: none; }
.nav-submenu::before { content: ''; position: absolute; top: -9px; left: 0; right: 0; height: 9px; }
.nav-submenu a { display: flex; align-items: center; min-height: 44px; padding: 10px 14px; border-radius: 7px; color: var(--ink); white-space: normal; }
.nav-submenu a:hover, .nav-submenu a:focus-visible { transform: none; }
@media (max-width: 600px) {
  .nav-row { position: relative; }
  .nav-dropdown { position: static; }
  .nav-submenu { left: 0; right: 0; margin-inline: auto; width: min(250px, 100%); }
}
@media (prefers-reduced-motion: reduce) {
  .energy-home-ring, .company-card-link::after, .company-card-link .company-visit::before { animation: none; }
  .company-card-link { transition: none; }
}
