/* ====== Lírios do Vale — layout 1 (slider grande). Carregado depois de site.css e services.css; cores vêm de Aparência ====== */
:root{--ink:#24302a;--muted:#5f6b64;--line:rgba(31,93,67,.14);--sand:color-mix(in srgb,var(--ivory) 90%,var(--blue) 10%)}
body{background:#fff;color:var(--ink);font-size:16px;line-height:1.65}
h1,h2,h3,h4{font-weight:700;letter-spacing:-.015em}
.sec-ivory h2,.sec-white h2,.sec-sand h2{color:var(--blue)}
.kicker,.lv-kicker{display:inline-block;font:700 12px var(--f-body);letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.kicker::before{display:none}
.lead{color:var(--muted)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* Botões: pílula, texto normal */
.btn{border-radius:999px;text-transform:none;letter-spacing:0;font:700 15px var(--f-body);padding:13px 26px}
.btn-gold{background:var(--gold);color:#1f2a22;box-shadow:none}
.btn-gold:hover{background:var(--gold-l);transform:translateY(-1px);box-shadow:0 10px 24px -14px rgba(0,0,0,.5)}
.btn-white{background:#fff;color:var(--black);border-color:#fff}
.btn-white:hover{background:transparent;color:#fff}
.btn-line{border-color:rgba(255,255,255,.6);color:#fff}
.btn-line:hover{background:#fff;border-color:#fff;color:var(--black)}
.btn-dark-line{border-color:var(--blue);color:var(--blue)}
.btn-dark-line:hover{background:var(--blue);border-color:var(--blue);color:#fff}

/* Faixa de contatos */
.topbar{background:var(--blue);color:#fff;font-size:13.5px}
.topbar a:hover{color:#fff;text-decoration:underline}
.tb-region{opacity:.85}

/* Cabeçalho claro, logo no meio */
.site-head,.site-head.over,.site-head.over.scrolled,.is-inner .site-head{position:relative;top:auto;left:auto;right:auto;background:#fff;backdrop-filter:none;border-bottom:1px solid var(--line)}
.site-head.scrolled{box-shadow:0 6px 24px -18px rgba(0,0,0,.35)}
.brand{color:var(--ink);gap:14px}
.brand-text{display:flex;flex-direction:column;line-height:1.1}
.brand-name{font:700 1.7rem var(--f-title);letter-spacing:-.01em;color:var(--blue)}
.brand-tag{font:500 11.5px var(--f-body);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:6px}
.site-head.center .head-in{gap:14px;padding:22px 0 0}
.site-head.center .brand{flex-direction:column;text-align:center;gap:10px}
.site-head.center .brand-text{align-items:center}
.site-head.center .brand-name{font-size:2.05rem;letter-spacing:-.01em}
.site-head.center .nav{border-top:1px solid var(--line);padding-top:2px}
.nav ul a{font:500 15px var(--f-body);letter-spacing:0;text-transform:none;color:var(--ink);padding:14px 6px;display:inline-block}
.nav ul a::after{left:0;right:0;bottom:auto;top:-3px;height:3px;background:var(--blue);transform:scaleX(0);transition:transform .25s var(--ease)}
.nav ul a:hover{color:var(--blue)}.nav ul a:hover::after{right:0}
.nav ul a.on{color:var(--blue)}.nav ul a.on::after{transform:none}
.site-head.center .nav ul{gap:8px 22px}
.nav-cta{color:#1f2a22}
.burger span{background:var(--ink)}

/* Slider */
.lv-slider{position:relative;overflow:hidden;background:color-mix(in srgb,var(--blue) 14%,#fff);isolation:isolate}
.lv-track{position:relative;aspect-ratio:1900/690;max-height:var(--sl-h,620px);min-height:240px;width:100%}
.lv-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .9s ease,visibility 0s linear .9s}
.lv-slide.on{opacity:1;visibility:visible;transition:opacity .9s ease}
.lv-slide img,.lv-slide a{display:block;width:100%;height:100%}
.lv-slide img{object-fit:cover}
.lv-slide-empty{display:grid;place-items:center;padding:20px;text-align:center;color:var(--black);font-weight:500}
.lv-arrow{position:absolute;top:50%;z-index:2;width:46px;height:46px;margin-top:-23px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(255,255,255,.92);color:var(--black);cursor:pointer;box-shadow:0 6px 18px -8px rgba(0,0,0,.45);transition:background .2s,transform .2s}
.lv-arrow:hover{background:#fff;transform:scale(1.06)}
.lv-prev{left:20px}.lv-next{right:20px}
.lv-dots{position:absolute;z-index:2;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:8px}
.lv-dots button{width:10px;height:10px;padding:0;border:0;border-radius:10px;background:rgba(255,255,255,.65);cursor:pointer;transition:width .3s var(--ease),background .3s}
.lv-dots button.on{width:30px;background:#fff}

/* Faixa verde abaixo do slider */
.lv-band{background:var(--navy);color:#fff;padding:clamp(30px,4vw,44px) 0}
.lv-band-in{display:flex;align-items:center;justify-content:space-between;gap:24px 40px;flex-wrap:wrap}
.lv-band-copy{flex:1 1 520px;max-width:760px}
.lv-band h1,.lv-band h2{font:700 clamp(1.8rem,3.4vw,2.7rem)/1.1 var(--f-title);color:#fff;margin:8px 0 0}
.lv-band p{margin:12px 0 0;color:rgba(255,255,255,.85);max-width:62ch}
.lv-band-btns{display:flex;flex-wrap:wrap;gap:12px}
.lv-band-cta h2{margin:0}

/* Seções */
.sec{padding:clamp(56px,7vw,92px) 0}
.sec-head{margin-bottom:32px;align-items:flex-end}
.sec-head h2{font-size:clamp(1.9rem,3.4vw,2.5rem);margin:0}
.sec-head .lead{margin:10px 0 0}
.sec-sand{background:var(--ivory)}

/* Serviços */
.svc-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}
.svc-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:none}
.svc-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -26px rgba(31,93,67,.5)}
.svc-ic{width:auto;height:auto;margin:26px 26px 0;background:none;color:var(--blue);justify-content:start}
.svc-body{padding:14px 26px 24px}
.svc-body strong{font:700 1.2rem/1.25 var(--f-body);color:var(--ink);letter-spacing:-.01em}
.svc-body>span:not(.more){color:var(--muted);font-size:.95rem}
.svc-card .more{color:var(--blue);text-transform:none;letter-spacing:0;font-size:14px}

/* Trabalhos recentes (antes e depois) */
.lv-works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.lv-works-grid.n4{grid-template-columns:repeat(4,minmax(0,1fr))}.lv-works-grid.n2{grid-template-columns:repeat(2,minmax(0,1fr))}.lv-works-grid.n1{grid-template-columns:minmax(0,640px)}
.lv-work{margin:0}
.lv-work .ba{aspect-ratio:4/3;border-radius:var(--radius);background:color-mix(in srgb,var(--blue) 12%,#fff)}
.lv-work figcaption{display:flex;flex-direction:column;gap:2px;padding:10px 4px 0}
.lv-work figcaption a{font-weight:600;color:var(--ink);text-decoration:none}
.lv-work figcaption a:hover{color:var(--blue)}
.lv-work figcaption span{font-size:.88rem;color:var(--muted)}
.ba-empty{color:var(--black);text-transform:none;letter-spacing:0;font-weight:500}
.proj-card{border-color:var(--line)}
.proj-body strong{font:600 1.05rem var(--f-body);color:var(--ink)}

/* Por que somos bons */
.lv-why .promise-grid{border:1px solid var(--line);border-radius:var(--radius);background:var(--ivory)}
.lv-why .promise h3{font:700 1.1rem var(--f-body);color:var(--ink)}
.lv-why .promise p{color:var(--muted)}
.promise-ic{background:#fff;color:var(--blue);border:1px solid var(--line)}
.lv-why-more{margin:26px 0 0}

/* Destaque com foto */
.lv-feature-in{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(28px,5vw,64px);align-items:center}
.lv-feature-in.no-img{grid-template-columns:1fr;max-width:760px}
.lv-feature-img img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius)}
.lv-feature-copy h2{font-size:clamp(1.8rem,3.2vw,2.4rem);color:var(--blue);margin:0 0 16px}
.lv-feature-text{color:var(--muted);font-size:1.05rem;max-width:56ch;margin-bottom:26px}

/* Páginas internas */
.page-hero,.page-hero[style*="--bg"]{min-height:0;display:block;padding:clamp(34px,5vw,56px) 0;background:var(--navy);text-align:left}
.page-hero::before,.page-hero[style*="--bg"]::before{display:none}
.page-hero h1{font-size:clamp(2.1rem,4.6vw,3.2rem);margin:0}
.page-hero .lead{color:rgba(255,255,255,.85);margin-top:12px}
.prose{color:var(--ink);font-size:1.06rem}
.prose h2,.prose h3{color:var(--blue)}
.prose a{color:var(--blue);text-decoration-color:currentColor}
.prose ul li::marker{color:var(--blue)}
.svc-aside{background:var(--ivory);border:1px solid var(--line)}
.svc-aside .btn{width:100%}
.contact-list .ic{color:var(--blue)}.contact-list a{color:var(--ink)}
.contact-form{background:var(--ivory);border-color:var(--line)}
.contact-form label{color:var(--ink);letter-spacing:.06em}
.contact-form input,.contact-form select,.contact-form textarea{border-color:#d7ddd8}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px color-mix(in srgb,var(--blue) 18%,transparent)}
.social a{border-color:rgba(255,255,255,.35);color:#fff}
.social a:hover{background:var(--gold);border-color:var(--gold);color:#1f2a22}
.social-dark a{border-color:var(--line);color:var(--blue)}

/* Rodapé */
.site-foot{background:var(--black);color:rgba(255,255,255,.82);padding-top:60px}
.site-foot .brand-name{color:#fff;font-size:1.4rem}
.site-foot h4{color:var(--gold-l);letter-spacing:.14em}
.site-foot ul a:hover{color:#fff}
.foot-bottom{border-top-color:rgba(255,255,255,.14)}
.foot-bottom a{color:rgba(255,255,255,.6);text-decoration:underline}

/* WhatsApp flutuante */
.wa-float{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:60;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 10px 26px -10px rgba(0,0,0,.5);transition:transform .2s}
.wa-float:hover{transform:scale(1.07)}

/* Celular e tablet */
@media(max-width:960px){
  .site-head,.site-head.menu-open,.site-head.over.scrolled,.is-inner .site-head{position:sticky;top:0;background:#fff}
  .site-head.center .head-in{padding:12px 0}
  .site-head.center .brand{flex-direction:row;text-align:left}
  .site-head.center .brand-text{align-items:flex-start}
  .site-head.center .brand-name{font-size:1.45rem}
  .brand-tag{font-size:10px}
  .site-head.center .nav{border-top:0}
  .nav{background:#fff}
  .nav ul a{font:600 1.6rem var(--f-title);color:var(--ink)}
  .nav ul a::after{display:none}
  .social.nav-social a{border-color:var(--line);color:var(--blue)}
  .lv-works-grid,.lv-works-grid.n4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lv-feature-in{grid-template-columns:1fr}
}
@media(max-width:640px){
  .topbar-in{justify-content:center;text-align:center}
  .lv-arrow{width:38px;height:38px;margin-top:-19px}.lv-prev{left:10px}.lv-next{right:10px}
  .lv-track{aspect-ratio:4/3}
  .lv-band-btns .btn{flex:1 1 auto}
  .lv-works-grid,.lv-works-grid.n4,.lv-works-grid.n2{grid-template-columns:1fr}
  .topbar-in>span:last-child{display:none}
}
@media (prefers-reduced-motion:reduce){.lv-slide{transition:none}}
