:root{
    --wln-rose:#F2AEBB; --wln-rose-light:#F9D8DD; --wln-champagne:#EFE3D8; --wln-offwhite:#FAF6F1;
    --wln-marsala:#9E4B47; --wln-marsala-deep:#843C39; --wln-rosegold:#C98E7E; --wln-rosegold-deep:#B0735F;
    --wln-graphite:#2E2A28; --wln-graphite-soft:#5A524E; --wln-graphite-faint:#8A807A; --wln-champagne-deep:#E2D1C1;
    --font-display:'Alta','Marcellus',Georgia,serif; --font-heading:'Megrim','Josefin Sans',system-ui,sans-serif; --font-serif:'Cormorant Garamond',Georgia,serif;
    --font-script:'Italianno','Cormorant Garamond',cursive; --font-sans:'Josefin Sans','Montserrat',sans-serif;
    --font-body:'Montserrat',system-ui,sans-serif;
    --shadow-sm:0 4px 16px rgba(46,42,40,0.06); --shadow-md:0 12px 36px rgba(46,42,40,0.08);
    --shadow-lg:0 24px 60px rgba(46,42,40,0.12); --shadow-rose:0 16px 44px rgba(201,142,126,0.22);
    --line-hairline:rgba(46,42,40,0.14);
  }
  @font-face{font-family:'Alta';src:url('assets/fonts/Alta.woff') format('woff');font-weight:100 700;font-style:normal;font-display:swap}
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{margin:0;background:var(--wln-offwhite);color:var(--wln-graphite-soft);font-family:var(--font-body);-webkit-font-smoothing:antialiased}
  @keyframes edFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
  @keyframes edFadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
  .ed-fade{animation:edFadeUp .9s cubic-bezier(0.22,0.61,0.36,1) both}
  .reveal{transition:opacity .62s cubic-bezier(0.22,0.61,0.36,1),transform .62s cubic-bezier(0.22,0.61,0.36,1)}
  .is-armed .reveal{opacity:0;transform:translateY(26px)}
  .is-armed .reveal.is-visible{opacity:1;transform:none}
  @media (prefers-reduced-motion:reduce){.is-armed .reveal{opacity:1 !important;transform:none !important;transition:none !important}}
  @media (max-width:900px){
    .ed-navlinks{display:none !important}
    .ed-burger{display:flex !important}
    .ed-hero-media{aspect-ratio:4/5 !important}
    .ed-split{grid-template-columns:1fr !important;gap:2.6rem !important}
    .ed-media-col{order:-1}
    .ed-map{flex-direction:column !important;align-items:center !important;gap:1.4rem !important;text-align:center}
    .ed-map-line{display:none !important}
  }
  @media (min-width:901px){
    .ed-mobile-menu{display:none !important}
  }
  @media (prefers-reduced-motion:reduce){*{animation:none !important}}

  /* estados controlados pelo main.js */
  .ed-nav{padding:1.4rem 6%;background:transparent;backdrop-filter:none;border-bottom:1px solid transparent}
  .ed-nav.is-scrolled{padding:0.8rem 6%;background:rgba(250,246,241,0.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(46,42,40,0.14)}
  .ed-mobile-menu{max-height:0;opacity:0;pointer-events:none}
  .ed-nav.menu-open .ed-mobile-menu{max-height:420px;opacity:1;pointer-events:auto}
  .ed-nav.menu-open .ed-burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
  .ed-nav.menu-open .ed-burger span:nth-child(2){opacity:0}
  .ed-nav.menu-open .ed-burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
  /* vídeo 3D com scrub pelo scroll */
  .scrub-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
  .scrub-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
  [data-media-slot].has-scrub > div{display:none !important}
  /* modelo recortada, sem moldura: o fundo da seção aparece atrás */
  [data-media-slot].has-cutout{background:none !important;border:none !important;box-shadow:none !important;border-radius:0 !important}
  /* hovers do design (style-hover); !important pra vencer o estilo inline */
  .btn-primary:hover{background:var(--wln-marsala-deep)!important;transform:translateY(-2px);box-shadow:var(--shadow-md)!important}
  .btn-outline:hover{background:var(--wln-graphite)!important;color:var(--wln-offwhite)!important}
  .wa-float:hover{transform:translateY(-3px) scale(1.04);box-shadow:0 22px 54px rgba(37,211,102,0.34)!important}