@import url('base.css');

body { font-family:'Inter',Arial,sans-serif; }
.section-index,.eyebrow,.status-panel>p,.status-panel dl div,.scroll-cue,.experience-mark p,.service-number,.service-body>p,.principles-grid span,.contact-actions span,footer { font-family:'DM Mono',monospace; }
.site-header { position:fixed; transition:background .25s,backdrop-filter .25s; }
.site-header.is-scrolled { background:rgba(8,9,9,.88); backdrop-filter:blur(16px); }
.menu-toggle { display:none; border:0; background:none; color:#fff; padding:10px; }
.reveal { opacity:0; transform:translateY(24px); transition:opacity .75s ease,transform .75s ease; }
.reveal.is-visible { opacity:1; transform:none; }
.manifesto-title > span { display:block; color:inherit; }
.manifesto-title > span:last-child { color:#8b8b86; }
.brand img { width:88px; height:88px; }
.contact { align-items:start; }
.legal-name { margin-top:55px; padding:24px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:grid; gap:12px; }
.legal-name strong { font-size:18px; }
.legal-name span { color:#969894; font:11px/1.7 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.08em; }
.contact-actions { margin-top:32px; }
.contact-form { padding:38px; background:#171918; border:1px solid var(--line); display:grid; gap:22px; }
.contact-form > p { margin:0 0 12px; font-size:25px; font-weight:600; letter-spacing:-.03em; }
.contact-form label { display:grid; gap:9px; color:#a7a8a5; font:10px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.1em; }
.contact-form input,.contact-form textarea { width:100%; border:0; border-bottom:1px solid #555; border-radius:0; padding:10px 0 13px; background:transparent; color:#fff; font:16px 'Inter',Arial,sans-serif; outline:none; resize:vertical; }
.contact-form input:focus,.contact-form textarea:focus { border-color:var(--signal); }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.contact-form button { border:0; padding:18px 20px; background:var(--signal); color:#090a09; display:flex; justify-content:space-between; font-weight:700; cursor:pointer; }
.contact-form button:hover,.contact-form button:focus-visible { background:#fff; }
.contact-form small { color:#747672; line-height:1.5; }
.whatsapp-float { position:fixed; z-index:50; right:24px; bottom:24px; width:58px; height:58px; display:grid; place-items:center; border-radius:50%; background:#25d366; color:#071209; box-shadow:0 10px 28px rgba(0,0,0,.38),0 0 0 1px rgba(255,255,255,.12) inset; transition:transform .2s ease,box-shadow .2s ease,background .2s ease; }
.whatsapp-float svg { width:31px; height:31px; fill:currentColor; }
.whatsapp-float:hover,.whatsapp-float:focus-visible { transform:translateY(-4px) scale(1.04); background:#32e374; box-shadow:0 15px 35px rgba(0,0,0,.46),0 0 0 1px rgba(255,255,255,.2) inset; outline:none; }
@media (prefers-reduced-motion:reduce) { .reveal { opacity:1; transform:none; } }
@media (max-width:900px) {
  .menu-toggle { display:grid; justify-self:end; width:48px; height:42px; align-content:center; gap:5px; cursor:pointer; }
  .menu-toggle span { display:block; width:25px; height:1px; background:#fff; }
  .menu-toggle b { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .site-header .nav-cta { display:none; }
  #main-nav { display:flex; position:fixed; inset:76px 0 auto; padding:30px 20px 40px; flex-direction:column; background:#0a0b0b; border-bottom:1px solid rgba(255,255,255,.18); transform:translateY(-130%); opacity:0; transition:.3s; }
  #main-nav.is-open { transform:none; opacity:1; }
  #main-nav a { font-size:28px; letter-spacing:-.03em; }
  body.menu-open { overflow:hidden; }
  .brand img { width:66px; height:66px; }
}
@media (max-width:560px) {
  .form-row { grid-template-columns:1fr; }
  .contact-form { padding:26px 20px; }
  .whatsapp-float { right:16px; bottom:16px; width:54px; height:54px; }
  .service-body > span { display:block; margin-top:12px; font-size:13px; line-height:1.5; }
  .service-row { align-items:start; padding-top:28px; padding-bottom:28px; }
}
