:root{--sticky-header-offset:112px}
html{scroll-padding-top:var(--sticky-header-offset)}
main [id]{scroll-margin-top:var(--sticky-header-offset)}
@media(min-width:701px) and (max-width:900px){:root{--sticky-header-offset:150px}}
@media(max-width:700px){:root{--sticky-header-offset:84px}}

/* Static UI materialized in HTML/CSS. JavaScript only enhances interaction. */
.mobile-menu-toggle{display:none}
.editorial-link{font-weight:550;text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.22em}
.actions .editorial-link{display:inline-flex;align-items:center;min-height:48px;padding:.55rem .1rem}
.button{min-height:48px;padding:.75rem 1.15rem}

/* Home hero: single centered editorial column on desktop. */
.home-hero .hero-split{display:block}
.home-hero .hero-copy{width:min(100%,780px);margin-inline:auto}

.site-footer .footer-grid{grid-template-columns:minmax(260px,1.3fr) repeat(2,minmax(0,1fr));gap:2rem;align-items:start}
.site-footer .footer-brand-column{display:flex;justify-content:center;min-width:0;grid-row:1/3}
.site-footer .footer-brand-lockup{width:min(100%,360px);margin-inline:auto;display:flex;flex-direction:column;align-items:center;text-align:center;text-decoration:none;color:var(--text);line-height:1.1}
.site-footer .footer-brand-symbol{width:clamp(118px,13vw,170px);height:auto;aspect-ratio:1;object-fit:contain;margin:0 auto .8rem}
.site-footer .footer-brand-domain{display:block;white-space:nowrap;font-size:clamp(1.28rem,2vw,1.75rem);letter-spacing:-.045em}
.site-footer .footer-brand-domain strong{font-weight:720}
.site-footer .footer-brand-domain .domain-tld{font-weight:300;color:#514b52}
.site-footer .footer-brand-tagline{display:block;margin-top:.7rem;font-size:.72rem;font-weight:400;letter-spacing:.095em;color:#3f393f;text-align:center}
.site-footer .footer-brand-divider{width:min(100%,285px);display:flex;align-items:center;gap:.7rem;margin-top:1rem;color:#514b52}
.site-footer .footer-brand-divider::before,.site-footer .footer-brand-divider::after{content:"";height:1px;flex:1;background:currentColor;opacity:.55}
.site-footer .footer-brand-dot{display:block;width:7px;height:7px;border-radius:50%;background:currentColor;flex:0 0 7px}
.site-footer .footer-brand-service{display:block;width:100%;max-width:34ch;margin:.8rem auto 0;text-align:center;text-wrap:balance;white-space:normal;line-height:1.35;font-size:.62rem;font-weight:450;letter-spacing:.12em;color:#514b52}
.site-footer .footer-brand-lockup:hover .footer-brand-domain strong{color:var(--accent-strong)}
.site-footer nav{align-items:center;text-align:center}
.site-footer nav a{justify-content:center}
.site-footer .footer-contact{grid-column:2/4;align-items:center;justify-content:center;padding-top:.25rem}
.footer-whatsapp{display:inline-flex!important;align-items:center!important;justify-content:center;gap:.65rem;min-height:48px;padding:.45rem .8rem;text-decoration:none;color:var(--text)!important;font-weight:600;line-height:1.35;text-align:center}
.footer-whatsapp-icon{display:inline-block;width:26px;height:26px;flex:0 0 26px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16.75 2.25c-7.1 0-12.87 5.76-12.87 12.86 0 2.27.6 4.49 1.73 6.44L3.77 28.25l6.86-1.8a12.87 12.87 0 1 0 6.12-24.2zm0 23.33c-1.94 0-3.84-.53-5.49-1.54l-.39-.23-4.07 1.07 1.09-3.97-.26-.41a10.42 10.42 0 1 1 9.12 5.08zm5.72-7.81c-.31-.16-1.85-.91-2.14-1.02-.29-.1-.5-.16-.71.16-.21.31-.81 1.02-.99 1.23-.18.21-.37.24-.68.08-.31-.16-1.32-.49-2.51-1.55-.93-.83-1.55-1.85-1.73-2.16-.18-.31-.02-.48.14-.64.14-.14.31-.37.47-.55.16-.18.21-.31.31-.52.1-.21.05-.39-.03-.55-.08-.16-.71-1.71-.97-2.34-.25-.63-.51-.54-.71-.55h-.6c-.21 0-.55.08-.84.39-.29.31-1.1 1.07-1.1 2.61s1.12 3.03 1.28 3.24c.16.21 2.21 3.37 5.35 4.73.75.32 1.33.52 1.78.66.75.24 1.43.21 1.97.13.6-.09 1.85-.76 2.11-1.49.26-.73.26-1.36.18-1.49-.08-.13-.29-.21-.6-.37z'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Cpath d='M16.75 2.25c-7.1 0-12.87 5.76-12.87 12.86 0 2.27.6 4.49 1.73 6.44L3.77 28.25l6.86-1.8a12.87 12.87 0 1 0 6.12-24.2zm0 23.33c-1.94 0-3.84-.53-5.49-1.54l-.39-.23-4.07 1.07 1.09-3.97-.26-.41a10.42 10.42 0 1 1 9.12 5.08zm5.72-7.81c-.31-.16-1.85-.91-2.14-1.02-.29-.1-.5-.16-.71.16-.21.31-.81 1.02-.99 1.23-.18.21-.37.24-.68.08-.31-.16-1.32-.49-2.51-1.55-.93-.83-1.55-1.85-1.73-2.16-.18-.31-.02-.48.14-.64.14-.14.31-.37.47-.55.16-.18.21-.31.31-.52.1-.21.05-.39-.03-.55-.08-.16-.71-1.71-.97-2.34-.25-.63-.51-.54-.71-.55h-.6c-.21 0-.55.08-.84.39-.29.31-1.1 1.07-1.1 2.61s1.12 3.03 1.28 3.24c.16.21 2.21 3.37 5.35 4.73.75.32 1.33.52 1.78.66.75.24 1.43.21 1.97.13.6-.09 1.85-.76 2.11-1.49.26-.73.26-1.36.18-1.49-.08-.13-.29-.21-.6-.37z'/%3E%3C/svg%3E") center/contain no-repeat}
.footer-legal{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line);font-size:.84rem;text-align:center}
.footer-legal p{margin:0}

@media(max-width:900px){
  .site-footer .footer-grid{grid-template-columns:1fr 1fr}
  .site-footer .footer-brand-column{grid-column:1/-1;grid-row:auto}
  .site-footer .footer-contact{grid-column:1/-1}
}

@media(max-width:700px){
  .site-header{position:sticky;top:0}
  .site-header .nav{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;padding:.35rem 1.25rem;min-height:68px;text-align:left}
  .site-header .brand-lockup{margin:0;justify-content:flex-start;gap:.55rem;width:auto;max-width:min(100%,20rem);min-height:0}
  .site-header .brand-lockup .brand-symbol{width:48px;height:48px;flex:0 0 48px}
  .site-header .brand-lockup .brand-copy{display:flex;flex-direction:column;gap:.22rem;min-width:0;text-align:left}
  .site-header .brand-lockup .brand-domain{display:block;font-size:clamp(.98rem,4.4vw,1.2rem);line-height:1.05;overflow:hidden;text-overflow:ellipsis}
  .site-header .brand-lockup .brand-tagline{display:none}
  .site-header .brand-lockup .brand-service{display:block;white-space:normal;font-size:.58rem;line-height:1.2;letter-spacing:.09em;color:#514b52}
  .site-header .brand-lockup .brand-service::before,.site-header .brand-lockup .brand-service::after{display:none}
  .site-header .mobile-nav-enhanced>.mobile-menu-toggle{grid-column:2;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-width:48px;min-height:48px;padding:.55rem .7rem;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text);font:inherit;font-size:.95rem;font-weight:650;cursor:pointer}
  .mobile-menu-toggle:hover,.mobile-menu-toggle[aria-expanded="true"]{background:var(--accent-soft);color:var(--accent-strong)}
  .mobile-menu-icon{font-size:1.25rem;line-height:1;width:1.15rem;text-align:center}
  .site-header .mobile-nav-enhanced .menu{display:none!important}
  .site-header .mobile-nav-enhanced.mobile-menu-open .menu{position:absolute;top:100%;left:0;right:0;z-index:30;display:flex!important;flex-direction:column;align-items:stretch;width:100%;gap:.15rem;padding:.55rem 1.25rem .85rem;background:rgba(251,249,252,.98);border-top:1px solid rgba(107,63,120,.12);border-bottom:1px solid var(--line);box-shadow:0 12px 26px rgba(55,34,63,.08);backdrop-filter:blur(14px)}
  .site-header .mobile-nav-enhanced.mobile-menu-open .menu a{display:flex!important;width:100%;min-height:48px;align-items:center;justify-content:flex-end!important;text-align:right!important;padding:.65rem .75rem;border-radius:12px;font-size:1rem;line-height:1.3}
  .site-footer .footer-grid{grid-template-columns:1fr!important;gap:1.5rem}
  .site-footer .footer-brand-column,.site-footer .footer-contact{grid-column:auto}
  .site-footer .footer-brand-lockup{margin-inline:auto;align-items:center;text-align:center}
  .site-footer nav,.site-footer .footer-grid>nav:first-of-type,.site-footer .footer-grid>nav:last-of-type{align-items:center!important;text-align:center!important}
  .site-footer .footer-brand-service{max-width:32ch;font-size:.57rem;letter-spacing:.085em}
  .site-footer .footer-brand-divider{display:flex}
  .footer-whatsapp-icon{width:22px;height:22px;flex-basis:22px}
  .hero{padding-top:2rem}
  .home-hero .hero-copy{width:100%;margin-inline:0}
}

@media(max-width:390px){
  .site-header .nav{padding-inline:1rem}
  .site-header .brand-lockup{max-width:min(100%,17rem)}
  .site-header .brand-lockup .brand-symbol{width:44px;height:44px;flex-basis:44px}
  .site-header .brand-lockup .brand-domain{font-size:.96rem}
  .site-header .brand-lockup .brand-service{font-size:.54rem;letter-spacing:.065em}
  .mobile-menu-toggle{padding-inline:.6rem}
  .site-header .mobile-nav-enhanced.mobile-menu-open .menu{padding-inline:1rem}
  .site-footer .footer-brand-service{max-width:30ch;font-size:.55rem;letter-spacing:.07em}
}

@media(prefers-reduced-motion:reduce){.site-header *{scroll-behavior:auto}}
