:root{
  --paper:#FAF1E8; --paper-2:#F3E8DA; --card:#FFFFFF;
  --ink:#16211A; --ink-2:#4A5347; --muted:#7E7A6C;
  --line:#E7DBCA; --line-2:#D5C6B1;
  --green:#22573D; --green-d:#173C2B; --green-l:#31764F; --green-soft:#E4EDE2;
  --berry:#3A2F6B; --berry-l:#5A4A9E; --berry-soft:#EAE6F4;
  --rust:#B85E25; --rust-soft:#F7E7D7;
  --on-dark:#F7F0E6; --on-dark-2:#C9D6C6;
  --btn-fg:#FAF1E8;
  --flag:#6F6B5D; --flag-soft:#F1E9DC;
  --sh-s:0 1px 2px rgba(22,33,26,.05);
  --sh-m:0 2px 6px rgba(22,33,26,.06), 0 14px 30px -20px rgba(22,33,26,.4);
  --sh-l:0 4px 12px rgba(22,33,26,.08), 0 30px 60px -34px rgba(22,33,26,.5);
  --r:14px;
  --wm:url('images/logo.png');
  --green-bd:#C6DBC6; --rust-bd:#E9CBA8; --berry-bd:#CFC7E6;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --green-bd:#2A3A2D; --rust-bd:#3A2C1D; --berry-bd:#2C2842;
  --paper:#12140F; --paper-2:#191C15; --card:#1B1F17;
  --ink:#EFEAE0; --ink-2:#C4C7B9; --muted:#8E9284;
  --line:#2B2F24; --line-2:#3D4233;
  --green:#84C39B; --green-d:#0E1610; --green-l:#9BD4AF; --green-soft:#18231B;
  --berry:#A79DE8; --berry-l:#C0B7F0; --berry-soft:#1D1B2B;
  --rust:#DE8B4F; --rust-soft:#2B2015;
  --on-dark:#F7F0E6; --on-dark-2:#C9D6C6;
  --btn-fg:#12140F;
  --flag:#96917F; --flag-soft:#20231A;
  --sh-s:0 1px 2px rgba(0,0,0,.5);
  --sh-m:0 2px 6px rgba(0,0,0,.5), 0 14px 30px -20px rgba(0,0,0,.9);
  --sh-l:0 4px 12px rgba(0,0,0,.55), 0 30px 60px -34px rgba(0,0,0,1);
}}
:root[data-theme="dark"]{
  --green-bd:#2A3A2D; --rust-bd:#3A2C1D; --berry-bd:#2C2842;
  --paper:#12140F; --paper-2:#191C15; --card:#1B1F17;
  --ink:#EFEAE0; --ink-2:#C4C7B9; --muted:#8E9284;
  --line:#2B2F24; --line-2:#3D4233;
  --green:#84C39B; --green-d:#0E1610; --green-l:#9BD4AF; --green-soft:#18231B;
  --berry:#A79DE8; --berry-l:#C0B7F0; --berry-soft:#1D1B2B;
  --rust:#DE8B4F; --rust-soft:#2B2015;
  --on-dark:#F7F0E6; --on-dark-2:#C9D6C6;
  --btn-fg:#12140F;
  --flag:#96917F; --flag-soft:#20231A;
  --sh-s:0 1px 2px rgba(0,0,0,.5);
  --sh-m:0 2px 6px rgba(0,0,0,.5), 0 14px 30px -20px rgba(0,0,0,.9);
  --sh-l:0 4px 12px rgba(0,0,0,.55), 0 30px 60px -34px rgba(0,0,0,1);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0; background:var(--paper); color:var(--ink);
  font-family:Figtree,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:17px; line-height:1.62; -webkit-font-smoothing:antialiased; overflow-x:hidden;}
