:root{--link:#0D3A8C}
@media not all{:root:not([data-theme="light"]){--link:#9CC0FF}}
:root[data-theme="dark"]{--link:#9CC0FF}
.prose h2,.prose summary,.linkcard h3{color:var(--text)}
.prose strong{color:var(--text)}
.cta-band .btn-ghost{color:var(--on-ink);border-color:rgba(255,255,255,.5)}
.cta-band a:not(.btn){color:var(--on-ink)}
.hero.hero-sub{min-height:340px}
.hero-sub .hero-inner{padding-block:56px}
.hero-sub .hero-actions{justify-content:center}
.crumbs{font-size:14px;color:var(--text-dim);margin-bottom:24px}
.crumbs a{color:var(--link);text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.prose{max-width:780px}
.prose h2{margin:36px 0 12px;color:var(--text)}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{line-height:1.7;color:var(--text)}
.prose a{color:var(--link)}
.checks{list-style:none;padding:0;margin:16px 0;display:grid;gap:10px}
.checks li{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px 14px 46px;position:relative}
.checks li:before{content:"\2713";position:absolute;left:16px;top:14px;color:var(--gold-ink);font-weight:700}
.prose details{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:10px 0}
.prose summary{cursor:pointer;font-weight:600;color:var(--text)}
.prose details p{margin:10px 0 0}
.linkcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:24px}
.linkcard{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;text-decoration:none;color:var(--text);box-shadow:var(--shadow)}
.linkcard:hover{border-color:var(--gold)}
.linkcard h3{margin:0 0 8px;color:var(--text)}
.linkcard p{margin:0 0 12px;color:var(--text-dim);line-height:1.6}
.linkcard span{color:var(--gold-ink);font-weight:600}
.cta-band{background:var(--ink);color:var(--on-ink);border-radius:14px;padding:32px 24px;margin-top:48px;text-align:center}
.cta-band h2{color:var(--on-ink);margin:0 0 8px}
.cta-band p{color:var(--on-ink-dim);max-width:560px;margin:0 auto 16px}
.cta-band .hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.cta-band .cta-contact{margin:16px auto 0;font-size:14px}

/* v3: calmer layout, light by default */
.reveal{opacity:1!important;transform:none!important;transition:none!important}
section#services .services-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
section#services .svc-row{display:flex;flex-direction:column;margin:0;height:100%}
section#services .svc-row-img{width:100%;aspect-ratio:16/10;order:0;flex:none}
section#services .svc-row-img img{width:100%;height:100%;object-fit:cover;display:block}
section#services .svc-row-body{order:1;padding:18px 20px 22px}
section#services .svc-row-body p{max-width:none}
@media (max-width:900px){section#services .services-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){section#services .services-list{grid-template-columns:1fr}}

/* v4: no decorative dot after brand name */
header.nav .brand .name::after{content:none!important;display:none!important}
/* v6 readability */
body main .hero .lede{font-size:clamp(17px,2.3vw,19px)!important;line-height:1.6!important;color:#EEF2F1!important;text-shadow:0 1px 10px rgba(0,20,56,.6)}
body main section p{font-size:16px!important;line-height:1.65!important}
body main .hero .lede{font-size:clamp(17px,2.3vw,19px)!important}
body main .svc-row-body p,body main .linkcard p,body main .step p{font-size:16px!important}
body footer,body footer span,body footer a{font-size:13px!important}

@media (max-width:520px){.mo-route .mo-lbl,.mo-route .mo-lbl-acc{font-size:26px}}
/* v7 motion */
.mo-progress{position:fixed;top:0;left:0;height:3px;width:100%;background:var(--gold);transform-origin:0 50%;transform:scaleX(0);z-index:90;pointer-events:none}
.mo-bar{display:none}
@media (max-width:700px){
  .mo-bar{display:grid;grid-template-columns:1fr 1.15fr 1.35fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(0,26,70,.97);translate:0 110%;transition:translate .35s ease}
  .mo-bar.mo-show{translate:0 0}
  .mo-bar a{display:flex;align-items:center;justify-content:center;min-height:46px;border-radius:10px;font-weight:700;font-size:15px;text-decoration:none;color:#fff;background:rgba(255,255,255,.14)}
  .mo-bar .mo-wa{background:#15803d}
  .mo-bar .mo-quote{background:#F47920;color:#1c1204}
  body.mo-has-bar{padding-bottom:74px}
}
@media print{.mo-bar,.mo-progress{display:none!important}}
.svc-row-img{overflow:hidden}
.btn{transition:translate .2s ease,box-shadow .2s ease,filter .2s ease}
.btn:hover{translate:0 -2px;box-shadow:0 10px 22px rgba(0,20,56,.22);filter:brightness(1.05)}
.btn:active{translate:0 0}
.linkcard{transition:translate .25s ease,box-shadow .25s ease,border-color .25s ease}
.linkcard:hover{translate:0 -4px;box-shadow:0 14px 30px rgba(0,20,56,.14)}
section#services .svc-row{transition:translate .3s ease,box-shadow .3s ease}
section#services .svc-row:hover{translate:0 -5px;box-shadow:0 18px 36px rgba(0,20,56,.16)}
.svc-row-img img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.svc-row:hover .svc-row-img img{transform:scale(1.07)}
.mo-figure{margin:28px 0 8px}
.mo-route{width:100%;max-width:720px;height:auto;display:block;margin:0 auto}
.mo-route .mo-card{fill:var(--card);stroke:var(--line)}
.mo-route .mo-border{stroke:var(--slate);stroke-width:1.5;stroke-dasharray:5 6}
.mo-route .mo-base{fill:none;stroke:var(--line);stroke-width:6;stroke-linecap:round;stroke-dasharray:1 12}
.mo-route .mo-draw{fill:none;stroke:var(--gold);stroke-width:4;stroke-linecap:round;stroke-dasharray:1000}
.mo-route .mo-stop{fill:var(--card);stroke:var(--ink-2);stroke-width:3}
.mo-route .mo-nim{fill:var(--gold);stroke:#fff;stroke-width:3}
.mo-route .mo-ring{fill:var(--gold)}
.mo-route .mo-lbl{font:600 20px 'Work Sans',system-ui,sans-serif;fill:var(--text)}
.mo-route .mo-lbl-acc{font:700 20px 'Work Sans',system-ui,sans-serif;fill:var(--gold-ink)}
.mo-route .mo-lbl-sm{font:700 13px 'Work Sans',system-ui,sans-serif;fill:var(--slate);letter-spacing:.14em}
@media (max-width:520px){.mo-route .mo-lbl-sm{display:none}}
.mo-figure figcaption{font-size:13px;color:var(--text-dim);text-align:center;margin-top:8px}
@keyframes mo-kenburns{from{transform:scale(1)}to{transform:scale(1.14)}}
@keyframes mo-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes mo-pulse{0%{box-shadow:0 0 0 0 rgba(21,128,61,.55)}70%{box-shadow:0 0 0 14px rgba(21,128,61,0)}100%{box-shadow:0 0 0 0 rgba(21,128,61,0)}}
@keyframes mo-up{from{opacity:0;translate:0 28px}to{opacity:1;translate:0 0}}
@keyframes mo-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* v9 kinetic */
.hero .hero-bg{inset:-14% 0 auto 0;height:130%;will-change:transform}
.mo-w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.14em;margin-bottom:-.14em}
.mo-wi{display:inline-block;transform:translateY(112%);transition:transform .85s cubic-bezier(.2,.8,.2,1);transition-delay:calc(var(--i,0) * 60ms)}
.mo-split.mo-in .mo-wi{transform:none}
.mo-r{opacity:0}
.mo-r.mo-in{opacity:1;animation:mo-up .75s cubic-bezier(.2,.7,.2,1) var(--mo-d,0ms) backwards}
.mo-rot{display:inline-block;position:relative;overflow:hidden;vertical-align:bottom;padding-bottom:.14em;margin-bottom:-.14em;transition:width .5s cubic-bezier(.2,.8,.2,1);box-shadow:inset 0 -.09em 0 var(--gold)}
.mo-rw{display:inline-block;white-space:nowrap}
.mo-band{padding-block:0!important;background:var(--ink);overflow:hidden;border-block:1px solid rgba(255,255,255,.1)}
.mo-row{padding:14px 0;overflow:hidden}
.mo-row + .mo-row{border-top:1px solid rgba(255,255,255,.08)}
.mo-track{display:flex;width:max-content;animation:mo-marquee 42s linear infinite}
.mo-row2 .mo-track{animation-direction:reverse;animation-duration:54s}
.mo-item{display:inline-flex;align-items:center;font-weight:800;font-size:clamp(22px,3.4vw,38px);letter-spacing:.05em;text-transform:uppercase;color:#fff;white-space:nowrap}
.mo-item::after{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:var(--gold);margin:0 34px}
.mo-row2 .mo-item{color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.85)}
.mo-band:hover .mo-track{animation-play-state:paused}
.mo-stats{padding-block:52px!important}
.mo-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;text-align:center}
.mo-stat b{display:block;font-size:clamp(46px,6.5vw,76px);line-height:1;font-weight:800;color:var(--gold-ink);font-variant-numeric:tabular-nums}
.mo-stat span{display:block;margin-top:10px;font-weight:600;color:var(--text-dim);font-size:15px;line-height:1.4}
@media (max-width:700px){.mo-stat-grid{grid-template-columns:repeat(2,1fr);row-gap:30px}}
@media (prefers-reduced-motion:no-preference){
  html{scroll-behavior:smooth}
  section[id]{scroll-margin-top:76px}
  .hero .hero-bg img{animation:mo-kenburns 20s ease-in-out infinite alternate;transform-origin:60% 55%}
  .hero-inner .lede{animation:mo-rise .85s .9s both cubic-bezier(.2,.7,.2,1)}
  .hero-inner .hero-actions{animation:mo-rise .85s 1.1s both cubic-bezier(.2,.7,.2,1)}
  .whatsapp-btn{animation:mo-pulse 2.8s ease-out infinite}
  .whatsapp-btn:hover{animation-play-state:paused}
  .steps .step{transition:border-color .5s ease,box-shadow .5s ease}
  .steps.mo-armed .step > *{opacity:0;translate:0 16px;transition:opacity .6s ease var(--mo-d,0ms),translate .6s cubic-bezier(.2,.7,.2,1) var(--mo-d,0ms)}
  .steps.mo-armed .step.mo-in > *{opacity:1;translate:0 0}
  .steps.mo-armed .step .num{scale:.6;transition:opacity .6s ease var(--mo-d,0ms),translate .6s cubic-bezier(.2,.7,.2,1) var(--mo-d,0ms),scale .6s cubic-bezier(.3,1.6,.5,1) var(--mo-d,0ms),color .6s ease var(--mo-d,0ms)}
  .steps.mo-armed .step.mo-in .num{scale:1;color:var(--gold)}
}
@media (prefers-reduced-motion:reduce){
  .mo-bar,.btn,.linkcard,.svc-row,.svc-row-img img{transition:none!important}
  .mo-track{animation:none!important}
}

/* v10 services */
@media (min-width:601px){section#services .services-list{grid-template-columns:repeat(2,minmax(0,1fr))}section#services .svc-row-img{aspect-ratio:16/8}}
