@font-face{
  font-family:'SackersGothic';
  src:url('/assets/brand/SackersGothic.otf') format('opentype');
  font-weight:400;
  font-style:normal;
  font-display:swap;
}

:root{
  --bg:#f4f7fb;
  --surface:#ffffff;
  --surface-2:#eef3f8;
  --text:#231f20;
  --muted:#5a6472;
  --blue:#0e223a;
  --blue-2:#00395D;
  --gold:#D6B866;
  --red:#D82631;
  --line:#dce4ee;
  --shadow:0 18px 48px rgba(8,19,31,.08);
  --radius:22px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Manrope, Arial, sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(214,184,102,.18), transparent 30%),
    linear-gradient(180deg, #f8fbfe 0%, var(--bg) 100%);
}
body::before,
body::after{
  content:"";
  position:fixed;
  width:520px;
  height:520px;
  border-radius:50%;
  pointer-events:none;
  z-index:-1;
  filter:blur(18px);
  opacity:.34;
}
body::before{
  top:-180px;
  right:-190px;
  background:radial-gradient(circle, rgba(214,184,102,.24) 0%, rgba(214,184,102,0) 68%);
}
body::after{
  bottom:-240px;
  left:-220px;
  background:radial-gradient(circle, rgba(14,34,58,.16) 0%, rgba(14,34,58,0) 70%);
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,h4{
  font-family:'Space Grotesk', Manrope, Arial, sans-serif;
  letter-spacing:-0.03em;
}

.container{max-width:1200px;margin:0 auto;padding:0 20px}
.topbar{
  position:sticky;top:0;z-index:50;
  background:rgba(14,34,58,.92);
  color:#fff;
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.topbar-inner{
  min-height:74px;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:center;
  gap:28px;
  padding-top:10px;
  padding-bottom:10px;
}
.topbar .brand{
  justify-self:start;
}
.topbar .nav{
  justify-self:center;
}
.brand{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:800;
}
.brand-lockup{
  display:flex;
  align-items:center;
  gap:3px;
  min-width:0;
}
.brand-wordmark{
  display:block;
  width:auto;
  height:auto;
  flex:0 0 auto;
  transform:translateY(-1px);
}
.brand-icon{
  display:block;
  width:auto;
  height:auto;
  object-fit:contain;
  flex:0 0 auto;
}
.brand-wordmark{
  font-family:'SackersGothic','Space Grotesk',sans-serif;
  font-size:clamp(.76rem, 0.95vw, 1.22rem);
  font-weight:400;
  line-height:1;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
  color:var(--gold);
}
.brand-lockup--topbar .brand-icon{
  height:58px;
}
.brand-lockup--topbar .brand-wordmark{
  font-size:clamp(.86rem, 1.15vw, 1.45rem);
}
.brand-lockup--footer .brand-icon{
  height:48px;
}
.brand-lockup--footer .brand-wordmark{
  font-size:clamp(.78rem, 0.98vw, 1.08rem);
}
.brand-lockup--campaign .brand-icon{
  height:44px;
}
.brand-lockup--campaign .brand-wordmark{
  font-size:clamp(.72rem, 0.9vw, .98rem);
}
.brand-lockup--admin .brand-icon{
  height:40px;
}
.brand-lockup--admin .brand-wordmark{
  font-size:clamp(.7rem, 0.85vw, .92rem);
}
.brand-copy .brand-wordmark{
  align-self:flex-start;
  transform:translateY(-1px);
}
.brand-copy{
  display:flex;
  flex-direction:column;
  gap:2px;
}
.brand-copy-inline{
  margin-left:12px;
  align-self:center;
}
.brand-name{
  display:block;
  font-family:'Space Grotesk', Manrope, Arial, sans-serif;
  font-size:1.15rem;
  letter-spacing:-0.02em;
  color:var(--brand-name-color, var(--gold));
}
.brand-tagline{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:var(--brand-tagline-size, .88rem);
  line-height:1.35;
}
.brand-mark{
  width:42px;height:42px;border-radius:14px;
  background:linear-gradient(135deg, var(--gold), #f0dfaa);
}
.nav{display:flex;gap:18px;flex-wrap:wrap;color:rgba(255,255,255,.82)}
.nav a{
  position:relative;
  color:#D6B866;
  font-weight:800;
  letter-spacing:.01em;
  transition:color .18s ease, transform .18s ease;
}
.nav a:hover{
  color:#f6e6ad;
  transform:translateY(-1px);
}
.nav a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:100%;
  height:2px;
  transform:scaleX(0);
  transform-origin:left center;
  background:linear-gradient(90deg, #D6B866, #f6e6ad);
  transition:transform .18s ease;
}
.nav a:hover::after{
  transform:scaleX(1);
}
.topbar-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:nowrap;
  justify-self:end;
}
.topbar-contact{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 16px;
  border-radius:999px;
  background:rgba(214,184,102,.08);
  border:1px solid rgba(214,184,102,.42);
  color:var(--gold);
  font-weight:800;
  white-space:nowrap;
}
.topbar-contact:hover{
  background:rgba(214,184,102,.16);
  color:#f6e6ad;
}
.menu-toggle{
  display:none;
  width:44px;
  height:44px;
  border:1px solid rgba(214,184,102,.42);
  border-radius:14px;
  background:rgba(214,184,102,.08);
  color:var(--gold);
  cursor:pointer;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  gap:5px;
}
.menu-toggle span{
  display:block;
  width:20px;
  height:2px;
  border-radius:999px;
  background:currentColor;
  transition:transform .18s ease, opacity .18s ease;
}
.topbar.is-menu-open .menu-toggle span:nth-child(1){
  transform:translateY(7px) rotate(45deg);
}
.topbar.is-menu-open .menu-toggle span:nth-child(2){
  opacity:0;
}
.topbar.is-menu-open .menu-toggle span:nth-child(3){
  transform:translateY(-7px) rotate(-45deg);
}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:13px 18px;border-radius:999px;font-weight:800;border:0;
  transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease;
}
.btn:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 18px rgba(8,19,31,.12);
}
.btn-primary{background:linear-gradient(135deg, var(--gold), #f0dfaa);color:#07111b}
.btn-secondary{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.14)}

.hero{
  padding:52px 0 34px;
}
.home-carousel-bleed{
  width:100%;
  margin:0 0 28px;
  padding:0;
}
.home-carousel-bleed-inner{
  width:100%;
}
.home-carousel-bleed .hero-carousel{
  gap:0;
  width:100%;
  border-radius:0;
  background:#eff3f7;
  border:0;
  box-shadow:none;
  overflow:hidden;
  --home-carousel-text-color: #fff;
  --home-carousel-text-align: left;
  --home-carousel-text-shadow: 0 2px 12px rgba(0,0,0,.35);
  --home-carousel-button-bg: var(--gold);
  --home-carousel-button-text: #07111b;
  --home-carousel-body-left: 48px;
  --home-carousel-body-right: auto;
  --home-carousel-body-top: auto;
  --home-carousel-body-bottom: 48px;
  --home-carousel-body-translate-x: 0;
  --home-carousel-body-translate-y: 0;
  --home-carousel-body-width: 560px;
  --home-carousel-title-align: left;
  --home-carousel-subtitle-align: left;
  --home-carousel-title-size: 28px;
  --home-carousel-subtitle-size: 16px;
  --home-carousel-font-weight: 800;
  --home-carousel-letter-spacing: 0;
  --home-carousel-button-padding: 5px 9px;
  --home-carousel-button-font-size: .72rem;
  --home-carousel-button-min-height: 24px;
  --home-carousel-button-align: flex-start;
  --home-carousel-button-width: max-content;
}
.home-carousel-bleed .hero-carousel-head,
.home-carousel-bleed .hero-carousel-dots{
  width:min(1200px, calc(100vw - 40px));
  margin-left:auto;
  margin-right:auto;
}
.home-carousel-bleed .hero-carousel-head{
  padding:22px 0 14px;
}
.home-carousel-bleed .hero-carousel-stage{
  overflow:hidden;
  aspect-ratio:1920 / 650;
  min-height:0;
  max-height:650px;
}
.home-carousel-bleed .hero-carousel-track{
  display:flex;
  width:100%;
  height:100%;
  min-height:0;
  transition:transform .7s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
.home-carousel-bleed .hero-carousel-item{
  position:relative;
  flex:0 0 100%;
  height:100%;
  min-height:0;
  display:flex;
  flex-direction:column;
  padding:0;
  border-radius:0;
  background:transparent;
  color:inherit;
}
.home-carousel-bleed .hero-carousel-media{
  height:100%;
  min-height:0;
  aspect-ratio:auto;
  border-radius:0;
  margin-bottom:0;
}
.home-carousel-bleed .hero-carousel-body{
  position:absolute;
  left:var(--home-carousel-body-left);
  right:var(--home-carousel-body-right);
  top:var(--home-carousel-body-top);
  bottom:var(--home-carousel-body-bottom);
  transform:translate(var(--home-carousel-body-translate-x), var(--home-carousel-body-translate-y));
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;
  gap:8px;
  width:min(var(--home-carousel-body-width), calc(100vw - 96px));
  padding:0;
  border-radius:0;
  background:transparent;
  backdrop-filter:none;
  color:var(--home-carousel-text-color);
  text-align:var(--home-carousel-text-align);
  text-shadow:var(--home-carousel-text-shadow);
}
.hero-carousel .hero-carousel-item[style] .hero-carousel-body{
  position:absolute;
  left:var(--home-carousel-body-left);
  right:var(--home-carousel-body-right);
  top:var(--home-carousel-body-top);
  bottom:var(--home-carousel-body-bottom);
  transform:translate(var(--home-carousel-body-translate-x), var(--home-carousel-body-translate-y));
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  align-items:stretch;
  gap:8px;
  width:min(var(--home-carousel-body-width), calc(100% - 48px));
  max-width:var(--home-carousel-body-width);
  color:var(--home-carousel-text-color);
  text-align:var(--home-carousel-text-align);
  text-shadow:var(--home-carousel-text-shadow);
}
.hero-carousel .hero-carousel-item[style] .hero-carousel-body h2,
.hero-carousel .hero-carousel-item[style] .hero-carousel-body p{
  margin:0;
  color:var(--home-carousel-text-color);
  letter-spacing:var(--home-carousel-letter-spacing);
}
.hero-carousel .hero-carousel-item[style] .hero-carousel-body h2{
  font-size:var(--home-carousel-title-size);
  font-weight:var(--home-carousel-font-weight);
  line-height:1.08;
  text-align:var(--home-carousel-title-align);
}
.hero-carousel .hero-carousel-item[style] .hero-carousel-body p{
  font-size:var(--home-carousel-subtitle-size);
  line-height:1.45;
  text-align:var(--home-carousel-subtitle-align);
}
.hero-carousel .hero-carousel-item[style] .hero-carousel-body .btn-primary{
  align-self:var(--home-carousel-button-align);
  width:var(--home-carousel-button-width);
  padding:var(--home-carousel-button-padding);
  min-height:var(--home-carousel-button-min-height);
  min-width:0;
  font-size:var(--home-carousel-button-font-size);
  line-height:1.1;
}
.home-carousel-bleed .hero-carousel-body .space{
  height:10px;
}
.home-carousel-bleed .hero-carousel-body h2,
.home-carousel-bleed .hero-carousel-body p{
  color:var(--home-carousel-text-color);
  letter-spacing:var(--home-carousel-letter-spacing);
}
.home-carousel-bleed .hero-carousel-body h2{
  font-size:var(--home-carousel-title-size);
  font-weight:var(--home-carousel-font-weight);
  line-height:1.08;
  text-align:var(--home-carousel-title-align);
}
.home-carousel-bleed .hero-carousel-body p{
  font-size:var(--home-carousel-subtitle-size);
  line-height:1.45;
  text-align:var(--home-carousel-subtitle-align);
}
.home-carousel-bleed .hero-carousel-body .btn-primary{
  align-self:var(--home-carousel-button-align);
  width:var(--home-carousel-button-width);
  box-shadow:none;
  padding:var(--home-carousel-button-padding);
  min-height:var(--home-carousel-button-min-height);
  min-width:0;
  font-size:var(--home-carousel-button-font-size);
  line-height:1.1;
  background:var(--home-carousel-button-bg);
  color:var(--home-carousel-button-text);
}
.home-carousel-bleed .hero-carousel-controls{
  gap:6px;
  position:absolute;
  top:14px;
  right:14px;
  z-index:4;
  justify-content:flex-end;
  padding:0;
}
.home-carousel-bleed .hero-carousel-btn{
  inline-size:18px;
  block-size:18px;
  width:18px;
  height:18px;
  min-width:18px;
  min-height:18px;
  border-radius:50%;
  border:0;
  font-size:.62rem;
  padding:0 !important;
  line-height:1;
  opacity:.82;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 4px 10px rgba(8,19,31,.08);
}
.home-carousel-bleed .hero-carousel-dots{
  padding:8px 0 10px;
}
.home-carousel-bleed .hero-carousel-dot{
  width:7px;
  height:7px;
}
.home-carousel-bleed .hero-carousel-dot.is-active{
  width:18px;
}
@media (max-width: 1100px){
  .topbar-inner{
    position:relative;
    grid-template-columns:1fr auto;
    gap:14px;
    min-height:66px;
  }
  .topbar .nav{
    position:absolute;
    left:auto;
    right:20px;
    top:calc(100% + 8px);
    z-index:80;
    display:grid;
    gap:4px;
    width:min(180px, calc(100vw - 40px));
    padding:12px;
    border:1px solid rgba(214,184,102,.22);
    border-radius:18px;
    background:rgba(14,34,58,.98);
    box-shadow:0 18px 38px rgba(4,12,22,.24);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translateY(-8px);
    transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  }
  .topbar .nav a{
    padding:12px 14px;
    border-radius:12px;
  }
  .topbar .nav a:hover{
    background:rgba(214,184,102,.1);
  }
  .topbar.is-menu-open .nav{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
  .topbar-contact{
    display:none;
  }
  .menu-toggle{
    display:inline-flex;
  }
}
@media (max-width: 768px){
  .home-carousel-bleed{
    padding:0;
    margin-bottom:22px;
  }
  .home-carousel-bleed .hero-carousel-stage{
    aspect-ratio:auto;
    min-height:335px;
  }
  .home-carousel-bleed .hero-carousel-stage,
  .home-carousel-bleed .hero-carousel-track,
  .home-carousel-bleed .hero-carousel-item,
  .home-carousel-bleed .hero-carousel-media{
    min-height:335px;
  }
  .home-carousel-bleed .hero-carousel-body{
    left:16px !important;
    right:16px !important;
    top:18px !important;
    bottom:auto !important;
    width:auto !important;
    max-width:none !important;
    transform:none !important;
    padding:0;
    border-radius:0;
    gap:6px;
    align-items:center;
    text-align:center;
    max-height:calc(100% - 28px);
  }
  .hero-carousel .hero-carousel-item[style] .hero-carousel-body{
    left:16px !important;
    right:16px !important;
    top:18px !important;
    bottom:auto !important;
    width:auto !important;
    max-width:none !important;
    transform:none !important;
    align-items:center;
    text-align:center;
    max-height:calc(100% - 28px);
  }
  .home-carousel-bleed .hero-carousel-body h2,
  .hero-carousel .hero-carousel-item[style] .hero-carousel-body h2{
    width:100%;
    font-size:min(var(--home-carousel-title-size), clamp(1rem, 4.4vw, 1.28rem));
    line-height:1.08;
    text-align:center;
    overflow-wrap:anywhere;
  }
  .home-carousel-bleed .hero-carousel-body p,
  .hero-carousel .hero-carousel-item[style] .hero-carousel-body p{
    width:100%;
    max-width:38ch;
    font-size:min(var(--home-carousel-subtitle-size), clamp(.72rem, 3vw, .9rem));
    line-height:1.28;
    text-align:center;
    overflow-wrap:anywhere;
  }
  .home-carousel-bleed .hero-carousel-body .btn-primary,
  .hero-carousel .hero-carousel-item[style] .hero-carousel-body .btn-primary{
    padding:4px 8px;
    min-height:22px;
    font-size:.66rem;
  }
  .home-carousel-bleed .hero-carousel-btn{
    inline-size:18px;
    block-size:18px;
    width:18px;
    height:18px;
    min-width:18px;
    min-height:18px;
  }
  .home-carousel-bleed .hero-carousel-controls{
    display:none;
  }
  .home-carousel-bleed .hero-carousel-head{
    padding:16px 16px 10px;
  }
}
.campaign-shell{
  background:
    radial-gradient(circle at top right, rgba(214,184,102,.12), transparent 25%),
    linear-gradient(180deg, #eef4fa 0%, #f8fbfe 100%);
  min-height:100vh;
}
.campaign-topbar{
  position:sticky;
  top:0;
  z-index:60;
  background:rgba(8,21,33,.9);
  backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.campaign-topbar-inner{
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.campaign-topbar .brand{color:#fff}
.campaign-topbar .brand-lockup{gap:10px}
.campaign-topbar .brand-lockup .brand-icon{
  height:42px;
}
.campaign-topbar .brand-lockup .brand-wordmark{
  height:24px;
  max-width:min(240px, 36vw);
  transform:translateY(-1px);
}
.campaign-whatsapp-direct{
  margin-left:auto;
  color:var(--gold);
}
.campaign-hero{
  padding:30px 0 34px;
}
.campaign-carousel-bleed{
  margin:0;
}
.campaign-carousel-bleed .hero-carousel{
  border-radius:0;
}
.hero-grid{
  display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:stretch;
}
body.page-home .hero-grid{
  grid-template-columns:1fr;
}
body.page-campanha .hero-grid{
  grid-template-columns:1fr;
}
.panel{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:28px;
  box-shadow:var(--shadow);
  position:relative;
  overflow:hidden;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.panel:hover{
  transform:translateY(-2px);
  box-shadow:0 24px 56px rgba(8,19,31,.1);
}
.hero-copy{
  padding:34px;
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.98));
}
body.page-home .hero-copy{
  min-height:auto;
}
.hero-copy::before,
.campaign-copy::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:6px;
}
.hero-copy::before{
  background:linear-gradient(90deg, var(--gold), rgba(214,184,102,0));
}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--blue-2);
  font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;
}
h1{
  margin:14px 0 16px;
  font-size:clamp(2.3rem, 4vw, 4.6rem);
  line-height:1.02;
}
.lead{
  margin:0 0 26px;
  color:var(--muted);
  font-size:1.08rem;
  line-height:1.7;
  max-width:60ch;
}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.lead-badges{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:8px;
}
.hero-rail{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-top:16px;
}
.hero-rail-item{
  padding:13px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.75);
  border:1px solid rgba(14,34,58,.08);
  box-shadow:0 8px 18px rgba(8,19,31,.04);
}
.hero-rail-item strong{
  display:block;
  margin-bottom:4px;
  color:var(--blue-2);
}
.hero-rail-item span{
  display:block;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.45;
}
.hero-microcopy{
  margin-top:18px;
  padding:16px 18px;
  border-radius:18px;
  background:linear-gradient(135deg, rgba(14,34,58,.04), rgba(214,184,102,.12));
  border:1px solid rgba(14,34,58,.06);
}
.hero-microcopy strong{
  display:block;
  margin-bottom:4px;
  color:var(--blue-2);
}
.hero-microcopy span{
  color:var(--muted);
  line-height:1.6;
}
.stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px
}
.stat{
  background:var(--surface-2);
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px;
}
.stat strong{display:block;font-size:1.06rem;margin-bottom:4px}
.stat span{color:var(--muted);font-size:.93rem}

.visual{
  padding:22px;
  display:flex;
  flex-direction:column;
  gap:14px;
  background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(247,251,255,.98));
}
.campaign-copy{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,252,245,.98));
  min-height:auto;
  padding:30px;
  align-items:center;
  text-align:center;
}
.campaign-copy::before{
  background:linear-gradient(90deg, #0e223a, rgba(14,34,58,0));
}
.campaign-copy h1{
  max-width:20ch;
  margin-left:auto;
  margin-right:auto;
  font-size:clamp(2rem, 3vw, 3.35rem);
  line-height:1.04;
}
.campaign-copy .lead{
  max-width:94ch;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:14px;
  font-size:1.02rem;
  line-height:1.72;
}
.campaign-copy .lead-complement{
  margin-top:-4px;
  margin-bottom:24px;
}
body.campaign-notebooks-pcs .campaign-copy h1{
  max-width:24ch;
  font-size:clamp(1.85rem, 2.55vw, 2.85rem);
}
body.campaign-notebooks-pcs .campaign-copy .lead{
  max-width:86ch;
}
body.campaign-apple .campaign-copy h1{
  max-width:28ch;
  font-size:clamp(1.85rem, 2.55vw, 2.85rem);
}
body.campaign-outros-eletronicos .campaign-copy h1{
  max-width:28ch;
  font-size:clamp(1.85rem, 2.55vw, 2.85rem);
}
.campaign-copy .cta-row{
  justify-content:center;
  margin-top:4px;
}
.campaign-copy .btn-primary{
  min-width:min(100%, 310px);
  justify-content:center;
}
.campaign-copy .hero-rail{
  width:100%;
  margin-top:22px;
}
.campaign-copy .hero-rail-item{
  text-align:left;
  background:linear-gradient(180deg, #fff, #fbfdff);
}
.grid.campaign-benefits-grid{
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}
.campaign-benefit-card{
  grid-column:auto;
  min-height:100%;
  padding:16px;
  border-radius:18px;
}
.grid.campaign-benefits-grid .campaign-benefit-card{
  grid-column:auto;
}
.campaign-benefit-card h3{
  font-size:.98rem;
  line-height:1.25;
}
.campaign-benefit-card p{
  font-size:.88rem;
  line-height:1.55;
}
.campaign-benefit-card .pill{
  font-size:.72rem;
  padding:6px 10px;
}
.campaign-visual{
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,251,255,.98));
}
.campaign-promo{
  background:linear-gradient(135deg, #0e223a, #173d63);
  color:#fff;
}
.campaign-promo .pill{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.campaign-promo p{
  color:rgba(255,255,255,.82);
}
.campaign-quick-list{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.campaign-quick-list div{
  padding:11px 13px;
  border-radius:16px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
}
.campaign-quick-list strong{
  color:var(--gold);
}
.hero-carousel{
  display:grid;
  gap:14px;
  height:100%;
}
.hero-carousel-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.hero-carousel-controls{
  display:flex;
  gap:8px;
}
.hero-carousel-btn{
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid var(--line);
  background:#fff;
  color:var(--blue-2);
  font:inherit;
  font-weight:800;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(8,19,31,.06);
}
.hero-carousel-btn:hover{
  background:var(--surface-2);
}
.home-carousel-bleed .hero-carousel-btn{
  inline-size:18px;
  block-size:18px;
  width:18px;
  height:18px;
  min-width:18px;
  min-height:18px;
  border:0;
  border-radius:50%;
  padding:0 !important;
  font-size:.62rem;
  line-height:1;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 4px 10px rgba(8,19,31,.08);
}
.hero-carousel-stage{
  position:relative;
  min-height:320px;
}
.hero-carousel-item{
  min-height:320px;
  display:flex;
  flex-direction:column;
}
.hero-carousel-item.is-active{
  display:flex;
}
.hero-carousel-media{
  width:100%;
  min-height:160px;
  aspect-ratio:16 / 9;
  border-radius:20px;
  overflow:hidden;
  background:linear-gradient(135deg, rgba(14,34,58,.06), rgba(214,184,102,.18));
  margin-bottom:14px;
}
.hero-carousel-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero-carousel-video-tag,
.hero-carousel-embed-tag{
  min-height:160px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:800;
  color:var(--blue-2);
  text-align:center;
  padding:20px;
}
.hero-carousel-body{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.hero-carousel-body h2{
  margin-top:0;
}
.hero-carousel-dots{
  display:flex;
  gap:8px;
  justify-content:center;
}
.hero-carousel-dot{
  width:10px;
  height:10px;
  border-radius:999px;
  border:0;
  background:#c6d4e2;
  cursor:pointer;
  transition:transform .18s ease, background-color .18s ease, width .18s ease;
}
.hero-carousel-dot.is-active{
  width:28px;
  background:var(--gold);
}
.slide{
  flex:1;
  border-radius:24px;
  padding:24px;
  background:linear-gradient(135deg, rgba(214,184,102,.95), rgba(255,242,197,.96));
  color:#102033;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:0 14px 30px rgba(0,0,0,.08);
}
.slide.alt{
  background:linear-gradient(135deg, #ffffff, #edf3f8);
}
.service-card{
  background:linear-gradient(180deg, #fff, #fcfdff);
}
.service-card-link{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:18px;
  min-height:100%;
  text-decoration:none;
  color:inherit;
  overflow:hidden;
  transition:transform .28s ease, box-shadow .28s ease, border-color .28s ease, background-color .28s ease;
}
.service-card-link::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg, rgba(14,34,58,.02), rgba(201,169,77,.05));
  opacity:0;
  transition:opacity .28s ease;
  pointer-events:none;
}
.service-card-link::after{
  content:"";
  position:absolute;
  inset:auto -35% -55% auto;
  width:160px;
  height:160px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(201,169,77,.24), rgba(201,169,77,0) 68%);
  opacity:0;
  transform:translate3d(0,0,0);
  transition:opacity .28s ease, transform .28s ease;
  pointer-events:none;
}
.service-card-link:hover{
  transform:translateY(-8px) scale(1.008);
  box-shadow:0 22px 48px rgba(8,19,31,.12);
  border-color:rgba(14,34,58,.10);
  background:linear-gradient(180deg, #fff, #f7fbff);
}
.service-card-link:hover::before,
.service-card-link:hover::after{
  opacity:1;
}
.service-card-link:hover::after{
  transform:translate3d(-18px,-18px,0);
}
.service-card-link h3,
.service-card-link p,
.service-card-link .service-link,
.service-card-link .service-icon{
  position:relative;
  z-index:1;
}
.service-card-link h3{
  transition:color .22s ease, transform .22s ease;
}
.service-card-link:hover h3{
  color:#0b4a74;
}
.service-card-link p{
  flex:1;
}
.services-grid-home{
  gap:28px 28px;
}
.services-head-home{
  justify-content:center;
  text-align:center;
  margin-bottom:36px;
}
.services-head-home > div{
  max-width:980px;
  margin:0 auto;
}
.services-head-home .section-note{
  max-width:64ch;
}
.service-icon{
  width:72px;
  height:72px;
  border-radius:18px;
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:
    linear-gradient(180deg, rgba(14,34,58,.025), rgba(214,184,102,.06)),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(247,251,255,.88));
  color:var(--gold);
  border:1px solid rgba(214,184,102,.92);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.7),
    0 12px 24px rgba(8,19,31,.06);
  transition:transform .22s ease, background-color .22s ease, color .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.service-icon::before{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:14px;
  border:1px solid rgba(11,74,116,.08);
  pointer-events:none;
}
.service-icon i{
  font-size:1.55rem;
}
.service-icon svg{
  width:1.52rem;
  height:1.52rem;
  stroke:currentColor;
  fill:none;
  display:block;
}
.service-icon img{
  width:40px;
  height:40px;
  object-fit:contain;
  display:block;
}
.service-card-link:hover .service-icon{
  transform:translateY(-2px) rotate(-2deg);
  background:
    linear-gradient(180deg, rgba(14,34,58,.04), rgba(214,184,102,.14)),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,251,255,.92));
  color:#b9912f;
  border-color:rgba(201,169,77,.98);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.82),
    0 16px 30px rgba(8,19,31,.08);
}
.service-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  color:#0b4a74;
  font-weight:800;
  font-size:.9rem;
  letter-spacing:.01em;
  transition:transform .22s ease, color .22s ease;
}
.service-link::after{
  content:"→";
  transition:transform .22s ease;
}
.services-grid-home .service-card{
  border-radius:20px;
  padding:30px 30px 28px;
  box-shadow:0 16px 32px rgba(8,19,31,.08);
  border:1px solid rgba(14,34,58,.08);
  min-height:230px;
}
.services-grid-home .service-card h3{
  margin-top:0;
  font-size:1.12rem;
}
.services-grid-home .service-card p{
  margin-top:0;
  color:#495a70;
  line-height:1.62;
}
.services-head-home .section-kicker{
  margin-bottom:8px;
}
.impact-section{
  padding-top:6px;
  padding-bottom:12px;
}
.impact-stats{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:16px;
  padding:18px;
  border-radius:28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,251,255,.96));
  border:1px solid rgba(14,34,58,.08);
  box-shadow:0 18px 42px rgba(8,19,31,.08);
}
.impact-stat{
  position:relative;
  overflow:hidden;
  padding:26px 20px 24px;
  border-radius:22px;
  background:
    radial-gradient(circle at top right, rgba(214,184,102,.18), transparent 35%),
    linear-gradient(180deg, #fff, #fbfdff);
  border:1px solid rgba(14,34,58,.07);
  box-shadow:0 14px 30px rgba(8,19,31,.06);
  text-align:center;
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.impact-stat::before{
  content:"";
  position:absolute;
  inset:auto 18px 18px 18px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(11,74,116,.18), rgba(29,106,154,.9), rgba(214,184,102,.9));
  opacity:.85;
}
.impact-stat:hover{
  transform:translateY(-5px);
  box-shadow:0 22px 46px rgba(8,19,31,.12);
  border-color:rgba(11,74,116,.12);
}
.impact-stat-value{
  display:inline-flex;
  align-items:baseline;
  justify-content:center;
  gap:2px;
  color:#0b4a74;
  font-family:'Space Grotesk', Manrope, Arial, sans-serif;
  font-size:clamp(2rem, 3vw, 2.7rem);
  line-height:1;
  letter-spacing:-0.05em;
  font-weight:800;
}
.impact-stat-value .counter{
  display:inline-block;
  min-width:1ch;
}
.impact-stat-suffix{
  font-size:.72em;
  line-height:1;
  margin-left:1px;
  color:#0b4a74;
}
.impact-stat strong{
  display:block;
  margin-top:12px;
  color:#11243d;
  font-size:1rem;
  line-height:1.35;
}
.services-grid .service-card-link--footer{
  cursor:pointer;
}
.service-card-link:hover .service-link{
  transform:translateX(3px);
}
.service-card-link:hover .service-link::after{
  transform:translateX(2px);
}
.trust-card{
  background:linear-gradient(180deg, #fff, #f8fbff);
}
.home-form-card{
  background:linear-gradient(180deg, #fff, #f7fbff);
}
.home-callout{
  background:linear-gradient(135deg, #0e223a, #173d63);
  color:#fff;
}
.home-callout p,
.home-callout .feature-list{
  color:rgba(255,255,255,.82);
}
.home-callout .pill{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.campaign-proof{
  background:linear-gradient(180deg, #ffffff, #fbfdff);
}
.campaign-callout{
  background:linear-gradient(135deg, #0e223a, #173d63);
  color:#fff;
}
.campaign-callout .pill{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.campaign-callout p,
.campaign-callout .feature-list{
  color:rgba(255,255,255,.8);
}
.hero-rail--campaign .hero-rail-item{
  background:rgba(14,34,58,.03);
}
.campaign-form-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,251,255,.98)),
    var(--surface);
  border:1px solid rgba(14,34,58,.08);
}
.service-card-link:focus-visible{
  outline:3px solid rgba(11,74,116,.28);
  outline-offset:4px;
}
.blog-hero-copy{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(252,250,246,.98));
}
.blog-visual{
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,251,255,.98));
}
.blog-featured-panel{
  background:linear-gradient(135deg, #0e223a, #173d63);
  color:#fff;
}
.blog-featured-panel .pill{
  background:rgba(255,255,255,.12);
  color:#fff;
}
.blog-featured-panel p,
.blog-featured-panel .feature-list{
  color:rgba(255,255,255,.82);
}
.blog-story-card{
  min-height:240px;
}
.blog-post-copy{
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(252,250,246,.98));
}
.blog-post-visual{
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,251,255,.98));
}
.legacy-blog-hero{padding:42px 0 28px;background:linear-gradient(135deg,#f9fbfd,#edf3f7)}
.legacy-blog-carousel{position:relative;min-height:430px;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 18px 38px rgba(14,34,58,.12)}
.legacy-blog-slide{position:absolute;inset:0;overflow:hidden;opacity:0;visibility:hidden;z-index:0;pointer-events:none;transform:translate3d(18px,0,0);transition:opacity .32s ease,transform .32s ease,visibility 0s linear .32s}
.legacy-blog-slide.is-active{opacity:1;visibility:visible;z-index:2;pointer-events:auto;transform:translate3d(0,0,0);transition:opacity .32s ease,transform .32s ease,visibility 0s linear 0s}
.legacy-blog-slide::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#fff 0%,#fff 45%,rgba(255,255,255,.72) 58%,rgba(255,255,255,.04) 76%);z-index:1;pointer-events:none}
.legacy-blog-slide img{position:absolute;inset:0 0 0 auto;width:55%;height:100%;object-fit:cover;object-position:center;display:block}
.legacy-blog-hero-copy{position:absolute;z-index:2;left:var(--blog-slide-left,7%);top:var(--blog-slide-top,50%);width:min(var(--blog-slide-width,520px),calc(45% - 54px),calc(100% - 48px));transform:translate(var(--blog-slide-translate-x,0),-50%);display:flex;min-width:0;flex-direction:column;color:var(--blog-slide-color,#172333);font-weight:var(--blog-slide-weight,800);letter-spacing:var(--blog-slide-letter-spacing,0)}
.legacy-blog-hero-copy .eyebrow{margin-bottom:14px;color:var(--blue-2);font-size:.75rem;font-weight:900;letter-spacing:.13em}
.legacy-blog-hero-copy h1{margin:0 0 16px;color:inherit;font-size:clamp(2rem,var(--blog-slide-title-size,46px),4rem);font-weight:var(--blog-slide-weight,800);line-height:1.04;letter-spacing:inherit;text-align:var(--blog-slide-title-align,left);overflow-wrap:break-word;text-wrap:balance}
.legacy-blog-hero-copy p{max-width:100%;margin:0 0 24px;color:inherit;font-size:clamp(1rem,var(--blog-slide-subtitle-size,18px),1.4rem);font-weight:500;line-height:1.6;letter-spacing:normal;text-align:var(--blog-slide-subtitle-align,left);text-wrap:pretty}
.legacy-blog-hero-copy .btn-primary{align-self:var(--blog-slide-button-self,flex-start);width:var(--blog-slide-button-width,max-content);min-height:auto;padding:var(--blog-slide-button-padding,8px 14px);font-size:var(--blog-slide-button-font-size,.78rem);line-height:1.15}
.legacy-blog-dots{position:absolute;z-index:4;bottom:18px;left:50%;display:flex;gap:8px;transform:translateX(-50%)}.legacy-blog-dots button{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:#bdcedc;cursor:pointer;transition:transform .2s ease,background .2s ease}.legacy-blog-dots button.is-active{background:var(--gold);transform:scale(1.2)}.legacy-blog-dots button:focus-visible{outline:3px solid rgba(197,164,75,.48);outline-offset:3px}
.legacy-blog-toolbar{padding:18px 0;background:#fff;border-bottom:1px solid var(--line)}.legacy-blog-toolbar-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.legacy-blog-search{display:flex;gap:8px;flex:1;min-width:250px;max-width:390px}.legacy-blog-search input{width:100%;min-width:0;padding:12px 14px;border:1px solid var(--line);border-radius:10px;font:inherit}.legacy-blog-search button{border:0;border-radius:10px;background:var(--blue-2);color:#fff;padding:0 18px;font-weight:800;white-space:nowrap}.legacy-blog-topics{display:flex;gap:8px;flex:1;justify-content:flex-end;flex-wrap:wrap}.legacy-blog-topics a{padding:8px 13px;border:1px solid var(--line);border-radius:999px;color:var(--blue-2);font-size:.86rem;font-weight:700}.legacy-blog-topics a.is-active,.legacy-blog-topics a:hover{background:var(--blue-2);color:#fff;border-color:var(--blue-2)}
.legacy-blog-posts{padding-top:42px}.legacy-blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.legacy-post-card{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 8px 22px rgba(14,34,58,.07);transition:transform .3s ease,box-shadow .3s ease}.legacy-post-card:hover{transform:translateY(-7px);box-shadow:0 20px 38px rgba(14,34,58,.16)}.legacy-post-card.is-featured{grid-column:span 2}.legacy-post-card img{display:block;width:100%;height:205px;object-fit:cover;transition:transform .45s ease}.legacy-post-card:hover img{transform:scale(1.04)}.legacy-post-card.is-featured img{height:250px}.legacy-post-body{padding:18px}.legacy-post-meta{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.legacy-post-meta span{padding:5px 9px;border-radius:999px;background:#eaf1f8;color:var(--blue-2);font-size:.72rem;font-weight:800}.legacy-post-card h3{margin:0 0 9px;color:#172333;font-size:1.16rem;line-height:1.25}.legacy-post-card p{margin:0 0 14px;color:var(--muted);line-height:1.6}.legacy-blog-empty{display:grid;place-items:center;min-height:390px;color:var(--muted)}
@media (max-width:800px){.legacy-blog-carousel{min-height:540px}.legacy-blog-slide::after{background:linear-gradient(180deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.87) 45%,rgba(255,255,255,.1) 100%)}.legacy-blog-slide img{width:100%;height:48%;top:auto;object-position:center}.legacy-blog-hero-copy{left:50%;top:37%;width:min(var(--blog-slide-width,520px),calc(100% - 42px));transform:translate(-50%,-50%)}.legacy-blog-hero-copy h1{font-size:clamp(2rem,min(var(--blog-slide-title-size,46px),9vw),3rem)}.legacy-blog-hero-copy p{font-size:clamp(.98rem,min(var(--blog-slide-subtitle-size,18px),4.5vw),1.16rem)}.legacy-blog-grid{grid-template-columns:1fr}.legacy-post-card.is-featured{grid-column:auto}.legacy-post-card.is-featured img,.legacy-post-card img{height:210px}.legacy-blog-toolbar-inner{display:block}.legacy-blog-search{width:100%;max-width:none;margin-bottom:14px;flex:none}.legacy-blog-search input{min-height:46px}.legacy-blog-search button{min-height:46px;padding:0 16px}.legacy-blog-topics{justify-content:flex-start}.legacy-blog-topics a{padding:8px 11px}}
@media (prefers-reduced-motion:reduce){.legacy-blog-slide,.legacy-blog-dots button{transition:none}.legacy-post-card,.legacy-post-card img{transition:none}}
.legacy-article{padding:54px 0 76px;background:#f7fafc}
.legacy-article__container{width:min(100% - 40px,920px);margin:0 auto}
.legacy-article__header{margin:0 0 28px}
.legacy-article__category{display:inline-flex;align-items:center;min-height:25px;padding:4px 10px;border-radius:999px;background:var(--blue-2);color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.legacy-article__category:hover{background:var(--gold);color:var(--blue-1)}
.legacy-article__header h1{max-width:830px;margin:14px 0 13px;color:#172333;font-size:clamp(2rem,4.1vw,3.65rem);line-height:1.08;letter-spacing:-.04em;text-wrap:balance}
.legacy-article__meta{display:flex;flex-wrap:wrap;gap:0;color:#607286;font-size:.83rem;font-weight:600}
.legacy-article__meta span{display:inline-flex;align-items:center}.legacy-article__meta span+span::before{content:"";width:4px;height:4px;margin:0 10px;border-radius:50%;background:var(--gold)}
.legacy-article__figure{margin:0 0 28px;overflow:hidden;border-radius:14px;background:#e9eff4;box-shadow:0 10px 24px rgba(14,34,58,.1)}
.legacy-article__figure img{display:block;width:100%;max-height:480px;object-fit:cover}
.legacy-article__content{max-width:820px;color:#273b52;font-size:1.05rem;line-height:1.78}
.legacy-article__content>*:first-child{margin-top:0}.legacy-article__content p{margin:0 0 22px}.legacy-article__content h2,.legacy-article__content h3,.legacy-article__content h4{margin:34px 0 13px;color:var(--blue-2);line-height:1.22}.legacy-article__content h2{font-size:1.55rem}.legacy-article__content h3{font-size:1.28rem}.legacy-article__content ul,.legacy-article__content ol{padding-left:24px;margin:0 0 22px}.legacy-article__content li{margin:8px 0}.legacy-article__content blockquote{margin:28px 0;padding:16px 20px;border-left:3px solid var(--blue-2);background:#fff;font-style:italic;color:#31465e}
.legacy-article__footer{margin-top:44px}.legacy-article__divider{height:1px;background:rgba(14,34,58,.72);margin-bottom:20px}.legacy-article__footer p{margin:0 0 11px;color:#23384e;font-size:.88rem;font-weight:800}.legacy-article__share{display:flex;flex-wrap:wrap;gap:8px}.legacy-article__share a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:7px 12px;border-radius:7px;color:#fff;font-size:.76rem;font-weight:800;transition:transform .2s ease,filter .2s ease}.legacy-article__share a:hover{transform:translateY(-2px);filter:brightness(1.07)}.legacy-article__share .is-facebook{background:#1877f2}.legacy-article__share .is-x{background:#172333}.legacy-article__share .is-linkedin{background:#0a66c2}.legacy-article__share .is-whatsapp{background:#1cab5a}.legacy-article__share .is-copy{background:#526477}
@media (max-width:680px){.legacy-article{padding:36px 0 58px}.legacy-article__container{width:min(100% - 30px,920px)}.legacy-article__header h1{font-size:clamp(1.85rem,9vw,2.55rem)}.legacy-article__meta{font-size:.77rem}.legacy-article__meta span+span::before{margin:0 7px}.legacy-article__figure{margin-bottom:22px;border-radius:12px}.legacy-article__figure img{max-height:290px}.legacy-article__content{font-size:1rem;line-height:1.72}.legacy-article__content h2{font-size:1.38rem}.legacy-article__share a{padding:7px 10px}}
.mini-note{
  padding:14px 16px;
  border-radius:16px;
  background:#f7fafc;
  border:1px solid var(--line);
}
.mini-note strong{
  display:block;
  color:var(--blue-2);
  margin-bottom:4px;
}
.mini-note span{
  color:var(--muted);
  line-height:1.6;
  font-size:.95rem;
}
.pill{
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  font-size:.8rem;
  font-weight:800;
  background:#eaf1f8;
  color:var(--blue-2);
}
.slide h2,.section h2{
  margin:14px 0 10px;
  font-size:1.6rem;
}
.slide p,.card p,.section p{
  margin:0;
  color:var(--muted);
  line-height:1.65;
}

.section{padding:18px 0 10px}
.section h2{color:#11243d}
.section-note{max-width:78ch;margin:0 0 18px;color:var(--muted);line-height:1.65}
.section-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:0;
  margin-bottom:30px;
}
.section-head > div{
  max-width:980px;
  margin:0 auto;
}
.section-head h2{
  margin:12px 0 0;
  color:#11243d;
  font-size:clamp(2rem, 3vw, 2.85rem);
  line-height:1.08;
  letter-spacing:-0.04em;
}
.section-head .section-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:8px;
  color:#0b4a74;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.74rem;
  font-weight:800;
}
.section-head .section-note{
  margin:18px auto 0;
  text-align:center;
  max-width:68ch;
  font-size:1.05rem;
}
.section-head .section-divider{
  width:92px;
  height:6px;
  border-radius:999px;
  margin:16px auto 0;
  background:linear-gradient(90deg, #0b4a74, #1d6a9a);
}
.section-head--split{
  flex-direction:row;
  justify-content:space-between;
  align-items:flex-end;
  text-align:left;
  gap:16px;
}
.section-head--split > div{
  margin:0;
}
.section-head--split .section-note{
  margin-left:0;
  margin-right:0;
  text-align:left;
}
.section-head--split .section-divider{
  margin-left:0;
  margin-right:auto;
}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.card{
  grid-column:span 12;
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:20px;
}
.col-6{grid-column:span 6}
.col-4{grid-column:span 4}
.col-8{grid-column:span 8}
.col-3{grid-column:span 3}
.callout{
  background:linear-gradient(135deg, var(--blue), #18385c);
  color:#fff;
}
.callout p{color:rgba(255,255,255,.8)}
.tool-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--blue-2);
  font-weight:800;
}
.blog-card{
  display:flex;
  flex-direction:column;
  gap:8px;
}
.blog-card-featured{
  background:
    linear-gradient(135deg, rgba(14,34,58,.04), rgba(214,184,102,.08)),
    var(--surface);
}
.lead-badges .pill{background:#eef5fb}
.form-card .stack-form{
  display:grid;
  gap:12px;
  margin-top:14px;
}
.stack-form label{
  display:grid;
  gap:6px;
  font-weight:700;
}
.stack-form span{color:var(--blue-2)}
.stack-form input{
  width:100%;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:14px;
  font:inherit;
  background:#fff;
}
.form-success{
  color:var(--blue-2);
  font-weight:800;
  margin-top:10px;
}
.feature-list{
  margin:18px 0 0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.7;
}
.feature-list li{
  margin-bottom:8px;
}
.process-list{
  display:grid;
  gap:10px;
  margin-top:12px;
}
.process-list div{
  padding:12px 14px;
  border-radius:16px;
  background:#f7fafc;
  border:1px solid var(--line);
  color:var(--muted);
}
.process-list strong{
  color:var(--blue-2);
  margin-right:6px;
}
.faq-card h3{margin-bottom:10px}
.topic-strip{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.article-card{
  padding:28px;
}
.article-meta{
  display:flex;
  gap:12px;
  align-items:center;
  flex-wrap:wrap;
  margin-bottom:16px;
  color:var(--muted);
}
.rich-content{
  color:var(--text);
  line-height:1.8;
  font-size:1.03rem;
}
.legal-doc .rich-content{
  max-width:840px;
  font-size:1.05rem;
  line-height:1.9;
}
.legal-doc .rich-content h1{
  margin:0 0 20px;
  color:var(--blue-2);
  font-size:clamp(2rem, 3vw, 2.6rem);
  line-height:1.1;
  letter-spacing:-.03em;
}
.legal-doc .rich-content h2{
  margin:2rem 0 .7rem;
  color:var(--blue-2);
  font-size:1.28rem;
  line-height:1.25;
  letter-spacing:-.02em;
}
.legal-doc .rich-content p{
  margin:0 0 1.15em;
  color:#27415f;
}
.legal-doc .rich-content ul{
  margin:0 0 1.15em;
  padding-left:24px;
}
.legal-doc .rich-content li{
  margin-bottom:10px;
  color:#27415f;
}
.legal-doc .rich-content strong{
  color:#132840;
}
.rich-content p{
  margin:0 0 1.1em;
}
.rich-content h2,
.rich-content h3{
  margin:1.4em 0 .6em;
}
.rich-content ul{
  margin:0 0 1.1em;
  padding-left:22px;
}
.rich-content li{
  margin-bottom:8px;
}
.rich-content strong{
  color:#132840;
}
.sidebar-card{
  align-self:start;
}
.sidebar-card h4{
  margin:16px 0 8px;
}

.footer{
  margin-top:26px;
  padding:38px 0 16px;
  color:#c6ced8;
  background:rgba(14,34,58,.92);
  backdrop-filter:blur(10px);
  border-top:1px solid rgba(255,255,255,.08);
}
.history-section{
  padding:56px 0 42px;
  background:#fff;
}
.services-section{
  padding:58px 0 44px;
  background:#f7fafc;
}
.services-head{
  text-align:center;
  max-width:920px;
  margin:0 auto 30px;
}
.services-head h2{
  margin:10px 0 0;
  color:var(--blue-2);
  font-size:clamp(2rem, 3vw, 2.85rem);
  line-height:1.08;
}
.services-head p{
  margin:22px auto 0;
  max-width:68ch;
  color:#39526d;
  font-size:1.08rem;
  line-height:1.7;
}
.services-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:28px;
}
.service-card-link--footer{
  min-height:240px;
  padding:30px 30px 26px;
  border:1px solid rgba(14,34,58,.08);
  border-radius:18px;
  box-shadow:0 14px 30px rgba(8,19,31,.08);
}
.service-card-link--footer h3{
  margin-top:4px;
  font-size:1.15rem;
}
.service-card-link--footer p{
  font-size:1rem;
  line-height:1.58;
}
.service-card-link--footer .service-link{
  margin-top:6px;
}
.history-head{
  text-align:center;
  max-width:900px;
  margin:0 auto 28px;
}
.history-head h2{
  margin:12px 0 0;
  color:var(--blue-2);
  font-size:clamp(2rem, 3vw, 2.8rem);
  line-height:1.1;
}
.history-head p{
  margin:22px auto 0;
  max-width:110ch;
  color:#39526d;
  font-size:1.08rem;
  line-height:1.7;
}
.section-divider{
  width:92px;
  height:6px;
  border-radius:999px;
  margin:16px auto 0;
  background:linear-gradient(90deg, #0b4a74, #1d6a9a);
}
.history-gallery{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:24px;
  max-width:1120px;
  margin:0 auto;
}
.history-card{
  position:relative;
  margin:0;
  overflow:hidden;
  border-radius:22px;
  box-shadow:0 24px 54px rgba(8,19,31,.12);
  border:1px solid rgba(14,34,58,.08);
  background:#0e223a;
}
.history-card img{
  display:block;
  width:100%;
  height:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  filter:saturate(1.02);
}
.history-card::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(6,16,28,0) 55%, rgba(6,16,28,.72) 100%);
  pointer-events:none;
}
.history-card figcaption{
  position:absolute;
  left:16px;
  bottom:16px;
  z-index:1;
  display:inline-flex;
  align-items:center;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(14,34,58,.72);
  color:#fff;
  font-weight:800;
  letter-spacing:.02em;
  backdrop-filter:blur(6px);
}
.history-store-number{
  display:inline-flex;
  margin-left:8px;
  padding:4px 8px;
  border-radius:999px;
  background:var(--gold);
  color:#07111b;
  font-size:.78rem;
  letter-spacing:.04em;
}
.history-copy{
  max-width:980px;
  margin:34px auto 0;
  text-align:center;
}
.history-copy p{
  margin:0;
  color:#39526d;
  font-size:1.06rem;
  line-height:1.75;
}
.reviews-section{
  padding:48px 0 34px;
  background:#f7fafc;
}
.reviews-head{
  margin-bottom:18px;
}
.reviews-widget-wrap{
  background:#fff;
  border-radius:22px;
  border:1px solid rgba(14,34,58,.07);
  box-shadow:0 22px 44px rgba(8,19,31,.09);
  padding:14px 14px 8px;
}
.reviews-widget-wrap .elfsight-app-4a277cef-fe83-420c-a887-0e6163a4e489{
  min-height:290px;
}
.contact-section{
  padding:28px 0 34px;
  background:#fff;
}
.contact-head{
  margin-bottom:28px;
}
.contact-grid{
  display:grid;
  grid-template-columns:1fr 1.45fr;
  gap:28px;
  align-items:stretch;
}
.contact-card{
  background:linear-gradient(180deg, #fff 0%, #fbfdff 100%);
  border-radius:20px;
  box-shadow:0 22px 46px rgba(8,19,31,.08);
  border:1px solid rgba(14,34,58,.06);
  padding:30px 32px;
  height:100%;
}
.contact-stores{
  display:flex;
  flex-direction:column;
  gap:20px;
}
.contact-card h3{
  margin:0 0 22px;
  color:var(--blue-2);
  font-size:1.6rem;
}
.contact-item{
  display:flex;
  gap:16px;
  align-items:flex-start;
}
.contact-icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--gold);
  background:
    linear-gradient(180deg, rgba(14,34,58,.03), rgba(214,184,102,.08)),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,251,255,.9));
  border-radius:14px;
  border:1px solid rgba(214,184,102,.92);
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.7),
    0 10px 18px rgba(8,19,31,.05);
  margin-top:0;
}
.contact-icon svg{
  width:18px;
  height:18px;
  fill:currentColor;
}
.contact-item strong{
  display:block;
  font-size:1.03rem;
  color:#111827;
  margin-bottom:4px;
}
.contact-item p{
  margin:0;
  color:#35506d;
  line-height:1.65;
}
.contact-form{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.contact-form label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:.95rem;
  color:#18324b;
  font-weight:700;
}
.contact-form input,
.contact-form textarea{
  width:100%;
  border:1px solid #d3dbe6;
  border-radius:12px;
  padding:14px 14px;
  font:inherit;
  color:#10263f;
  background:#fff;
}
.contact-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.contact-submit{
  margin-top:8px;
  width:100%;
  border-radius:12px;
  min-height:52px;
  font-size:1rem;
  box-shadow:0 12px 26px rgba(220,38,38,.18);
}
.locations-section{
  padding:40px 0 26px;
  background:#f7fafc;
}
.locations-head{
  margin-bottom:24px;
}
.locations-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:24px;
  align-items:stretch;
}
.location-card{
  overflow:hidden;
  border-radius:22px;
  background:#fff;
  box-shadow:0 24px 50px rgba(8,19,31,.10);
  border:1px solid rgba(14,34,58,.08);
  display:flex;
  flex-direction:column;
  height:100%;
}
.location-card-head{
  padding:18px 20px 16px;
  background:linear-gradient(180deg, #0e223a, #123050);
  color:#fff;
  text-align:center;
}
.location-kicker{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-bottom:8px;
  color:#f6e6ad;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.74rem;
  font-weight:800;
}
.location-card-head h3{
  margin:0;
  font-size:1.05rem;
  line-height:1.3;
}
.location-card-head p{
  margin:6px 0 0;
  color:rgba(255,255,255,.76);
  font-size:.92rem;
}
.location-whatsapp{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:10px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:.86rem;
  font-weight:800;
  letter-spacing:.01em;
  transition:background-color .18s ease, transform .18s ease;
}
.location-whatsapp:hover{
  background:rgba(255,255,255,.18);
  transform:translateY(-1px);
}
.location-whatsapp svg{
  width:17px;
  height:17px;
  flex:0 0 auto;
}
.location-card iframe{
  display:block;
  width:100%;
  height:396px;
  border:0;
  flex:1 1 auto;
  min-height:320px;
}
.footer-top{
  display:block;
}
.footer-legal{
  padding-top:30px;
}
.footer-legal-top{
  display:grid;
  grid-template-columns:1.15fr .95fr .55fr;
  gap:20px;
  align-items:start;
}
.footer-legal-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  flex-wrap:wrap;
}
.footer-legal .footer-badge{
  margin-left:auto;
}
.footer-home-cta{
  color:#07111b;
}
.footer-legal-bottom{
  flex-wrap:wrap;
  white-space:normal;
  justify-content:space-between;
}
.footer-legal-bottom .footer-links-items{
  flex-wrap:wrap;
  justify-content:flex-end;
  white-space:normal;
}
.footer-brand-panel{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  flex-wrap:wrap;
}
.footer-legal .footer-brand-panel{
  align-items:flex-start;
}
.footer-brand-row{
  align-items:center;
  gap:0;
}
.footer-note{
  margin:0;
  line-height:1.7;
  color:#aeb7c3;
  max-width:42ch;
}
.footer-social{
  display:flex;
  gap:14px;
  align-items:center;
}
.footer-brand-tools{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
  margin-left:auto;
}
.footer-social--legal{
  align-self:flex-start;
  justify-content:flex-start;
  margin-left:0;
}
.footer-social-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);
  color:#d8dfe7;
}
.footer-social-link:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
}
.footer-social-link svg{
  width:18px;
  height:18px;
  fill:currentColor;
}
.footer-links-items{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
  justify-content:center;
}
.footer-links-items a{
  color:#d8dfe7;
  white-space:nowrap;
}
.footer-links-items a + a::before{
  content:"";
}
.footer-links-items a:not(:first-child)::before{
  content:"|";
  color:rgba(255,255,255,.24);
  margin-right:14px;
}
.footer-newsletter{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding-top:2px;
}
.footer-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.74rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#c9a94d;
  font-weight:800;
}
.footer-newsletter h3{
  margin:0;
  color:#fff;
  font-size:1.05rem;
  line-height:1.2;
}
.footer-blog-btn{
  padding:8px 12px;
  border-radius:10px;
  font-size:.8rem;
  min-height:32px;
  width:max-content;
}
.footer-badge{
  display:flex;
  justify-content:flex-end;
  align-items:center;
}
.footer-badge-card{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  width:auto;
  margin-left:0;
  border:0;
  background:transparent;
  box-shadow:none;
  color:inherit;
}
.footer-ra-seal{
  width:78px;
  min-height:66px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.footer-links-row{
  margin-top:20px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}
.footer-links-label{
  color:#c9a94d;
  font-size:.8rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:800;
}
.footer-bottom{
  margin-top:12px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  flex-wrap:nowrap;
  color:#aeb7c3;
  font-size:.86rem;
  white-space:nowrap;
}
.footer-bottom .footer-links-items{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap;
  justify-content:flex-end;
  white-space:nowrap;
}
.footer-bottom .footer-links-items a{
  color:#d8dfe7;
  white-space:nowrap;
  font-size:.86rem;
}
.footer-bottom .footer-links-items a:not(:first-child)::before{
  content:"|";
  color:rgba(255,255,255,.24);
  margin-right:8px;
}
.floating-actions{
  position:fixed;
  right:22px;
  bottom:22px;
  display:flex;
  flex-direction:column;
  gap:12px;
  z-index:70;
}
.floating-action{
  width:56px;
  height:56px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:0;
  box-shadow:0 18px 36px rgba(8,19,31,.22);
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
  color:#fff;
  font-size:1.25rem;
  font-weight:900;
}
.floating-action svg{
  width:24px;
  height:24px;
  display:block;
}
.floating-action:hover{
  transform:translateY(-2px);
  box-shadow:0 20px 42px rgba(8,19,31,.28);
}
.floating-top{
  background:linear-gradient(135deg, #0e223a, #174368);
  opacity:0;
  pointer-events:none;
}
.floating-top.is-visible{
  opacity:1;
  pointer-events:auto;
}
.floating-whatsapp{
  background:linear-gradient(135deg, #25D366, #1fb954);
}
.cookie-consent{
  position:fixed;
  z-index:1200;
  left:20px;
  right:20px;
  bottom:20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  max-width:980px;
  margin:0 auto;
  padding:18px 20px;
  color:#f6f8fb;
  background:#0e223a;
  border:1px solid rgba(214,184,102,.45);
  border-radius:16px;
  box-shadow:0 18px 48px rgba(7,17,27,.3);
}
.cookie-consent[hidden]{display:none}
.cookie-consent-copy{min-width:0}
.cookie-consent-copy strong{display:block;color:var(--gold);font-size:.98rem}
.cookie-consent-copy p{margin:5px 0 4px;color:rgba(255,255,255,.82);font-size:.84rem;line-height:1.45}
.cookie-consent-copy a{color:#fff;font-size:.8rem;text-decoration:underline}
.cookie-consent-actions{display:flex;flex:0 0 auto;gap:8px}
.cookie-consent-actions .btn{min-height:34px;padding:8px 13px;font-size:.78rem}
.cookie-consent-reject{color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25)}
@media (max-width:640px){
  .cookie-consent{left:12px;right:12px;bottom:12px;display:block;padding:16px}
  .cookie-consent-actions{margin-top:12px;justify-content:flex-end}
}
.footer-disclaimer{
  margin-top:12px;
  padding:12px 16px;
  border-radius:14px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
  display:flex;
  justify-content:center;
  text-align:center;
  line-height:1.55;
  font-size:.8rem;
  color:rgba(198,206,216,.72);
}
.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

@media (max-width: 960px){
  .contact-grid{
    grid-template-columns:1fr;
  }
  .contact-row{
    grid-template-columns:1fr;
  }
  .locations-grid{
      grid-template-columns:1fr;
    }
    .location-card iframe{
      height:320px;
      min-height:320px;
    }
  .contact-card{
    padding:24px 22px;
  }
  .brand-copy-inline{
    margin-left:10px;
  }
  .footer-bottom{
    flex-wrap:wrap;
    white-space:normal;
    justify-content:flex-start;
  }
  .footer-bottom .footer-links-items{
    flex-wrap:wrap;
    justify-content:flex-start;
    white-space:normal;
  }
  .footer-legal-top{
    align-items:flex-start;
  }
  .footer-legal-actions{
    justify-content:flex-start;
  }
  .footer-legal .footer-badge{
    margin-left:0;
  }
}

.hero-mini{
  padding:30px 0 18px;
}
.hero-mini .hero-copy{min-height:auto;padding:28px}
.legal-hero{
  padding:34px 0 18px;
}
.legal-title{
  margin:0;
  max-width:none;
  white-space:nowrap;
  font-size:clamp(1.45rem, 2.2vw, 2.05rem);
  line-height:1.08;
}
.legal-hero-inner{
  display:flex;
  align-items:center;
  justify-content:center;
}
.legal-hero-top{
  width:min(100%, 760px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 22px;
  background:rgba(255,255,255,.92);
  border:1px solid var(--line);
  border-radius:22px;
  box-shadow:var(--shadow);
}
.legal-home-icon{
  width:44px;
  height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:linear-gradient(135deg, var(--gold), #f0dfaa);
  color:#07111b;
  box-shadow:0 10px 24px rgba(8,19,31,.12);
  flex:0 0 auto;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.legal-home-icon svg{
  width:22px;
  height:22px;
}
.legal-home-icon:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 28px rgba(8,19,31,.16);
  filter:saturate(1.02);
}
.legal-content{
  padding:4px 0 38px;
}
.legal-article{
  padding:30px 32px 28px;
  border-radius:26px;
  border:1px solid rgba(14,34,58,.08);
  background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);
  box-shadow:0 14px 34px rgba(14,34,58,.05);
}
.legal-article .rich-content{
  max-width:760px;
  margin:0 auto;
}
.legal-article .rich-content h1{
  font-size:clamp(1.45rem, 2.1vw, 2.2rem);
  line-height:1.08;
  margin:0 0 18px;
  white-space:nowrap;
}
.legal-article .rich-content p,
.legal-article .rich-content li{
  color:#2f4156;
  line-height:1.8;
}
.legal-article .rich-content h2{
  scroll-margin-top:110px;
  position:relative;
  padding-top:4px;
  margin-top:1.6em;
  font-size:clamp(1.15rem, 1.4vw, 1.45rem);
}
.legal-article .rich-content h2::before{
  content:'';
  display:block;
  width:44px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--gold), rgba(212,171,78,.25));
  margin-bottom:12px;
}
.legal-article .rich-content p + h2,
.legal-article .rich-content ul + h2{
  margin-top:1.8em;
}
.legal-article .rich-content h2:first-of-type{
  margin-top:0;
}
.legal-toc{
  position:sticky;
  top:24px;
  padding:20px;
  border-radius:22px;
  border:1px solid rgba(14,34,58,.08);
  background:linear-gradient(180deg,#fff 0%,#f9fbfe 100%);
  box-shadow:0 12px 28px rgba(14,34,58,.06);
}
.legal-toc h3{
  margin:0 0 10px;
}
.legal-toc p{
  margin:0 0 14px;
  color:var(--muted);
  line-height:1.65;
}
.legal-toc ol{
  margin:0;
  padding-left:18px;
  color:var(--text);
  line-height:1.8;
}
.legal-toc li{
  margin-bottom:8px;
}
.legal-note{
  margin-top:16px;
  padding:16px;
  border-radius:18px;
  background:linear-gradient(180deg,#fff9ee,#fff);
  border:1px solid rgba(212,171,78,.28);
  box-shadow:0 8px 18px rgba(212,171,78,.06);
}
.legal-note strong{
  display:block;
  margin-bottom:6px;
}
.legal-note p{
  margin:0;
  color:var(--muted);
  line-height:1.65;
}
.list{margin:0;padding-left:18px;color:var(--muted);line-height:1.75}
.space{height:12px}

.admin-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  background:linear-gradient(180deg, #f7f9fc 0%, #eef4fa 100%);
}
.admin-sidebar{
  background:linear-gradient(180deg, #0e223a 0%, #10273f 100%);
  color:#fff;
  padding:24px 18px;
  position:sticky;
  top:0;
  height:100vh;
  overflow:auto;
  border-right:1px solid rgba(255,255,255,.08);
}
.admin-brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:22px;
  min-width:0;
}
.admin-brand .brand-lockup--admin{
  flex:1 1 auto;
  min-width:0;
  gap:10px;
}
.admin-brand .brand-lockup--admin .brand-icon{
  height:34px;
  flex:0 0 auto;
}
.admin-brand .brand-lockup--admin .brand-wordmark{
  display:block;
  max-width:none;
  overflow:visible;
  white-space:nowrap;
  font-size:.78rem;
  line-height:1;
  color:var(--gold);
}
.admin-brand .brand-copy{
  min-width:0;
  gap:3px;
}
.admin-brand .brand-copy .admin-panel-label{
  display:block;
  color:rgba(255,255,255,.72);
  font-size:.82rem;
  line-height:1.25;
  margin-top:0;
  white-space:nowrap;
}
.admin-section{
  margin-top:18px;
}
.admin-section-title{
  margin:0 0 10px;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-size:.72rem;
  color:rgba(255,255,255,.55);
}
.admin-menu{
  display:grid;
  gap:8px;
}
.admin-menu a{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 13px;
  border-radius:14px;
  color:rgba(255,255,255,.88);
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
}
.admin-menu a:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
}
.admin-sidebar-footer{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.72);
  font-size:.92rem;
}
.admin-main{
  padding:26px;
}
.admin-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  margin-bottom:18px;
  flex-wrap:wrap;
}
.admin-top > div{
  min-width:0;
  flex:1 1 520px;
}
.admin-top > .btn{
  align-self:flex-start;
  margin-top:4px;
}
.admin-top h1{
  line-height:1.08;
  letter-spacing:-0.02em;
}
.admin-kicker{
  display:inline-flex;
  padding:8px 11px;
  border-radius:999px;
  background:#eaf1f8;
  color:var(--blue-2);
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:.75rem;
}
.admin-hero{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:16px;
}
.admin-panel{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:28px;
  box-shadow:var(--shadow);
  padding:22px;
  position:relative;
  overflow:hidden;
}
.admin-panel::before{
  content:'';
  position:absolute;
  inset:0 0 auto 0;
  height:1px;
  background:linear-gradient(90deg, rgba(212,171,78,.45), rgba(14,34,58,0));
  pointer-events:none;
}
.admin-quick{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
}
.admin-tool{
  padding:16px;
  border-radius:18px;
  border:1px solid var(--line);
  background:linear-gradient(180deg, #fff, #f7fafc);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.admin-tool strong{display:block;margin-bottom:6px}
.admin-tool span{color:var(--muted);font-size:.94rem;line-height:1.5}
.admin-tool:hover{
  transform:translateY(-2px);
  border-color:rgba(0,57,93,.18);
  box-shadow:0 16px 36px rgba(16,39,63,.08);
}
.admin-metrics{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
  margin-top:16px;
}
.metric{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px;
  box-shadow:var(--shadow);
}
.metric strong{display:block;font-size:1.35rem;margin-bottom:4px}
.metric span{color:var(--muted);font-size:.92rem}
.admin-tools-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:16px;
  margin-top:16px;
  align-items:stretch;
}
.admin-tool-card{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:22px;
  box-shadow:var(--shadow);
  padding:20px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
  position:relative;
  overflow:hidden;
}
.admin-tool-card h3{margin:0 0 8px}
.admin-tool-card p{margin:0;color:var(--muted);line-height:1.65}
.admin-tool-card .tool-link{
  display:inline-flex;
  margin-top:14px;
  color:var(--blue-2);
  font-weight:800;
}
.admin-tool-card:hover{
  transform:translateY(-3px);
  border-color:rgba(0,57,93,.18);
  box-shadow:0 18px 42px rgba(16,39,63,.1);
}
.admin-tool-card::after{
  content:'';
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg, rgba(212,171,78,.9), rgba(14,34,58,0));
  opacity:.85;
}
.admin-page-lead{
  color:var(--muted);
  max-width:78ch;
  margin:10px 0 0;
  line-height:1.75;
  font-size:1.02rem;
}
.admin-section-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 11px;
  border-radius:999px;
  background:#eef4fb;
  color:var(--blue-2);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.72rem;
}
.admin-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:#f4f7fb;
  color:var(--blue-2);
  border:1px solid var(--line);
  font-size:.85rem;
  font-weight:700;
}
.admin-badge.is-success{background:#ecf8f2;color:#137a4a;border-color:#cfe9db}
.admin-badge.is-warning{background:#fff7e8;color:#996200;border-color:#f4ddb0}
.admin-badge.is-muted{background:#f4f7fb;color:var(--muted)}
.admin-data-table-wrap{
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:var(--shadow);
}
.admin-data-table{
  width:100%;
  border-collapse:collapse;
  min-width:760px;
}
.admin-data-table th,
.admin-data-table td{
  padding:14px 16px;
  text-align:left;
  border-bottom:1px solid #edf2f7;
  vertical-align:top;
  overflow-wrap:anywhere;
}
.admin-data-table th{
  background:#f8fafc;
  font-size:.83rem;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:#5f6f85;
}
.admin-data-table tr:last-child td{border-bottom:none}
.admin-record-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px;
  margin-top:14px;
  align-items:stretch;
}
.admin-record-grid--campaigns{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}
.admin-record-card{
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
  padding:18px;
  border:1px solid var(--line);
  border-radius:18px;
  background:linear-gradient(180deg,#fff 0%,#f8fbfe 100%);
  box-shadow:0 10px 24px rgba(16,39,63,.06);
}
.admin-record-card__head,
.admin-record-group__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.admin-record-card__eyebrow{
  display:block;
  margin-bottom:5px;
  color:var(--muted);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.admin-record-card__title,
.admin-record-group__title{
  margin:0;
  color:var(--blue-2);
  font-size:1.05rem;
  line-height:1.3;
  overflow-wrap:anywhere;
}
.admin-record-card__description{
  min-height:3em;
  margin:0;
  color:var(--muted);
  line-height:1.55;
  overflow-wrap:anywhere;
}
.admin-record-card__badges,
.admin-record-card__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}
.admin-record-card__actions{margin-top:auto}
.admin-record-card__actions form{margin:0}
.admin-record-card__details{
  display:grid;
  gap:10px;
  margin:0;
}
.admin-record-card__details > div{
  min-width:0;
  padding-top:10px;
  border-top:1px solid #e6edf4;
}
.admin-record-card__details dt{
  margin-bottom:4px;
  color:var(--muted);
  font-size:.75rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.admin-record-card__details dd{
  margin:0;
  overflow-wrap:anywhere;
}
.admin-record-groups{display:grid;gap:18px;margin-top:14px}
.admin-record-group{
  min-width:0;
  padding:16px;
  border:1px solid #dce6f1;
  border-radius:20px;
  background:#f8fafc;
}
.admin-record-group__title{font-size:1.15rem}
.admin-record-group .admin-record-grid{margin-top:14px}
.admin-record-group .admin-data-table-wrap{margin-top:14px}
.admin-slide-form{
  display:grid;
  gap:18px;
  margin-top:16px;
}
.admin-form-section{
  padding:18px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
}
.admin-form-section.is-muted{
  background:#f8fafc;
  border-color:#dce6f1;
}
.admin-form-title{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  padding:7px 11px;
  margin-bottom:14px;
  border-radius:999px;
  background:#eef4fb;
  color:var(--blue-2);
  font-weight:850;
  font-size:.76rem;
}
.admin-form-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:14px;
  align-items:end;
}
.admin-field{
  display:grid;
  gap:7px;
  min-width:0;
}
.admin-field span{
  color:#172336;
  font-size:.9rem;
  font-weight:800;
}
.admin-field input,
.admin-field select,
.admin-field textarea{
  width:100%;
  min-height:44px;
  padding:11px 13px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:#172336;
  font:inherit;
}
.admin-field textarea{
  min-height:120px;
  resize:vertical;
}
.admin-field input[type="file"]{
  padding:9px 11px;
}
.admin-field input[type="color"]{
  height:44px;
  padding:5px;
}
.admin-check-field{
  align-self:stretch;
  justify-content:start;
}
.admin-check-field input{
  width:20px;
  min-height:20px;
  padding:0;
  accent-color:var(--gold);
}
.admin-field.span-1{grid-column:span 1}
.admin-field.span-2{grid-column:span 2}
.admin-field.span-3{grid-column:span 3}
.admin-field.span-4{grid-column:span 4}
.admin-field.span-5{grid-column:span 5}
.admin-field.span-6{grid-column:span 6}
.admin-field.span-12{grid-column:span 12}
.admin-inline-note{
  padding:12px 14px;
  border:1px solid rgba(14,34,58,.08);
  border-radius:14px;
  background:linear-gradient(135deg, rgba(14,34,58,.035), rgba(214,184,102,.08));
  color:var(--muted);
  line-height:1.55;
  font-size:.92rem;
}
.admin-form-section .admin-inline-note{
  margin:12px 0 0;
}
.admin-form-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.admin-form-actions .btn{
  min-height:42px;
  padding:10px 18px;
  border-radius:12px;
}
.admin-form-actions a.btn{
  background:rgba(14,34,58,.08);
  color:var(--blue-2);
  text-decoration:none;
}
.media-picker-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(150px, 1fr));
  gap:12px;
  margin-top:14px;
}
.media-picker-card{
  display:grid;
  gap:8px;
  padding:10px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  color:#172336;
  text-align:left;
  font:inherit;
  cursor:pointer;
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.media-picker-card:hover,
.media-picker-card.is-selected{
  transform:translateY(-1px);
  border-color:rgba(214,184,102,.85);
  box-shadow:0 12px 22px rgba(14,34,58,.09);
}
.media-thumb{
  display:grid;
  place-items:center;
  aspect-ratio:16 / 9;
  overflow:hidden;
  border-radius:10px;
  background:#eef4fb;
  color:var(--blue-2);
}
.media-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.media-name{
  display:block;
  color:var(--muted);
  font-size:.78rem;
  line-height:1.25;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.media-library-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(210px, 1fr));
  gap:14px;
}
.media-library-card{
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:#fff;
  box-shadow:0 12px 28px rgba(14,34,58,.06);
}
.media-library-preview{
  display:grid;
  place-items:center;
  aspect-ratio:16 / 9;
  background:#eef4fb;
  color:var(--blue-2);
}
.media-library-preview img,
.media-library-preview video{
  width:100%;
  height:100%;
  object-fit:cover;
}
.media-library-body{
  display:grid;
  gap:7px;
  padding:12px;
}
.media-library-body strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.media-library-url{
  width:100%;
  min-height:36px;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:10px;
  color:var(--muted);
  background:#f8fafc;
  font:inherit;
  font-size:.78rem;
}
.slide-visual-editor{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px;
  gap:16px;
  align-items:stretch;
}
.slide-visual-stage{
  position:relative;
  aspect-ratio:1920 / 650;
  min-height:0;
  border:1px solid #dce6f1;
  border-radius:16px;
  overflow:hidden;
  background:#eff3f7;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.65);
  cursor:crosshair;
  touch-action:none;
}
.slide-visual-stage img,
.slide-visual-stage video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:none;
}
.slide-visual-empty{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  padding:24px;
  color:#6b7b8f;
  text-align:center;
  font-weight:700;
}
.slide-visual-crosshair{
  position:absolute;
  left:4%;
  top:72%;
  z-index:3;
  width:18px;
  height:18px;
  border:2px solid var(--gold);
  border-radius:999px;
  pointer-events:none;
  transform:translate(-50%, -50%);
  box-shadow:0 0 0 3px rgba(14,34,58,.35);
}
.slide-visual-crosshair::before,
.slide-visual-crosshair::after{
  content:'';
  position:absolute;
  background:var(--gold);
  left:50%;
  top:50%;
  transform:translate(-50%, -50%);
}
.slide-visual-crosshair::before{
  width:30px;
  height:2px;
}
.slide-visual-crosshair::after{
  width:2px;
  height:30px;
}
.slide-visual-overlay{
  position:absolute;
  left:4%;
  top:72%;
  z-index:2;
  display:grid;
  gap:8px;
  width:min(560px, calc(100% - 28px));
  max-width:560px;
  padding:8px;
  color:#fff;
  cursor:grab;
  user-select:none;
  pointer-events:none;
  text-shadow:0 2px 10px rgba(0,0,0,.45);
  transform:translate(0, -50%);
  outline:none;
}
.slide-visual-overlay:focus,
.slide-visual-overlay:hover{
  border-radius:12px;
  box-shadow:0 0 0 2px rgba(214,184,102,.75);
}
.slide-visual-overlay:active{
  cursor:grabbing;
}
.slide-visual-overlay strong,
.slide-visual-overlay span{
  display:block;
  line-height:1.15;
}
.slide-visual-overlay em{
  justify-self:start;
  align-items:center;
  width:max-content;
  max-width:100%;
  min-height:30px;
  margin-top:2px;
  padding:7px 14px;
  border-radius:999px;
  background:var(--gold);
  color:#071323;
  font-size:.72rem;
  font-style:normal;
  font-weight:900;
  line-height:1;
  text-shadow:none;
}
.slide-visual-overlay.is-compact em{
  min-height:24px;
  padding:5px 10px;
  font-size:.66rem;
}
.slide-visual-overlay.is-medium em{
  min-height:36px;
  padding:10px 18px;
  font-size:.82rem;
}
.slide-visual-overlay.is-large em{
  min-height:42px;
  padding:12px 22px;
  font-size:.9rem;
}
.slide-nudge-panel{
  display:grid;
  align-content:start;
  gap:12px;
  padding:16px;
  border:1px solid #dce6f1;
  border-radius:16px;
  background:linear-gradient(180deg,#fff,#f8fafc);
}
.slide-nudge-panel strong{
  color:var(--blue-2);
  font-size:.95rem;
}
.slide-nudge-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.slide-nudge-grid button{
  min-height:36px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--blue-2);
  font:inherit;
  font-size:.82rem;
  font-weight:850;
  cursor:pointer;
}
.slide-nudge-grid button:hover{
  border-color:rgba(14,34,58,.22);
  background:#eef4fb;
}
.slide-range-tools{
  display:grid;
  gap:10px;
}
.slide-range-tools label{
  display:grid;
  gap:6px;
}
.slide-range-tools span{
  color:#172336;
  font-size:.8rem;
  font-weight:850;
}
.slide-range-tools input[type="range"]{
  width:100%;
  accent-color:var(--gold);
}
.slide-nudge-panel p{
  margin:0;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.55;
}
.admin-empty-state{
  padding:18px;
  border:1px dashed var(--line);
  border-radius:18px;
  color:var(--muted);
  background:#fafcff;
}
.admin-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  margin-top:16px;
  align-items:stretch;
}
.admin-summary-card{
  padding:18px;
  border-radius:20px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  position:relative;
  overflow:hidden;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.admin-summary-card strong{
  display:block;
  font-size:1.5rem;
  margin-bottom:6px;
}
.admin-summary-card span{
  display:block;
  color:var(--muted);
  line-height:1.55;
}
.admin-summary-card::before{
  content:'';
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg, rgba(212,171,78,.9), rgba(14,34,58,.15));
}
.admin-summary-card:hover{
  transform:translateY(-2px);
  border-color:rgba(0,57,93,.18);
  box-shadow:0 18px 42px rgba(16,39,63,.1);
}
.admin-data-table-wrap,
.metric{
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.admin-data-table-wrap:hover,
.metric:hover{
  transform:translateY(-2px);
  box-shadow:0 18px 42px rgba(16,39,63,.1);
}
.wysiwyg-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:10px;
}
.wysiwyg-toolbar button{
  border:1px solid var(--line);
  background:#fff;
  border-radius:12px;
  padding:9px 12px;
  font:inherit;
  font-weight:800;
  color:var(--blue-2);
  cursor:pointer;
}
.wysiwyg-toolbar button:hover{
  background:var(--surface-2);
}
.wysiwyg-editor{
  min-height:220px;
  padding:14px 15px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  font:inherit;
  line-height:1.7;
  outline:none;
}
.wysiwyg-editor:focus{
  border-color:rgba(0,57,93,.35);
  box-shadow:0 0 0 3px rgba(0,57,93,.08);
}
.wysiwyg-editor h2,
.wysiwyg-editor h3,
.wysiwyg-editor h4{
  margin:1em 0 .5em;
}
.wysiwyg-editor p{
  margin:0 0 1em;
}
.wysiwyg-source{
  position:absolute;
  left:-9999px;
  width:1px;
  height:1px;
  overflow:hidden;
}

@media (max-width: 960px){
  .hero-grid,.stats,.footer-top{grid-template-columns:1fr}
  .hero-rail{grid-template-columns:1fr}
  .grid.campaign-benefits-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .impact-stats{grid-template-columns:repeat(2, minmax(0, 1fr)); padding:14px}
  .col-6,.col-4,.col-8,.col-3{grid-column:span 12}
  .admin-form-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  .slide-visual-editor{grid-template-columns:1fr}
  .slide-visual-stage{min-height:0}
  .admin-field.span-1,
  .admin-field.span-2,
  .admin-field.span-3,
  .admin-field.span-4,
  .admin-field.span-5,
  .admin-field.span-6{grid-column:span 6}
  .hero-copy{min-height:auto}
  .campaign-topbar-inner{flex-wrap:wrap}
  .blog-story-card{min-height:auto}
  .hero-carousel-stage,.hero-carousel-item{min-height:280px}
  .nav{display:none}
  .topbar-inner{grid-template-columns:1fr auto; gap:14px}
  .topbar-actions{width:auto; justify-self:end}
  .topbar-contact{flex:0 0 auto}
  .footer-legal-top{grid-template-columns:1fr}
  .footer-brand-tools{margin-left:auto}
  .footer-badge{justify-content:flex-end}
  .admin-shell{grid-template-columns:1fr}
  .admin-sidebar{position:relative;height:auto}
  .admin-hero,.admin-tools-grid,.admin-metrics,.admin-quick{grid-template-columns:1fr}
  .admin-record-grid--campaigns{grid-template-columns:1fr}
  .section-head{align-items:flex-start}
  .article-card{padding:22px}
}

@media (max-width: 640px){
  .grid.campaign-benefits-grid{grid-template-columns:1fr}
  .admin-form-section{padding:14px}
  .admin-form-grid{grid-template-columns:1fr}
  .admin-record-grid{grid-template-columns:1fr}
  .admin-record-group{padding:12px}
  .admin-record-group__header{align-items:flex-start;flex-direction:column}
  .slide-visual-stage{min-height:0}
  .slide-visual-overlay{
    width:min(320px, calc(100% - 20px));
    padding:6px;
  }
  .admin-field.span-1,
  .admin-field.span-2,
  .admin-field.span-3,
  .admin-field.span-4,
  .admin-field.span-5,
  .admin-field.span-6{grid-column:1}
  .impact-stats{grid-template-columns:1fr; gap:12px}
  .impact-stat{padding:22px 18px 20px}
  .floating-actions{
    right:14px;
    bottom:14px;
  }
  .floating-action{
    width:50px;
    height:50px;
  }
  .topbar-inner{
    grid-template-columns:1fr auto;
    justify-items:stretch;
    gap:10px;
  }
  .topbar-actions{
    justify-self:end;
  }
  .brand-lockup--topbar{
    gap:3px;
  }
  .brand-lockup--topbar .brand-icon{
    height:46px;
  }
  .brand-lockup--topbar .brand-wordmark{
    font-size:clamp(.78rem, 0.9vw, 1.1rem);
    transform:translateY(-1px);
  }
  .footer-top{
    gap:16px;
  }
  .footer-brand-panel{
    align-items:center;
    justify-content:center;
  }
  .footer-brand-tools{
    justify-content:center;
    margin-left:0;
  }
  .footer-newsletter,
  .footer-badge{
    align-items:center;
  }
  .footer-blog-btn{
    width:100%;
    max-width:180px;
  }
  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    white-space:normal;
  }
  .footer-bottom .footer-links-items{
    justify-content:flex-start;
    flex-wrap:wrap;
  }
  .footer-legal-bottom{
    justify-content:flex-start;
  }
  .footer-legal-bottom .footer-links-items{
    justify-content:flex-start;
  }
  .legal-layout{
    grid-template-columns:1fr;
  }
  .legal-toc{
    position:static;
  }
  .contact-card{
    padding:22px 18px;
  }
  .location-card iframe{
      height:280px;
      min-height:280px;
    }
  .reviews-widget-wrap{
      padding:12px 12px 8px;
      border-radius:20px;
    }
  .history-section{
      padding:44px 0 34px;
    }
  .services-grid{
      grid-template-columns:1fr;
      gap:16px;
    }
  .services-section{
      padding:44px 0 34px;
    }
  .services-head h2{
      font-size:clamp(1.7rem, 6vw, 2.2rem);
    }
  .services-head p{
      font-size:.98rem;
    }
  .history-head h2{
      font-size:clamp(1.7rem, 6vw, 2.2rem);
    }
  .history-head p{
      font-size:.98rem;
    }
  .history-gallery{
      grid-template-columns:1fr;
      gap:16px;
    }
  .history-card img{
      aspect-ratio:16/9;
    }
  }
.blog-card-image{display:block;width:100%;height:190px;object-fit:cover;border-radius:18px 18px 0 0;margin:-1px -1px 18px;width:calc(100% + 2px)}
.blog-card-featured .blog-card-image{height:270px}
.blog-post-image{display:block;width:100%;max-height:420px;object-fit:cover;border-radius:14px;margin-bottom:24px}
#servicos,#quem-somos,#fale-conosco{scroll-margin-top:96px}
@media (max-width:760px){.blog-card-image,.blog-card-featured .blog-card-image{height:180px}}
