/* --- sheet inline --- */
.sc-placeholder { background: color-mix(in srgb, currentcolor 8%, transparent); border: 1px solid color-mix(in srgb, currentcolor, transparent); border-radius: 2px; box-sizing: border-box; overflow: hidden; }
@keyframes sc-shine { 
  0% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
html.sc-dc-streaming .sc-placeholder, html.sc-dc-streaming .sc-interp.sc-missing { position: relative; background: color-mix(in srgb, currentcolor 5%, transparent); border-color: transparent; }
html.sc-dc-streaming .sc-placeholder::before, html.sc-dc-streaming .sc-interp.sc-missing::before { content: ""; position: absolute; inset: 0px; pointer-events: none; background: linear-gradient(90deg, rgba(217, 119, 87, 0) 25%, rgba(247, 225, 211, 0.95) 37%, rgba(217, 119, 87, 0) 63%) 0% 0% / 400% 100%; animation: 1.4s ease 0s infinite normal none running sc-shine; }
html.sc-dc-streaming .sc-placeholder:nth-child(n+9 of .sc-placeholder)::before, html.sc-dc-streaming .sc-interp.sc-missing:nth-child(n+9 of .sc-interp.sc-missing)::before { animation: auto ease 0s 1 normal none running none; background: color-mix(in srgb, currentcolor 8%, transparent); }
.sc-placeholder-error { padding: 4px 8px; font: 11px / 1.4 ui-monospace, monospace; color: color-mix(in srgb, currentcolor 70%, transparent); word-break: break-word; }
.sc-interp.sc-missing { display: inline-block; width: 2em; height: 1em; overflow: hidden; vertical-align: text-bottom; background: rgba(255, 255, 255, 0.3); border: 1px solid rgba(0, 0, 0, 0.5); border-radius: 2px; box-sizing: border-box; color: transparent; user-select: none; }
.sc-interp.sc-unresolved { font-family: ui-monospace, monospace; font-size: 0.85em; color: color-mix(in srgb, currentcolor, transparent); background: color-mix(in srgb, currentcolor 10%, transparent); border-radius: 3px; padding: 0px 3px; }
.sc-host.sc-has-error { position: relative; }
.sc-logic-error { position: absolute; top: 8px; left: 8px; z-index: 2147483647; max-width: 60ch; padding: 6px 10px; background: rgb(176, 0, 32); color: rgb(255, 255, 255); font: 12px / 1.4 ui-monospace, monospace; border-radius: 4px; white-space: pre-wrap; pointer-events: none; }
@media print {
  @page { margin: 0.5cm; }
  figure, table { break-inside: avoid; }
  #dc-root, #dc-root > .sc-host { height: auto; }
  *, ::before, ::after { print-color-adjust: exact; backdrop-filter: none !important; animation-delay: -99s !important; animation-duration: 0.001s !important; animation-iteration-count: 1 !important; animation-fill-mode: both !important; animation-play-state: running !important; transition-duration: 0s !important; }
}

/* --- sheet inline --- */
x-dc { display: none !important; }

/* --- sheet inline --- */
.scp0:hover { border-color: var(--accent, #FF8A1E); color: var(--accent, #FF8A1E); background: rgba(255, 138, 30, 0.06); }
.scp1:hover { border-color: rgba(255, 138, 30, 0.4); background: rgba(255, 138, 30, 0.04); }
.scp2:hover { transform: translateY(-2px); box-shadow: rgba(255, 138, 30, 0.45) 0px 16px 38px; }
.scp3:hover { border-color: rgba(255, 138, 30, 0.5); background: rgba(255, 138, 30, 0.08); }

/* --- sheet inline --- */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; max-width: 100%; }
body { margin: 0px; background: rgb(11, 10, 8); color: rgb(242, 236, 225); font-family: Inter, sans-serif; -webkit-font-smoothing: antialiased; overflow-x: hidden; width: 100%; max-width: 100%; }
a { color: inherit; text-decoration: none; }
a:hover { color: rgb(255, 138, 30); }
::selection { background: rgb(255, 138, 30); color: rgb(11, 10, 8); }
input, textarea { font-family: Inter, sans-serif; }
input::placeholder, textarea::placeholder { color: rgb(111, 106, 96); }
input:focus, textarea:focus { outline: none; border-color: rgb(255, 138, 30) !important; }
@keyframes pulseGlow { 
  0%, 100% { opacity: 0.5; }
  50% { opacity: 0.85; }
}
@keyframes floaty { 
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-12px); }
}
@media (max-width: 900px) {
  .nav { display: none !important; }
  .nav-wrap { padding: 0px 20px !important; position: absolute !important; }
  .contact-grid { grid-template-columns: 1fr !important; }
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 32px !important; }
}
@media (max-width: 560px) {
  .nav-wrap { padding: 0px 16px !important; }
  .footer-grid { grid-template-columns: 1fr !important; }
}
.mnav-toggle { display: none; }
.mnav-btn { display: none; }
.mnav-menu { display: none; }
@media (max-width: 900px) {
  .mnav-btn { display: inline-flex; flex-direction: column; gap: 4px; width: 42px; height: 42px; align-items: center; justify-content: center; border: 1px solid rgba(245, 240, 232, 0.18); border-radius: 12px; background: rgba(17, 16, 13, 0.82); backdrop-filter: blur(16px); cursor: pointer; pointer-events: auto; }
  .mnav-btn span { width: 18px; height: 2px; background: rgb(242, 236, 225); border-radius: 2px; transition: 0.25s; }
  .mnav-toggle:checked ~ .mnav-btn span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
  .mnav-toggle:checked ~ .mnav-btn span:nth-child(2) { opacity: 0; }
  .mnav-toggle:checked ~ .mnav-btn span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }
  .mnav-toggle:checked ~ .mnav-menu { display: flex; }
  .mnav-menu { position: fixed; top: 76px; left: 16px; right: 16px; flex-direction: column; gap: 2px; background: rgba(17, 16, 13, 0.98); backdrop-filter: blur(18px); border: 1px solid rgba(245, 240, 232, 0.12); border-radius: 18px; padding: 12px; z-index: 200; pointer-events: auto; box-shadow: rgba(0, 0, 0, 0.7) 0px 30px 60px -20px; }
  .mnav-menu a { padding: 13px 16px; border-radius: 10px; color: rgb(242, 236, 225); font-family: Inter, sans-serif; font-weight: 600; font-size: 15px; }
  .mnav-menu a:hover { background: rgba(255, 138, 30, 0.1); color: rgb(255, 138, 30); }
}
@media (max-width: 700px) {
  footer .footer-grid { background: rgb(16, 14, 11); border: 1px solid rgba(245, 240, 232, 0.09); border-radius: 24px; margin: 0px 16px; display: block !important; padding: 28px 24px !important; }
  footer .footer-grid > div:first-child { display: block !important; margin-bottom: 26px; }
  footer .footer-grid > div:first-child > div { justify-content: center; }
  footer .footer-grid > div:first-child p { max-width: 100% !important; text-align: justify !important; }
  footer .footer-grid > div { margin-bottom: 24px; }
  footer .footer-grid > div:last-child { margin-bottom: 0px; }
  footer .footer-grid > div > div:last-child { flex-flow: wrap !important; gap: 14px 26px !important; }
  footer > div:last-child { text-align: center; padding-bottom: 40px; flex-direction: column !important; align-items: center !important; gap: 18px !important; }
}
@media (max-width: 900px) {
  .footer-logo { height: 36px !important; }
}