h1,h2,h3,h4{margin:0; font-family:'Baloo 2',Figtree,sans-serif; font-weight:700; text-wrap:balance; letter-spacing:-.015em; line-height:1.08;}
h1{font-size:clamp(2.5rem,6vw,4.6rem);}
h2{font-size:clamp(1.9rem,3.7vw,3rem); line-height:1.06;}
h3{font-size:1.3rem; line-height:1.2; letter-spacing:-.018em;}
h4{font-size:1.05rem; font-weight:600; letter-spacing:-.012em;}
p{margin:0;}
a{color:var(--green-l); text-decoration:none;}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--rust); outline-offset:3px; border-radius:4px;}
img{max-width:100%;}
.wrap{width:min(1200px, 100% - 56px); margin-inline:auto;}
.narrow{max-width:70ch;}
.mono{font-family:"DM Mono",ui-monospace,Menlo,monospace;}
.kicker{font-family:"DM Mono",monospace; font-size:.71rem; letter-spacing:.2em; text-transform:uppercase; color:var(--rust); display:block;}
.lead{font-size:1.16rem; color:var(--ink-2); max-width:56ch;}



/* --- marca d'agua de fundo --- */
.band.alt, .band.dark, .phero{position:relative; overflow:hidden;}
.band.alt::before, .band.dark::before, .phero::before{
  content:""; position:absolute; z-index:0; pointer-events:none;
  right:-90px; top:50%; translate:0 -50%;
  width:min(560px,52vw); aspect-ratio:1.35/1;
  background:var(--wm) center/contain no-repeat;
  opacity:.05; rotate:-8deg;
}
.band.dark::before{opacity:.07;}
.phero::before{right:auto; left:-120px; top:34%; opacity:.06; width:min(430px,44vw);}
.band.alt > .wrap, .band.dark > .wrap{position:relative; z-index:1;}

