@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Newsreader:opsz,wght@6..72,500;6..72,600;6..72,700&display=swap');

:root{
  --lp-navy:#073a5a;
  --lp-navy-2:#102f45;
  --lp-ink:#0e2536;
  --lp-text:#173244;
  --lp-muted:#405564;
  --lp-gold:#a9852f;
  --lp-gold-strong:#765512;
  --lp-gold-soft:#e8d8aa;
  --lp-paper:#f6f3ea;
  --lp-card:#fffdf7;
  --lp-fog:#eef4f6;
  --lp-line:rgba(7,58,90,.14);
  --lp-ease:cubic-bezier(.16,1,.3,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth; background:var(--lp-paper); overflow-x:clip}
body{
  font-family:'Manrope',system-ui,sans-serif;
  color:var(--lp-ink);
  background:
    radial-gradient(circle at 8% 4%, rgba(169,133,47,.16), transparent 34rem),
    radial-gradient(circle at 88% 10%, rgba(7,58,90,.14), transparent 30rem),
    linear-gradient(180deg,#faf8f1 0%,#eef4f6 45%,#f7f2e7 100%) !important;
  overflow-x:hidden;
}
body:before{
  content:""; position:fixed; inset:0; z-index:80; pointer-events:none; opacity:.035;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='256' height='256' filter='url(%23n)' opacity='.85'/%3E%3C/svg%3E");
}
::selection{background:rgba(169,133,47,.28)}
:focus-visible{outline:2px solid var(--lp-gold)!important; outline-offset:4px}

/* Scroll margin for anchor links — compensate fixed nav */
[id]{scroll-margin-top:96px}

.lp-serif{font-family:'Newsreader',serif; letter-spacing:-.045em}
.lp-container{width:min(100% - 28px, 1240px); margin-inline:auto}
.lp-page-main{padding-top:96px}
.lp-section{padding-block:clamp(64px,8vw,108px)}
.lp-eyebrow{display:inline-flex;align-items:center;gap:10px;border:1px solid rgba(169,133,47,.28);background:rgba(255,255,255,.46);color:var(--lp-navy);border-radius:999px;padding:8px 12px;font-size:10px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;backdrop-filter:blur(14px)}
.lp-eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--lp-gold);box-shadow:0 0 0 5px rgba(169,133,47,.13)}
.lp-h1{font-family:'Newsreader',serif;font-size:clamp(46px,11vw,128px);line-height:.86;letter-spacing:-.075em;color:var(--lp-navy);text-wrap:balance}
.lp-h2{font-family:'Newsreader',serif;font-size:clamp(38px,7vw,86px);line-height:.92;letter-spacing:-.06em;color:var(--lp-navy);text-wrap:balance}
.lp-lead{font-size:clamp(16px,2vw,22px);line-height:1.6;color:var(--lp-muted);max-width:68ch;text-wrap:pretty}
.lp-small{font-size:13px;line-height:1.55;color:var(--lp-muted)}

