
/* IVYNEX LP-05 — acabamento visual fiel à referência, sem alterar a identidade atual */
:root { --sky:#65b5e8; --surface-blue:#f3f8fd; }
.hero-photo { background-image:url("assets/hero-office.webp"); background-size:cover; background-position:49% center; }
.about-photo { background-image:url("assets/about-accountant.webp"); background-size:cover; background-position:center center; position:relative; isolation:isolate; }
.about-photo::after { content:""; position:absolute; inset:55% 0 0; background:linear-gradient(transparent,rgba(9,31,52,.64)); pointer-events:none; }
.photo-caption { position:absolute; left:clamp(20px,3vw,50px); bottom:28px; z-index:1; color:white; font-size:13px; font-weight:700; letter-spacing:.025em; text-shadow:0 2px 8px rgba(0,0,0,.4); }
.location-photo { height:175px; margin-bottom:18px; position:relative; border-radius:12px; overflow:hidden; background-image:linear-gradient(0deg,rgba(8,31,55,.56),transparent 58%),url("assets/fachada-escritorio-brasil.jpeg"); background-position:center 50%; background-size:cover; background-repeat:no-repeat; box-shadow:0 10px 24px rgba(16,38,63,.14); transition:background-size .35s ease,box-shadow .35s ease; }
.location-photo:hover { background-size:102%; box-shadow:0 14px 30px rgba(16,38,63,.2); }
.location-photo span { position:absolute; bottom:17px; left:20px; color:#fff; font-weight:700; font-size:14px; text-shadow:0 2px 6px #10263f; }
.map-note { margin:-8px 0 16px; color:#718198; font-size:12px; }
.service-card { border-radius:15px; }
.service-card::after { content:""; position:absolute; top:0; right:0; width:85px; height:85px; background:radial-gradient(circle at top right,rgba(94,177,232,.11),transparent 70%); border-radius:inherit; pointer-events:none; }
.service-card:focus-within { border-color:#2377bc; box-shadow:0 14px 34px rgba(7,91,168,.13); }
.trust-strip { border-radius:12px; overflow:hidden; }
.trust-strip>div { transition:background .25s ease; }
.trust-strip>div:hover { background:#f0f7fe; }
.benefits { background:linear-gradient(180deg,#fff,#f5f9fd); }
.benefit-grid>div { transition:transform .25s ease; }
.benefit-grid>div:hover { transform:translateY(-4px); }
.about-copy { z-index:2; }
@media(max-width:1050px){.hero-photo { background-position:center; }}
@media(max-width:720px){.hero-photo { background-position:center; }.about-photo{background-position:center 35%;}.location-photo{height:150px}.trust-strip{border-radius:0}.photo-caption{bottom:20px}.service-card{border-radius:12px}}
@media(prefers-reduced-motion:reduce){.trust-strip>div,.benefit-grid>div,.location-photo{transition:none}.location-photo:hover{background-size:cover}}

/* LP-06 — catálogo ampliado de serviços */
.service-card{min-height:250px}
.service-card h3{overflow-wrap:break-word}
@media(max-width:640px){.service-card{min-height:0}}

/* LP-14 — identidade do header, navegação sticky e âncoras acessíveis */
:where(#inicio,#sobre,#servicos,#contato){scroll-margin-top:104px}
.header{isolation:isolate;transition:background-color .25s ease,box-shadow .25s ease}
.header.is-scrolled{background:rgba(255,255,255,.985);box-shadow:0 9px 28px rgba(16,38,63,.12)}
.header .brand-name{font-size:14px;line-height:1.18;font-weight:650;letter-spacing:-.015em;white-space:nowrap}
.header .brand-name strong{font-size:17px;font-weight:800}
@media(max-width:1050px){
  .header{display:grid;grid-template-columns:1fr auto 1fr;gap:0}
  .header .brand{grid-column:2;margin:0;justify-self:center}
  .header .menu-toggle{grid-column:3;justify-self:end;min-width:48px;min-height:48px;display:grid;place-items:center;cursor:pointer}
  .header .nav{z-index:1}
}
@media(max-width:720px){
  :where(#inicio,#sobre,#servicos,#contato){scroll-margin-top:92px}
  .header .brand{gap:9px}
  .header .brand-name{display:inline;font-size:10px;line-height:1.16;letter-spacing:-.01em}
  .header .brand-name strong{font-size:12.5px}
}
@media(max-width:430px){
  .header{padding-inline:12px}
  .header .brand{gap:8px}
  .header .brand-logo{width:44px;height:44px;flex-basis:44px}
  .header .brand-name{font-size:9.5px}
  .header .brand-name strong{font-size:11.5px}
}
@media(prefers-reduced-motion:reduce){.header{transition:none}}

/* LP-08 — conteúdo oficial informado pelo cliente */
.tax-reform-highlight{display:grid;grid-template-columns:1.6fr 1fr;gap:3rem;align-items:center;background:linear-gradient(115deg,#f1f7ff,#fff);border-top:1px solid #dceaf8;border-bottom:1px solid #dceaf8}
.tax-reform-copy h2{font-family:Manrope,Inter,sans-serif;color:#10263f;font-size:clamp(1.8rem,3.1vw,3.1rem);line-height:1.2;margin:.8rem 0 1rem}
.tax-reform-copy h2 em{color:#075ba8;font-style:normal}.tax-reform-copy>p:not(.eyebrow){color:#536174;max-width:65ch;line-height:1.7;margin-bottom:1.5rem}
.tax-reform-side{padding:2rem;background:white;border:1px solid #dceaf8;border-radius:18px;box-shadow:0 12px 30px rgba(10,50,90,.07)}
.tax-reform-side strong{font-family:Manrope,Inter,sans-serif;color:#075ba8;font-size:1.3rem}.tax-reform-side p{line-height:1.7;color:#536174;margin-top:.75rem}
.footer-emails{display:flex;flex-direction:column;gap:.4rem;margin:1rem 0;overflow-wrap:anywhere}.footer-emails a{color:#c8d9ec;font-size:.84rem;text-decoration:none}.footer-emails a:hover{text-decoration:underline}
.contact-card a{overflow-wrap:anywhere}
@media(max-width:800px){.tax-reform-highlight{grid-template-columns:1fr;gap:1.5rem}.tax-reform-side{padding:1.35rem}}

/* LP-10 — WhatsApp flutuante com identidade azul oficial */
.floating-whatsapp{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(22px,env(safe-area-inset-bottom));z-index:999;display:flex;width:64px;height:64px;align-items:center;justify-content:center;border-radius:50%;box-shadow:0 7px 24px rgba(8,46,91,.28);transition:transform .22s ease,box-shadow .22s ease;isolation:isolate}
.floating-whatsapp img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%}
.floating-whatsapp:hover{transform:translateY(-4px) scale(1.06);box-shadow:0 12px 30px rgba(8,46,91,.35)}
.floating-whatsapp:focus-visible{outline:3px solid #0b5fb5;outline-offset:5px}
@media(max-width:600px){.floating-whatsapp{width:56px;height:56px;right:max(14px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){.floating-whatsapp{transition:none}.floating-whatsapp:hover{transform:none}}