/* --- pontos de separacao no titulo --- */
.dots{display:flex; gap:7px; align-items:center;}
.dots i{width:8px; height:8px; border-radius:50%; display:block; background:var(--green);}
.dots i:nth-child(2){background:var(--rust);}
.dots i:nth-child(3){background:var(--berry);}
.band.dark .dots i{background:#8FC39F;} .band.dark .dots i:nth-child(2){background:#EBC79E;} .band.dark .dots i:nth-child(3){background:#B9B0EE;}
.head .dots{margin-bottom:2px;}
.rule{border:0; border-top:2px dotted var(--line-2); margin:0;}
.band + .band{border-top:2px dotted var(--line);}
.band.dark + .band, .band + .band.dark, .band.photo + .band, .band + .band.photo{border-top:0;}

/* --- transicoes --- */
.rv{opacity:0; transform:translateY(30px); transition:opacity .8s cubic-bezier(.16,.84,.34,1), transform .8s cubic-bezier(.16,.84,.34,1); transition-delay:var(--d,0ms);}
.rv[data-anim="left"]{transform:translateX(-46px);}
.rv[data-anim="right"]{transform:translateX(46px);}
.rv[data-anim="zoom"]{transform:scale(.95); }
.rv[data-anim="blur"]{filter:blur(9px);}
.rv.in{opacity:1; transform:none; filter:none;}
.parallax{will-change:transform;}
.card, .pcard{transition:transform .38s cubic-bezier(.16,.84,.34,1), box-shadow .38s, border-color .38s;}
.card:hover{transform:translateY(-7px); border-color:var(--line-2);}
.links a{position:relative;}
.links a:not(.btn)::after{content:""; position:absolute; left:13px; right:13px; bottom:4px; height:2px; background:currentColor; transform:scaleX(0); transform-origin:left; transition:transform .3s cubic-bezier(.16,.84,.34,1); opacity:.6;}
.links a:not(.btn):hover::after{transform:scaleX(1);}

/* ---------- reveal ---------- */
.rv{opacity:0; transform:translateY(26px); transition:opacity .75s cubic-bezier(.22,.7,.3,1), transform .75s cubic-bezier(.22,.7,.3,1); transition-delay:var(--d,0ms);}
.rv.in{opacity:1; transform:none;}
@media (prefers-reduced-motion:reduce){ .rv{opacity:1 !important; transform:none !important;} html{scroll-behavior:auto;} *{animation:none !important;} }

/* ---------- nav ---------- */
.nav{position:fixed; inset:0 0 auto 0; z-index:60; transition:background .35s ease, box-shadow .35s ease, padding .35s ease; padding:16px 0;}
.nav .bar{display:flex; align-items:center; justify-content:space-between; gap:22px;}
.nav.solid{background:var(--paper); box-shadow:0 1px 0 var(--line), var(--sh-s); padding:8px 0;}
.brand{display:flex; align-items:center;}
.brand img{display:block; height:58px; width:auto; transition:height .35s ease; background:#FAF1E8; border-radius:10px; padding:3px 8px;}
.nav.solid .brand img{height:46px;}
.links{display:flex; align-items:center; gap:4px;}
.links a{font-size:.92rem; font-weight:500; color:var(--on-dark); padding:9px 13px; border-radius:8px; transition:background .2s, color .2s;}
.nav.solid .links a{color:var(--ink-2);}
.links a:hover{background:rgba(255,255,255,.14);}
.nav.solid .links a:hover{background:var(--paper-2); color:var(--ink);}
.links a.on{color:#fff; font-weight:700;}
.nav .links a.btn, .nav.solid .links a.btn, .nav.plain .links a.btn, .links.open a.btn{color:var(--btn-fg); font-weight:600;}
.nav .links a.btn:hover{background:var(--green-l); color:var(--btn-fg);}
.nav.solid .links a.on{color:var(--green);}
.nav.plain .links a{color:var(--ink-2);}
.nav.plain .links a.on{color:var(--green);}
.btn{display:inline-flex; align-items:center; gap:9px; background:var(--green); color:var(--btn-fg); font-family:'Baloo 2',sans-serif; font-size:.96rem; font-weight:700; padding:12px 22px; border-radius:999px; border:1.5px solid var(--green); cursor:pointer; transition:transform .2s cubic-bezier(.3,1.4,.5,1), background .2s, box-shadow .2s;}
.btn:hover{transform:translateY(-2px); background:var(--green-l); border-color:var(--green-l); box-shadow:var(--sh-m);}
.links .btn{color:var(--btn-fg);}
.btn.ghost{background:transparent; color:var(--green); border-color:var(--green);}
.btn.ghost:hover{background:var(--green-soft); color:var(--green);}
.btn.onphoto{background:rgba(255,255,255,.1); color:#fff; border-color:rgba(255,255,255,.55); backdrop-filter:blur(6px);}
.btn.onphoto:hover{background:#fff; color:var(--green-d); border-color:#fff;}
.btn.berry{background:var(--berry); border-color:var(--berry);}
.btn.berry:hover{background:var(--berry-l); border-color:var(--berry-l);}
.btn.ghost.berry{background:transparent; color:var(--berry);}
.btn.ghost.berry:hover{background:var(--berry-soft);}
.menubtn{display:none; background:none; border:1px solid currentColor; color:inherit; border-radius:8px; padding:8px 12px; font-family:"DM Mono",monospace; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; cursor:pointer;}

/* ---------- hero ---------- */
.hero{position:relative; min-height:min(92vh,860px); display:flex; align-items:flex-end; overflow:hidden; background:var(--green-d);}
.hero .bg{position:absolute; inset:0;}
.hero .bg img{width:100%; height:100%; object-fit:cover; animation:kb 26s ease-out both;}
@keyframes kb{from{transform:scale(1.1);}to{transform:scale(1);}}
.hero .veil{position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,22,15,.62) 0%, rgba(10,22,15,.28) 34%, rgba(10,22,15,.72) 78%, rgba(10,22,15,.9) 100%);}
.hero .inner{position:relative; z-index:2; padding:170px 0 66px; display:flex; flex-direction:column; gap:24px; align-items:flex-start; max-width:22ch;}
.hero h1{color:#fff; max-width:16ch;}
.hero .kicker{color:#EBC79E;}
.hero p{color:#E6EDE3; font-size:1.16rem; max-width:52ch;}
.hero .ctas{display:flex; flex-wrap:wrap; gap:12px; margin-top:4px;}
.hero .inner{max-width:none;}
.scrollcue{position:absolute; left:50%; bottom:22px; z-index:3; translate:-50% 0; width:26px; height:42px; border:1.5px solid rgba(255,255,255,.5); border-radius:14px;}
.scrollcue::after{content:""; position:absolute; left:50%; top:8px; translate:-50% 0; width:3px; height:8px; border-radius:2px; background:rgba(255,255,255,.85); animation:cue 1.9s ease-in-out infinite;}
@keyframes cue{0%,100%{transform:translateY(0);opacity:1}50%{transform:translateY(12px);opacity:.2}}

/* page hero (interior) */
.phero{background:var(--green-d); color:var(--on-dark); padding:150px 0 0; position:relative; overflow:hidden;}
.phero::after{content:""; position:absolute; inset:auto 0 0 0; height:60px; background:var(--paper);}
.phero .grid{position:relative; z-index:2; display:grid; grid-template-columns:1.05fr .95fr; gap:52px; align-items:end;}
.phero .copy{padding-bottom:72px; display:flex; flex-direction:column; gap:22px; align-items:flex-start;}
.phero h1{color:#fff; font-size:clamp(2.2rem,4.6vw,3.6rem);}
.phero p{color:#DCE6D9; font-size:1.1rem; max-width:50ch;}
.phero .kicker{color:#EBC79E;}
.phero .shot{border-radius:var(--r) var(--r) 0 0; overflow:hidden; box-shadow:var(--sh-l); aspect-ratio:4/3;}
.phero .shot img{width:100%; height:100%; object-fit:cover;}
.phero.berry{background:#241F45;}

/* ---------- sections ---------- */
.band{padding:104px 0;}
.band.tight{padding:74px 0;}
.band.dark{background:var(--green-d); color:var(--on-dark); position:relative; overflow:hidden;}
.band.dark h2,.band.dark h3,.band.dark h4{color:#fff;}
.band.dark p{color:var(--on-dark-2);}
.band.dark .kicker{color:#EBC79E;}
.band.photo{position:relative; overflow:hidden; background:var(--green-d);}
.band.photo > .bgimg{position:absolute; inset:0;}
.band.photo > .bgimg img{width:100%;height:100%;object-fit:cover; opacity:.42;}
.band.photo > .wrap{position:relative; z-index:2;}
.band.alt{background:var(--paper-2); overflow:hidden;}
.head{display:flex; flex-direction:column; gap:14px; margin-bottom:48px; max-width:64ch;}

/* split image/text */
.split{display:grid; grid-template-columns:1fr 1fr; gap:0; align-items:stretch; border-radius:var(--r); overflow:hidden; box-shadow:var(--sh-l); background:var(--card);}
.split .pic{position:relative; min-height:400px; overflow:hidden;}
.split .pic img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform 1.1s cubic-bezier(.22,.7,.3,1);}
.split:hover .pic img{transform:scale(1.05);}
.split .txt{padding:52px 48px; display:flex; flex-direction:column; gap:18px; justify-content:center;}
.split.flip .pic{order:2;}

/* cards */
.grid3{display:grid; grid-template-columns:repeat(auto-fit,minmax(285px,1fr)); gap:22px;}
.grid2{display:grid; grid-template-columns:repeat(auto-fit,minmax(330px,1fr)); gap:26px;}
.card{background:var(--card); border:1px solid var(--line); border-radius:var(--r); padding:32px; display:flex; flex-direction:column; gap:13px; transition:transform .3s cubic-bezier(.22,.7,.3,1), box-shadow .3s;}
.card:hover{transform:translateY(-5px); box-shadow:var(--sh-l);}
.card p{font-size:.98rem; color:var(--ink-2);}
.card .n{font-family:"DM Mono",monospace; font-size:.72rem; letter-spacing:.14em; color:var(--rust);}
.band.dark .card{background:rgba(255,255,255,.055); border-color:rgba(255,255,255,.14);}
.band.dark .card p{color:var(--on-dark-2);}

/* product card with photo */
.pcard{background:var(--card); border:1px solid var(--line); border-radius:var(--r); overflow:hidden; display:flex; flex-direction:column; transition:transform .32s cubic-bezier(.22,.7,.3,1), box-shadow .32s;}
.pcard:hover{transform:translateY(-6px); box-shadow:var(--sh-l);}
.pcard .pic{position:relative; aspect-ratio:16/11; overflow:hidden;}
.pcard .pic img{width:100%;height:100%;object-fit:cover; transition:transform 1s cubic-bezier(.22,.7,.3,1);}
.pcard:hover .pic img{transform:scale(1.07);}
.pcard .body{padding:30px; display:flex; flex-direction:column; gap:13px; align-items:flex-start;}
.pcard .tag{position:absolute; left:16px; top:16px; z-index:2; font-family:"DM Mono",monospace; font-size:.66rem; letter-spacing:.14em; text-transform:uppercase; background:rgba(12,22,16,.72); color:#fff; padding:6px 12px; border-radius:999px; backdrop-filter:blur(6px);}

/* stats */
.stats{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:30px;}
.stat .v{font-family:'Baloo 2',sans-serif; font-weight:800; font-size:clamp(2.4rem,4.4vw,3.6rem); line-height:1; letter-spacing:-.035em; color:#fff; font-variant-numeric:tabular-nums;}
.stat .k{font-family:"DM Mono",monospace; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:#EBC79E; margin-top:12px; display:block;}
.stat .n{font-size:.92rem; color:var(--on-dark-2); margin-top:7px;}

/* marquee */
.marq{overflow:hidden; border-block:1px solid var(--line); background:var(--paper-2); padding:20px 0; -webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent); mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);}
.marq .track{display:flex; gap:52px; width:max-content; animation:mv 34s linear infinite;}
.marq:hover .track{animation-play-state:paused;}
.marq span{font-family:"DM Mono",monospace; font-size:.82rem; letter-spacing:.13em; text-transform:uppercase; color:var(--muted); white-space:nowrap;}
@keyframes mv{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* tables */
.tbl{overflow-x:auto; border:1px solid var(--line); border-radius:var(--r); background:var(--card); box-shadow:var(--sh-m);}
table{border-collapse:collapse; width:100%; min-width:620px; font-size:.94rem;}
caption{caption-side:top; text-align:left; padding:20px 24px 6px; font-size:.86rem; color:var(--muted);}
th,td{text-align:left; padding:13px 22px; border-bottom:1px solid var(--line); vertical-align:top;}
thead th{font-family:"DM Mono",monospace; font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--muted); font-weight:400; background:var(--paper-2); border-bottom:1px solid var(--line-2); white-space:nowrap;}
tbody tr:last-child td{border-bottom:none;}
tbody tr{transition:background .18s;}
tbody tr:hover{background:var(--paper-2);}
td.n{font-family:"DM Mono",monospace; font-variant-numeric:tabular-nums; white-space:nowrap;}

/* spec grid */
.specs{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--r); overflow:hidden;}
.specs > div{background:var(--card); padding:24px; display:flex; flex-direction:column; gap:6px;}
.specs .k{font-family:"DM Mono",monospace; font-size:.67rem; letter-spacing:.14em; text-transform:uppercase; color:var(--muted);}
.specs .v{font-size:1rem; font-weight:600;}

/* steps */
.steps{display:flex; flex-direction:column;}
.step{display:grid; grid-template-columns:78px 1fr; gap:0 28px; padding:30px 0; border-top:1px solid var(--line); transition:background .25s; }
.step:last-child{border-bottom:1px solid var(--line);}
.step:hover{background:var(--paper-2);}
.step .no{font-family:"DM Mono",monospace; font-size:.86rem; color:var(--rust); padding-top:4px;}
.step .b{display:flex; flex-direction:column; gap:9px;}
.step p{color:var(--ink-2); font-size:.98rem; max-width:62ch;}

/* cta */
.ctaband{background:var(--green); border-radius:var(--r); padding:56px; display:flex; flex-wrap:wrap; gap:28px; align-items:center; justify-content:space-between;}
.ctaband h2,.ctaband p{color:var(--btn-fg);}
.ctaband .btn{background:var(--paper); color:var(--green); border-color:var(--paper);}
.ctaband .btn:hover{background:#fff; color:var(--green-d); border-color:#fff;}
.ctaband.berry{background:var(--berry);}
.ctaband.berry .btn{color:var(--berry);}

ul.plain{margin:0; padding-left:1.2em; display:flex; flex-direction:column; gap:10px; color:var(--ink-2); font-size:.99rem; max-width:62ch;}
ul.plain li::marker{color:var(--rust);}
.band.dark ul.plain{color:var(--on-dark-2);}

/* form */
form.quote{display:grid; grid-template-columns:1fr 1fr; gap:18px; background:var(--card); border:1px solid var(--line); border-radius:var(--r); padding:36px; box-shadow:var(--sh-m);}
form.quote .full{grid-column:1/-1;}
label{display:flex; flex-direction:column; gap:7px; font-size:.85rem; color:var(--ink-2); font-weight:600;}
input,select,textarea{font-family:Figtree,sans-serif; font-size:1rem; padding:13px 15px; border:1px solid var(--line-2); border-radius:10px; background:var(--paper); color:var(--ink); transition:border-color .2s, box-shadow .2s;}
input:focus,select:focus,textarea:focus{border-color:var(--green); box-shadow:0 0 0 3px var(--green-soft);}
textarea{min-height:110px; resize:vertical;}

/* footer */
footer.site{background:var(--green-d); color:var(--on-dark); padding:74px 0 40px;}
footer.site .cols{display:grid; grid-template-columns:1.5fr 1fr 1fr 1.1fr; gap:40px;}
footer.site h4{font-family:"DM Mono",monospace; font-size:.7rem; letter-spacing:.16em; text-transform:uppercase; color:#EBC79E; font-weight:400;}
footer.site ul{list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; font-size:.94rem;}
footer.site a{color:var(--on-dark-2);}
footer.site a:hover{color:#fff;}
footer.site .fine{margin-top:52px; padding-top:24px; border-top:1px solid rgba(255,255,255,.14); font-size:.82rem; color:var(--on-dark-2); display:flex; flex-wrap:wrap; gap:10px 28px; justify-content:space-between;}
footer.site .brand img{height:76px;}

/* edit mode */
.cf{display:none;}
.ph{color:var(--muted); font-style:italic;}
footer.site .ph{color:var(--on-dark-2);}
.editonly{display:none !important;}
body.editing .editonly{display:flex !important;}
body.editing .cf{display:inline-block; font-family:"DM Mono",monospace; font-size:.68rem; letter-spacing:.06em; background:var(--flag-soft); color:var(--flag); border:1px dashed var(--flag); border-radius:4px; padding:1px 7px; white-space:nowrap;}
#editnote{display:none;}
body.editing #editnote{display:block; background:var(--flag-soft); border-bottom:1px solid var(--line-2); color:var(--flag); padding:12px 0; font-size:.84rem; position:relative; z-index:70;}
#edittoggle{position:fixed; right:18px; bottom:18px; z-index:80; background:var(--ink); color:var(--paper); border:none; border-radius:999px; padding:11px 18px; font-family:"DM Mono",monospace; font-size:.7rem; letter-spacing:.11em; text-transform:uppercase; cursor:pointer; box-shadow:var(--sh-l); opacity:.55; transition:opacity .2s, transform .2s;}
#edittoggle:hover{opacity:1; transform:translateY(-2px);}

@media (max-width:940px){
  .specs{grid-template-columns:repeat(2,1fr);}
  .phero .grid{grid-template-columns:1fr; gap:0;}
  .phero .copy{padding-bottom:40px;}
  .phero .shot{aspect-ratio:16/10;}
  .split{grid-template-columns:1fr;}
  .split.flip .pic{order:0;}
  .split .txt{padding:36px 28px;}
  footer.site .cols{grid-template-columns:1fr 1fr;}
}
@media (max-width:760px){
  .specs{grid-template-columns:1fr;}
  body{font-size:16px;}
  .wrap{width:min(1200px, 100% - 34px);}
  .band{padding:70px 0;}
  .links{display:none;}
  .links.open{display:flex; position:absolute; top:100%; right:17px; left:17px; flex-direction:column; align-items:stretch; background:var(--paper); border:1px solid var(--line); border-radius:var(--r); padding:12px; gap:4px; box-shadow:var(--sh-l);}
  .links.open a{color:var(--ink-2);}
  .links.open .btn{justify-content:center; margin-top:6px;}
  .menubtn{display:block; color:#fff;}
  .nav.solid .menubtn, .nav.plain .menubtn{color:var(--ink-2);}
  .hero .inner{padding:130px 0 76px;}
  .step{grid-template-columns:1fr; gap:8px;}
  form.quote{grid-template-columns:1fr; padding:24px;}
  .ctaband{padding:34px;}
  footer.site .cols{grid-template-columns:1fr;}
}

/* --- cabecalhos centralizados --- */
.head{display:flex; flex-direction:column; gap:14px; margin:0 auto 52px; max-width:60ch; text-align:center; align-items:center;}
.head .lead{max-width:58ch;}
.band.dark .head, .band.photo .head{text-align:center;}

/* --- boxes coloridos --- */
.card{background:var(--c-bg,var(--green-soft)); border:1px solid var(--c-bd,transparent); border-radius:18px; padding:34px 30px; text-align:center; align-items:center;}
.card h3, .card h4{color:var(--c-ti,var(--green));}
.card p{color:var(--ink-2);}
.grid3 > .card:nth-child(3n+1), .grid2 > .card:nth-child(3n+1){--c-bg:var(--green-soft); --c-bd:var(--green-bd); --c-ti:var(--green);}
.grid3 > .card:nth-child(3n+2), .grid2 > .card:nth-child(3n+2){--c-bg:var(--rust-soft); --c-bd:var(--rust-bd); --c-ti:var(--rust);}
.grid3 > .card:nth-child(3n+3), .grid2 > .card:nth-child(3n+3){--c-bg:var(--berry-soft); --c-bd:var(--berry-bd); --c-ti:var(--berry);}
.band.dark .card{background:rgba(255,255,255,.06); border-color:rgba(255,255,255,.12);}
.band.dark .card h3, .band.dark .card h4{color:#fff;}
.card:hover{transform:translateY(-7px); box-shadow:var(--sh-l);}

/* --- tabelas --- */
.tbl{overflow-x:auto; border:1px solid var(--line-2); border-radius:18px; background:var(--card); box-shadow:var(--sh-m);}
table{border-collapse:separate; border-spacing:0; width:100%; min-width:600px; font-size:.95rem;}
caption{caption-side:top; text-align:center; padding:24px 24px 4px; font-size:.88rem; color:var(--muted);}
thead th{font-family:"DM Mono",monospace; font-size:.7rem; letter-spacing:.13em; text-transform:uppercase; color:var(--green); font-weight:500;
  background:var(--green-soft); padding:16px 22px; text-align:left; white-space:nowrap; border-bottom:1px solid var(--line-2);}
tbody td{padding:15px 22px; border-bottom:1px solid var(--line); vertical-align:middle;}
tbody tr:nth-child(even) td{background:var(--paper-2);}
tbody tr:last-child td{border-bottom:none;}
tbody td:first-child{font-weight:600; color:var(--ink);}
tbody tr{transition:background .2s;}
tbody tr:hover td{background:var(--green-soft);}
.band.dark .tbl{border-color:var(--line-2);}

/* --- faixa de especificacoes sobre foto --- */
.specsphoto{position:relative; overflow:hidden; background:var(--green-d); padding:0; border:0;}
.specsphoto .bgimg{position:absolute; inset:0; z-index:0;}
.specsphoto .bgimg img{width:100%; height:100%; object-fit:cover; opacity:.9;}
.specsphoto .veil{position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(9,20,13,.52) 0%, rgba(9,20,13,.66) 50%, rgba(9,20,13,.76) 100%);}
.specsphoto > .wrap{position:relative; z-index:2; padding:76px 0;}
.specgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:0;}
.specgrid > div{text-align:center; padding:26px 22px; display:flex; flex-direction:column; gap:9px;
  border-top:1px solid rgba(255,255,255,.16);}
.specgrid > div:nth-child(-n+3){border-top:0;}
.specgrid .k{font-family:"DM Mono",monospace; font-size:.68rem; letter-spacing:.16em; text-transform:uppercase; color:#F0CFA6; text-shadow:0 1px 10px rgba(0,0,0,.6);}
.specgrid .v{font-family:'Baloo 2',sans-serif; font-size:1.18rem; font-weight:600; color:#fff; line-height:1.25; text-shadow:0 1px 12px rgba(0,0,0,.55);}
.specgrid .v .cf{font-weight:400;}
@media (max-width:900px){ .specgrid{grid-template-columns:repeat(2,1fr);} .specgrid > div:nth-child(-n+3){border-top:1px solid rgba(255,255,255,.16);} .specgrid > div:nth-child(-n+2){border-top:0;} }
@media (max-width:600px){ .specgrid{grid-template-columns:1fr;} .specgrid > div:nth-child(-n+2){border-top:1px solid rgba(255,255,255,.16);} .specgrid > div:first-child{border-top:0;} }

/* --- blocos de texto ao lado de imagem tambem centralizados --- */
.split .txt{text-align:center; align-items:center;}
.split .txt .btn{align-self:center;}
.split .txt .specs{width:100%; text-align:left;}