.lp-nav{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:70;width:min(calc(100% - 24px),1180px);border:1px solid rgba(7,58,90,.12);border-radius:999px;background:rgba(255,255,255,.72);backdrop-filter:blur(20px);box-shadow:0 18px 60px rgba(7,58,90,.10)}
.lp-nav-inner{height:64px;display:flex;align-items:center;justify-content:space-between;padding:8px 10px 8px 14px;gap:12px}
.lp-brand{display:flex;align-items:center;gap:10px;text-decoration:none;min-width:0;color:var(--lp-navy)}
.lp-brand img{height:44px;width:auto;object-fit:contain}.lp-brand span{font-weight:800;letter-spacing:-.03em;white-space:nowrap}
.lp-links{display:flex;align-items:center;gap:4px}.lp-links a{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:rgba(14,37,54,.68);text-decoration:none;padding:12px 13px;border-radius:999px;transition:all .45s var(--lp-ease)}
.lp-links a:hover,.lp-links a.is-active{color:var(--lp-navy);background:rgba(7,58,90,.08)}
.lp-cta,.lp-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:999px;text-decoration:none;font-weight:800;letter-spacing:-.01em;transition:transform .5s var(--lp-ease), background .5s var(--lp-ease), color .5s var(--lp-ease), box-shadow .5s var(--lp-ease);min-height:48px;touch-action:manipulation}
.lp-cta{background:var(--lp-navy);color:white;padding:12px 14px 12px 20px;box-shadow:0 12px 34px rgba(7,58,90,.2)}
.lp-btn{padding:14px 16px 14px 22px;border:1px solid rgba(7,58,90,.16);background:rgba(255,255,255,.74);color:var(--lp-navy);box-shadow:0 12px 40px rgba(7,58,90,.08)}
.lp-btn.dark,.lp-cta:hover,.lp-btn:hover{background:var(--lp-navy);color:white;transform:translateY(-2px);box-shadow:0 18px 50px rgba(7,58,90,.22)}
.lp-btn.gold{background:var(--lp-gold);border-color:transparent;color:white}.lp-btn .lp-arrow,.lp-cta .lp-arrow{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.18);transition:transform .5s var(--lp-ease)}
.lp-btn:hover .lp-arrow,.lp-cta:hover .lp-arrow{transform:translate(3px,-2px) rotate(-8deg)}
.lp-menu{display:none;border:0;background:var(--lp-navy);color:white;width:46px;height:46px;border-radius:50%;position:relative}.lp-menu span{position:absolute;left:13px;right:13px;height:2px;background:currentColor;border-radius:9px;transition:transform .45s var(--lp-ease), top .45s var(--lp-ease)}.lp-menu span:first-child{top:17px}.lp-menu span:last-child{top:27px}body.menu-open .lp-menu span:first-child{top:22px;transform:rotate(45deg)}body.menu-open .lp-menu span:last-child{top:22px;transform:rotate(-45deg)}
.lp-mobile-panel{position:fixed;inset:0;z-index:65;background:rgba(246,243,234,.92);backdrop-filter:blur(24px);display:grid;align-content:center;padding:96px 24px 40px;opacity:0;pointer-events:none;transform:translateY(-14px);transition:opacity .55s var(--lp-ease),transform .55s var(--lp-ease)}body.menu-open .lp-mobile-panel{opacity:1;pointer-events:auto;transform:none}.lp-mobile-panel a{display:block;color:var(--lp-navy);font-family:'Newsreader',serif;font-size:clamp(38px,12vw,72px);line-height:1;text-decoration:none;letter-spacing:-.06em;padding:10px 0;border-bottom:1px solid rgba(7,58,90,.12)}

.lp-hero{position:relative;min-height:88dvh;padding:108px 0 38px;display:grid;align-items:center;overflow:hidden}.lp-hero:after{content:"LP";position:absolute;right:-.1em;bottom:-.26em;font-family:'Newsreader',serif;font-size:clamp(180px,34vw,520px);line-height:1;color:rgba(7,58,90,.035);letter-spacing:-.12em;pointer-events:none}.lp-hero-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(340px,.72fr);gap:clamp(28px,5vw,76px);align-items:end}.lp-hero-copy{position:relative;z-index:2}.lp-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.lp-proof-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:34px;max-width:640px}.lp-proof{border:1px solid rgba(7,58,90,.12);background:rgba(255,255,255,.48);border-radius:24px;padding:16px;box-shadow:inset 0 1px rgba(255,255,255,.75)}.lp-proof strong{display:block;color:var(--lp-navy);font-size:clamp(20px,3vw,34px);font-weight:800;letter-spacing:-.04em}.lp-proof span{font-size:10px;font-weight:800;letter-spacing:.16em;color:var(--lp-muted);text-transform:uppercase}
.lp-visual-shell{position:relative;border-radius:38px;padding:8px;background:rgba(255,255,255,.42);border:1px solid rgba(7,58,90,.12);box-shadow:0 30px 90px rgba(7,58,90,.18);transform:rotate(1.2deg)}.lp-visual-core{min-height:440px;border-radius:30px;overflow:hidden;position:relative;background:var(--lp-navy);box-shadow:inset 0 1px rgba(255,255,255,.22)}.lp-visual-core img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.02);opacity:.82;transform:scale(1.03)}.lp-visual-core:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,58,90,.05),rgba(7,58,90,.86))}.lp-visual-card{position:absolute;left:18px;right:18px;bottom:18px;z-index:2;border-radius:24px;padding:18px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.5)}.lp-visual-card b{display:block;color:var(--lp-navy);font-size:12px;letter-spacing:.16em;text-transform:uppercase}.lp-visual-card p{margin-top:6px;color:var(--lp-muted);font-size:14px;line-height:1.45}

.lp-marquee{border-block:1px solid rgba(7,58,90,.12);background:rgba(255,255,255,.36);overflow:hidden}.lp-marquee-track{display:flex;gap:12px;width:max-content;animation:lp-marquee 28s linear infinite;padding:14px 0}.lp-chip{white-space:nowrap;border:1px solid rgba(7,58,90,.14);border-radius:999px;padding:10px 14px;background:rgba(255,255,255,.58);font-size:11px;font-weight:800;letter-spacing:.12em;color:var(--lp-navy)}@keyframes lp-marquee{to{transform:translateX(-50%)}}

.lp-bento{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.lp-card{border-radius:30px;padding:6px;background:rgba(255,255,255,.38);border:1px solid rgba(7,58,90,.11);box-shadow:0 18px 60px rgba(7,58,90,.08)}.lp-card-inner{height:100%;border-radius:24px;padding:clamp(22px,3vw,34px);background:rgba(255,255,255,.65);box-shadow:inset 0 1px rgba(255,255,255,.8)}.lp-card.dark{background:rgba(7,58,90,.94);color:white}.lp-card.dark .lp-card-inner{background:linear-gradient(135deg,rgba(7,58,90,.95),rgba(16,47,69,.92));box-shadow:inset 0 1px rgba(255,255,255,.18)}.lp-card h3{font-family:'Newsreader',serif;font-size:clamp(26px,3vw,42px);line-height:1;letter-spacing:-.05em;color:var(--lp-navy);margin:0 0 12px}.lp-card.dark h3{color:white}.lp-card p{color:var(--lp-muted);line-height:1.65}.lp-card.dark p{color:rgba(255,255,255,.8)}.span-5{grid-column:span 5}.span-7{grid-column:span 7}.span-4{grid-column:span 4}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.lp-num{font-size:12px;font-weight:800;color:var(--lp-gold);letter-spacing:.18em;margin-bottom:18px}.lp-link{margin-top:20px;display:inline-flex;color:var(--lp-navy);font-weight:800;text-decoration:none}.lp-card.dark .lp-link{color:var(--lp-gold-soft)}
.lp-split{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(24px,5vw,80px);align-items:start}.lp-sticky{position:sticky;top:110px}.lp-service-list{display:grid;gap:12px}.lp-service-row{border:1px solid rgba(7,58,90,.12);border-radius:28px;background:rgba(255,255,255,.5);padding:20px;display:grid;grid-template-columns:auto 1fr;gap:18px;transition:transform .5s var(--lp-ease),background .5s var(--lp-ease),box-shadow .5s var(--lp-ease)}.lp-service-row:hover{transform:translateY(-4px);background:white;box-shadow:0 18px 50px rgba(7,58,90,.1)}.lp-service-row .mark{width:42px;height:42px;border-radius:50%;background:var(--lp-navy);color:white;display:grid;place-items:center;font-weight:800;font-size:13px}.lp-service-row h3{font-size:20px;color:var(--lp-navy);letter-spacing:-.03em;margin:0 0 5px}.lp-service-row p{margin:0;color:var(--lp-muted);line-height:1.55}
.lp-dark-band{background:var(--lp-navy);color:white;border-radius:42px;padding:clamp(30px,6vw,72px);position:relative;overflow:hidden}.lp-dark-band:before{content:"";position:absolute;inset:-25%;background:radial-gradient(circle at 20% 20%,rgba(169,133,47,.24),transparent 30%),radial-gradient(circle at 80% 70%,rgba(159,199,220,.16),transparent 34%)}.lp-dark-band>*{position:relative}.lp-dark-band .lp-h2{color:white}.lp-dark-band .lp-lead{color:rgba(255,255,255,.78)}

/* Footer — dedicated class for consistent styling */
.lp-footer{
  border-top:1px solid rgba(7,58,90,.12);
  padding:38px 0 max(80px, calc(64px + env(safe-area-inset-bottom)));
}
.lp-footer-inner{
  display:flex;
  gap:18px;
  align-items:flex-start;
  justify-content:space-between;
  flex-wrap:wrap;
}
.lp-footer-brand{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.lp-footer-brand img{height:46px;width:auto}
.lp-footer-brand strong{color:var(--lp-navy)}
.lp-footer-links{display:flex;gap:18px;flex-wrap:wrap}
.lp-footer-links a{min-height:44px;display:inline-flex;align-items:center}

[data-reveal]{opacity:1;transform:none;filter:none;transition:opacity .9s var(--lp-ease),transform .9s var(--lp-ease),filter .9s var(--lp-ease)}.js-motion [data-reveal]:not(.is-visible){opacity:0;transform:translateY(24px);filter:blur(6px)}[data-reveal].is-visible{opacity:1;transform:none;filter:blur(0)}
#whatsapp-float{bottom:max(20px,env(safe-area-inset-bottom) + 14px)!important;right:max(18px,env(safe-area-inset-right) + 14px)!important;background:var(--lp-navy)!important;border-color:rgba(169,133,47,.45)!important;box-shadow:0 18px 50px rgba(7,58,90,.26)!important}.material-symbols-outlined{font-weight:300!important}


/* ===================================================================
   PREMIUM OVERRIDES FOR STITCH-EXPORTED INTERNAL PAGES
   =================================================================== */

body > header.fixed, body > nav.fixed, body > nav.bg-surface\/95, header.hidden.md\:flex, nav.hidden.md\:block{
  left:50%!important; right:auto!important; top:14px!important; transform:translateX(-50%)!important;
  width:min(calc(100% - 24px),1180px)!important; border-radius:999px!important;
  background:rgba(255,255,255,.82)!important; border:1px solid rgba(7,58,90,.12)!important;
  box-shadow:0 18px 60px rgba(7,58,90,.10)!important; backdrop-filter:blur(20px)!important;
}
body > header.fixed > div, body > nav.fixed > div, header.hidden.md\:flex > div, nav.hidden.md\:block > div{height:64px!important;padding-inline:14px 10px!important}
body > header.fixed img, body > nav.fixed img, header.hidden.md\:flex img, nav.hidden.md\:block img{height:44px!important}
main section{position:relative} main section h1, main section h2{font-family:'Newsreader',serif!important;letter-spacing:-.055em!important;text-wrap:balance;color:var(--lp-navy)!important} main section h1{font-size:clamp(40px,7vw,88px)!important;line-height:.94!important} main section h2{font-size:clamp(34px,5vw,64px)!important;line-height:.98!important}
main section:not(.lp-section) p{font-family:'Manrope',sans-serif!important;text-wrap:pretty;color:var(--lp-text)!important}
main section:not(.lp-section) li, main section:not(.lp-section) article li, main section:not(.lp-section) article p{color:var(--lp-text)!important}
main section:not(.lp-section) h3{color:var(--lp-navy)!important}
main h4, main [class*="text-secondary"], main [class*="text-tertiary"]{color:var(--lp-gold-strong)!important;font-weight:900!important;letter-spacing:.1em!important}

/* Contrast guards: blue cards must carry white text with enough depth */
.bg-primary, [class~="bg-primary"]{background:var(--lp-navy)!important;color:#fff!important}
.bg-primary h1,.bg-primary h2,.bg-primary h3,.bg-primary p,.bg-primary a,.bg-primary span,.bg-primary div,.bg-primary li,.text-on-primary{color:#fff!important}
.bg-primary main h4, .bg-primary [class*="text-secondary"], .bg-primary [class*="text-tertiary"]{color:var(--lp-gold-soft)!important}
.bg-primary [class*="bg-surface\/10"],
.bg-primary [class*="bg-surface\/20"],
.bg-primary div[class*="border"][class*="rounded"]{
  background:linear-gradient(145deg,#073a5a 0%,#0a4a70 58%,#102f45 100%)!important;
  color:#fff!important;
  border:1px solid rgba(232,216,170,.38)!important;
  box-shadow:0 18px 44px rgba(0,0,0,.2), inset 0 1px rgba(255,255,255,.18)!important;
  font-weight:800!important;
  line-height:1.35!important;
}
.bg-primary [class*="bg-surface\/10"] *,
.bg-primary [class*="bg-surface\/20"] *,
.bg-primary div[class*="border"][class*="rounded"] *{color:#fff!important}
[class*="bg-primary-container"][class*="text-on-primary-container"],
[class*="bg-primary-container"] [class*="text-on-primary-container"],
[class*="bg-primary-container"].text-on-primary-container{color:#fff!important}

main .grid > div[class*="bg-surface"], main div[class*="border"][class*="rounded"], form, article{
  border-radius:26px!important; border-color:rgba(7,58,90,.13)!important;
}
main .grid > div[class*="bg-surface"], main div[class*="bg-surface-container"], form, article{
  background:linear-gradient(180deg,rgba(255,253,247,.92),rgba(248,251,252,.82))!important;
  box-shadow:0 18px 60px rgba(7,58,90,.08), inset 0 1px rgba(255,255,255,.88)!important;
}
main article span[class*="rounded"], main section span[class*="rounded"]{
  color:var(--lp-navy)!important;
  background:rgba(232,216,170,.72)!important;
  border:1px solid rgba(169,133,47,.28)!important;
  font-weight:900!important;
}
main article span[class*="bg-surface-variant"]{background:rgba(7,58,90,.09)!important;color:var(--lp-navy)!important}
main section span[class*="bg-primary-container"]{background:rgba(232,216,170,.78)!important;color:var(--lp-navy)!important;border-color:rgba(169,133,47,.34)!important}
main article .flex.justify-between{gap:16px!important;align-items:flex-start!important}
main article .flex.justify-between h3{max-width:72%!important}
a[class*="bg-primary"], a[class*="bg-primary-container"], button[class*="bg-primary"], a[class*="bg-secondary"]{
  background:var(--lp-navy)!important;color:white!important;border-radius:999px!important;box-shadow:0 14px 38px rgba(7,58,90,.18)!important;transition:all .5s var(--lp-ease)!important
}
a[class*="bg-primary"]:hover,a[class*="bg-primary-container"]:hover,button[class*="bg-primary"]:hover{background:var(--lp-gold)!important;transform:translateY(-2px)!important}
footer{background:rgba(255,255,255,.62)!important;border-top:1px solid rgba(7,58,90,.12)!important;padding-bottom:max(80px,calc(64px + env(safe-area-inset-bottom)))!important}
input,textarea,select{border-radius:18px!important;background:rgba(255,255,255,.86)!important;border-color:rgba(7,58,90,.16)!important;min-height:48px!important;color:var(--lp-ink)!important}
input:focus,textarea:focus,select:focus{border-color:var(--lp-gold)!important;box-shadow:0 0 0 4px rgba(169,133,47,.12)!important}


/* ===================================================================
   MOBILE — UNIFIED (max-width: 900px)
   =================================================================== */
@media (max-width: 900px){

  /* --- Global Mobile --- */
  body{padding-top:0!important}

  /* --- Navigation (lp-* pages) --- */
  .lp-nav{top:10px;width:calc(100% - 20px)}
  .lp-nav-inner{height:60px}
  .lp-brand span{display:none}
  .lp-links,.lp-nav .lp-cta{display:none}
  .lp-menu{display:block}
  .lp-mobile-panel a{font-size:clamp(36px,14vw,64px)}

  /* --- Navigation (Stitch pages) --- */
  body > header.fixed,body > nav.fixed,body > nav.bg-surface\/95,header.hidden.md\:flex,nav.hidden.md\:block{display:none!important}
  .md\:hidden.fixed.top-0,.md\:hidden.flex.justify-between{top:10px!important;left:10px!important;right:10px!important;width:auto!important;border-radius:999px!important;background:rgba(255,255,255,.9)!important;backdrop-filter:blur(18px)!important;border:1px solid rgba(7,58,90,.12)!important;box-shadow:0 14px 44px rgba(7,58,90,.10)!important}
  .md\:hidden.flex.h-screen{position:sticky!important;top:8px!important;inset:auto!important;z-index:62!important;width:calc(100% - 20px)!important;height:auto!important;min-height:auto!important;padding:8px!important;margin:10px auto 0!important;border-radius:28px!important;border-right:0!important;border:1px solid rgba(7,58,90,.12)!important;background:rgba(255,255,255,.9)!important;backdrop-filter:blur(18px)!important;box-shadow:0 18px 48px rgba(7,58,90,.10)!important;overflow:hidden!important}
  .md\:hidden.flex.h-screen nav{display:flex!important;flex-direction:row!important;gap:8px!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;scroll-snap-type:x proximity!important;padding-bottom:4px!important;flex:0 0 auto!important}
  .md\:hidden.flex.h-screen nav::-webkit-scrollbar{display:none!important}
  .md\:hidden.flex.h-screen nav a{flex:0 0 auto!important;scroll-snap-align:start!important;border-radius:999px!important;background:rgba(246,243,234,.72)!important;color:var(--lp-navy)!important;min-height:42px!important;padding:10px 14px!important;font-size:12px!important;line-height:1!important;white-space:nowrap!important;box-shadow:inset 0 1px rgba(255,255,255,.8)!important}
  .md\:hidden.flex.h-screen nav a span{display:none!important}
  .md\:hidden.flex.h-screen > div:first-child{display:none!important}
  .md\:hidden.flex.h-screen > div:last-child{display:none!important}
  .md\:hidden.flex.h-screen > div:last-child a:not(:last-child){display:none!important}
  .md\:hidden.flex.h-screen > div:last-child a:last-child{margin-top:0!important;min-height:42px!important;padding-block:11px!important;font-size:12px!important}

  nav.md\:hidden.fixed.bottom-0,
  nav.lp-mobile-tabs,
  body > nav[class*="bottom-0"][class*="md:hidden"]{
    display:flex!important;top:10px!important;bottom:auto!important;left:10px!important;right:10px!important;width:auto!important;
    justify-content:flex-start!important;gap:8px!important;overflow-x:auto!important;padding:8px!important;
    border:1px solid rgba(7,58,90,.12)!important;border-radius:999px!important;background:rgba(255,255,255,.92)!important;
    box-shadow:0 14px 44px rgba(7,58,90,.10)!important;backdrop-filter:blur(18px)!important;
  }
  nav.md\:hidden.fixed.bottom-0::-webkit-scrollbar, nav.lp-mobile-tabs::-webkit-scrollbar, body > nav[class*="bottom-0"][class*="md:hidden"]::-webkit-scrollbar{display:none!important}
  nav.md\:hidden.fixed.bottom-0 a, nav.lp-mobile-tabs a, body > nav[class*="bottom-0"][class*="md:hidden"] a{flex:0 0 auto!important;min-height:42px!important;padding:10px 14px!important;border-radius:999px!important;background:rgba(246,243,234,.72)!important;color:var(--lp-navy)!important;text-decoration:none!important;box-shadow:inset 0 1px rgba(255,255,255,.8)!important}
  nav.md\:hidden.fixed.bottom-0 a span.material-symbols-outlined, nav.lp-mobile-tabs a span.material-symbols-outlined, body > nav[class*="bottom-0"][class*="md:hidden"] a span.material-symbols-outlined{display:none!important}
  nav.md\:hidden.fixed.bottom-0 a span:last-child, nav.lp-mobile-tabs a span:last-child, body > nav[class*="bottom-0"][class*="md:hidden"] a span:last-child{font-size:12px!important;line-height:1!important;white-space:nowrap!important}

  aside#mobile-nav{width:min(82vw,310px)!important;background:rgba(255,255,255,.96)!important;backdrop-filter:blur(18px)!important;box-shadow:18px 0 60px rgba(7,58,90,.18)!important}
  .md\:hidden.flex.justify-between{min-height:72px!important;padding:8px 14px!important;border-radius:28px!important}
  .md\:hidden.flex.justify-between img{height:44px!important;flex:0 0 auto!important}
  .md\:hidden.flex.justify-between span span{font-size:18px!important;line-height:1.08!important;letter-spacing:-.03em!important;max-width:220px!important}
  .md\:hidden.flex.justify-between button{min-width:44px!important;min-height:44px!important;border-radius:999px!important;background:rgba(7,58,90,.07)!important;color:var(--lp-navy)!important}

  /* --- Hero (index.html) --- */
  .lp-hero{padding-top:90px;min-height:auto}
  .lp-hero-grid,.lp-split{grid-template-columns:1fr}
  .lp-visual-shell{transform:none}
  .lp-visual-core{min-height:360px}
  .lp-proof-strip{grid-template-columns:1fr 1fr}
  .lp-proof:last-child{grid-column:1/-1}

  /* --- Bento Grid --- */
  .lp-bento{grid-template-columns:1fr}
  .span-5,.span-7,.span-4,.span-8,.span-12{grid-column:1}
  .lp-card-inner{padding:22px}

  /* --- Section / Layout --- */
  .lp-sticky{position:relative;top:auto}
  .lp-section{padding-block:68px}
  .lp-dark-band{border-radius:30px;padding:30px 20px}
  .lp-marquee-track{animation-duration:18s}

  /* --- Buttons / Actions --- */
  .lp-actions .lp-btn{width:100%;text-align:center;justify-content:center}
  .lp-dark-band .lp-actions .lp-btn{width:100%;text-align:center;justify-content:center}

  /* --- Service rows --- */
  .lp-service-row{grid-template-columns:1fr}
  .lp-service-row .mark{width:36px;height:36px}

  /* --- Footer (lp-footer class) --- */
  .lp-footer{padding:28px 0 max(72px, calc(56px + env(safe-area-inset-bottom)))}
  .lp-footer-inner{flex-direction:column;gap:24px}
  .lp-footer-links{gap:12px}

  /* --- Footer (Stitch pages - generic) --- */
  footer .flex{gap:18px!important;flex-wrap:wrap!important}
  footer{padding-inline:16px!important}

  /* --- Stitch pages content --- */
  .lp-page-main{padding-top:88px}
  body:not(:has(.lp-nav)) main > div.max-w-container-max{padding-top:0!important}
  body:not(:has(.lp-nav)) main h1:first-child,
  body:not(:has(.lp-nav)) main section:first-child h1{margin-top:0!important}
  main section:not(.lp-hero):first-child{padding-top:24px!important}
  main section{padding-inline:18px!important;padding-block:42px!important}
  main .grid{grid-template-columns:1fr!important}
  main .flex{min-width:0}
  main a{min-height:48px}
  main h1{font-size:clamp(38px,12vw,58px)!important;line-height:.98!important}
  main h2{font-size:clamp(31px,10vw,46px)!important;line-height:1!important}
  main article{border-radius:24px!important;overflow:hidden!important}
  main article .flex.justify-between h3{max-width:100%!important;width:100%!important}
  main article span[class*="rounded"]{font-size:11px!important;line-height:1.1!important;max-width:100%!important}
  main article a, main a[class*="bg-primary"], main a[class*="bg-primary-container"]{width:100%!important;justify-content:center!important;text-align:center!important;padding-block:14px!important}
  main article .grid{gap:16px!important}
  main p{max-width:64ch!important}
  main li.flex{flex-wrap:nowrap!important;align-items:flex-start!important;gap:10px!important}
  main li.flex .material-symbols-outlined{flex:0 0 auto!important;margin-top:2px!important}
  main article{padding:0!important}
  main article > div{padding:20px!important}
  main button, main .inline-flex{max-width:100%!important;white-space:normal!important;text-align:center!important}
  main .space-y-xl > :not([hidden]) ~ :not([hidden]){margin-top:42px!important}

  /* --- Methodology (sobre.html) — responsive override --- */
  .min-w-\[800px\]{
    min-width:0!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    gap:20px 16px!important;
  }
  .min-w-\[800px\] > .absolute{display:none!important}
  .min-w-\[800px\] > .flex.flex-col{width:calc(33.33% - 12px)!important}

  /* --- WhatsApp Float --- */
  #whatsapp-float{padding:12px!important;border-radius:999px!important;font-size:0!important;bottom:14px!important;right:14px!important;z-index:75!important}
  #whatsapp-float .material-symbols-outlined{font-size:22px!important}

  /* --- Touch targets: chips --- */
  .lp-chip{min-height:44px;display:inline-flex;align-items:center}
}

/* --- Small screens (max-width: 460px) --- */
@media (max-width: 460px){
  .lp-container{width:min(100% - 20px,1240px)}
  .lp-proof-strip{grid-template-columns:1fr}
  .lp-h1{font-size:clamp(38px,14vw,60px)}
  .lp-lead{font-size:16px}
  .lp-visual-core{min-height:310px}
  .lp-btn{min-height:52px}
  .lp-chip{font-size:10px;padding:9px 12px}

  /* Stitch pages */
  main section{padding-inline:14px!important;padding-block:46px!important}
  main p, main li{font-size:15px!important;line-height:1.58!important}
  main .max-w-container-max{width:100%!important}
  main article, main .grid > div[class*="bg-surface"]{border-radius:22px!important}
  main article > div{padding:18px!important}

  /* Methodology — stack 2 per row on small, then 1 col on very small */
  .min-w-\[800px\] > .flex.flex-col{width:calc(50% - 10px)!important}
}

/* Very small screens — methodology single column */
@media (max-width: 360px){
  .min-w-\[800px\] > .flex.flex-col{width:100%!important}
}

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}[data-reveal]{opacity:1!important;transform:none!important;filter:none!important}}


/* ===================================================================
   DARK SECTIONS CONTRAST FIXES
   =================================================================== */

/* Dark Stitch sections: force light text after high-specificity internal-page overrides */
main section.bg-primary,
main section.bg-primary h1,
main section.bg-primary h2,
main section.bg-primary h3,
main section.bg-primary p,
main section.bg-primary li,
main section.bg-primary div:not([class*="bg-surface\/10"]):not([class*="bg-surface\/20"]),
main section.bg-primary span:not([class*="rounded"]){color:#fff!important}
main section.bg-primary p{color:rgba(255,255,255,.84)!important}
main section.bg-primary [class*="text-primary-fixed-dim"],
main section.bg-primary [class*="text-on-primary"]{color:rgba(255,255,255,.86)!important}

/* Home premium sections: force correct contrast after internal-page overrides */
.lp-card.dark{background:rgba(7,58,90,.96)!important;color:#fff!important}
.lp-card.dark .lp-card-inner{background:linear-gradient(135deg,#073a5a 0%,#0a466b 58%,#102f45 100%)!important;color:#fff!important}
.lp-card.dark h3,
.lp-card.dark p,
.lp-card.dark .lp-num{color:#fff!important}
.lp-card.dark p{color:rgba(255,255,255,.86)!important}
.lp-card.dark .lp-link{color:var(--lp-gold-soft)!important}
.lp-dark-band{background:linear-gradient(135deg,#073a5a 0%,#0a466b 55%,#102f45 100%)!important;color:#fff!important;box-shadow:0 24px 80px rgba(7,58,90,.2)!important}
.lp-dark-band h2,
.lp-dark-band .lp-h2,
.lp-dark-band p,
.lp-dark-band .lp-lead{color:#fff!important}
.lp-dark-band .lp-lead{color:rgba(255,255,255,.84)!important}
.lp-dark-band .lp-eyebrow{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(232,216,170,.35)!important}
