:root{--yellow:#f2c94c;--ink:#151515;--paper:#f5f4ef}
body{font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;letter-spacing:-.012em}
h1,h2,h3,.statement p,.brand-mark{font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:800;letter-spacing:-.065em}
h1{font-size:clamp(3.8rem,6.9vw,7.5rem);line-height:.98}
h2{font-size:clamp(3.2rem,5.6vw,6rem);line-height:1.03}
h3{font-size:clamp(2.4rem,3.7vw,4rem);line-height:1.04}
.brand-mark{font-size:2.8rem;letter-spacing:-.09em}.brand-name{font-size:.8rem;letter-spacing:-.04em}
.hero h1{max-width:920px}.hero-content{padding-bottom:clamp(95px,11vh,140px)}
.hero-photo{animation:hero-breathe 12s ease-in-out both}.hero-grid{animation:grid-appear 2.2s ease-out both}
.hero .eyebrow,.hero h1,.hero-subtitle,.hero-actions{animation:rise-in .8s cubic-bezier(.2,.7,.2,1) both}
.hero h1{animation-delay:.12s}.hero-subtitle{animation-delay:.25s}.hero-actions{animation-delay:.38s}
.statement p{font-size:clamp(3rem,6vw,6.5rem);line-height:1.04}
.pillar{grid-template-columns:18% 1fr;transition:padding-left .3s ease,background .3s ease}.pillar:hover{padding-left:18px;background:#f8f8f5}
.pillar h3{font-size:clamp(2.3rem,3.5vw,3.8rem)}
.solution-card{border-radius:24px;overflow:hidden;position:relative;isolation:isolate;transition:transform .35s cubic-bezier(.2,.7,.2,1),background .3s,border-color .3s}
.solution-card:not(.featured):before{content:"";position:absolute;inset:0;background:radial-gradient(430px circle at var(--pointer-x,50%) var(--pointer-y,50%),rgba(242,201,76,.13),transparent 65%);opacity:0;transition:opacity .3s;z-index:-1}.solution-card:not(.featured):hover:before{opacity:1}
.solution-card h3{font-size:clamp(2.35rem,3.4vw,3.6rem)}.card-top{align-items:center}.card-top:after{content:"";width:9px;height:9px;border-radius:50%;background:var(--yellow)}.featured .card-top:after{background:var(--ink)}
.text-link,.card-bottom a,.footer-up{position:relative;transition:color .2s,border-color .2s}.text-link:hover,.card-bottom a:hover,.footer-up:hover{color:#cba62b}
.nav-cta{gap:0}.button{gap:0}.hero-actions{gap:30px}
.about-visual{border-radius:26px}.about-visual img,.experience-story img{transition:transform .7s cubic-bezier(.2,.7,.2,1)}.about-visual:hover img,.experience-story:hover img{transform:scale(1.045)}
.experience{background:#11130f;color:#f7f6f0;position:relative;overflow:hidden}
.experience:before{content:"";position:absolute;width:850px;height:850px;right:-450px;top:-430px;border-radius:50%;background:radial-gradient(circle,rgba(242,201,76,.12),transparent 66%);pointer-events:none}
.experience .container{position:relative}.experience-head{margin-bottom:55px}.experience-head h2{font-size:clamp(3.5rem,6.2vw,6.6rem)}.experience-head h2 span{color:var(--yellow)}.experience-head>p{color:#c9cac3;font-size:1.05rem;max-width:380px}
.experience-bento{display:grid;grid-template-columns:1fr 1.18fr 1fr;grid-template-rows:270px 270px;gap:14px}
.experience-tile{border:1px solid #3c4037;border-radius:24px;overflow:hidden;position:relative;transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,background .35s}
.experience-tile:hover{transform:translateY(-5px);border-color:#8e8863}
.metric-tile{padding:28px;display:flex;flex-direction:column;justify-content:space-between;background:#20231d}
.metric-tile:hover{background:#292e24}
.metric-tile .tile-label{font-size:.67rem;letter-spacing:.14em;font-weight:700;color:#b8b9b0}
.metric-tile strong{font-size:clamp(3.9rem,5.7vw,6.3rem);line-height:.87;letter-spacing:-.07em;white-space:nowrap}
.metric-tile strong small{font-size:.31em;letter-spacing:-.045em;font-weight:700;white-space:normal}
.metric-tile p{margin:0;color:#b8b9b0;font-size:.93rem;line-height:1.4}
.accent-tile{background:var(--yellow);color:#171913;border-color:var(--yellow)}.accent-tile:hover{background:#ffdc62;border-color:#ffdc62}.accent-tile .tile-label,.accent-tile p{color:#4b4329}
.photo-tile{grid-column:2;grid-row:1/3;background:#302e25}.photo-tile img{width:100%;height:100%;object-fit:cover;object-position:center 27%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.photo-tile:hover img{transform:scale(1.06)}.photo-tile:after{content:"";position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0009);pointer-events:none}.photo-tile>span{position:absolute;z-index:1;bottom:23px;left:25px;font-size:.65rem;font-weight:700;letter-spacing:.16em}
.experience-story{margin-top:14px;display:grid;grid-template-columns:1.12fr 1fr;min-height:480px;border:1px solid #3c4037;border-radius:24px;overflow:hidden;background:#1c1f19}
.story-image{overflow:hidden}.story-image img{width:100%;height:100%;object-fit:cover;object-position:center 35%}.story-copy{padding:clamp(28px,4vw,62px);display:flex;flex-direction:column;justify-content:center}.story-copy h3{font-size:clamp(2.7rem,4vw,4.5rem);margin-bottom:25px}.story-copy>p:not(.eyebrow){color:#c9cac3;line-height:1.7}.story-copy small{color:#999e91;line-height:1.55;margin-top:18px}
.process h2,.faq h2,.about h2{line-height:1.05}.process-steps h3{font-size:2.35rem}.contact h2{font-size:clamp(3.7rem,6.6vw,7rem);line-height:1.02}
html.has-motion .reveal{opacity:0;transform:translateY(30px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}html.has-motion .reveal.is-visible{opacity:1;transform:translateY(0)}
@keyframes rise-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes grid-appear{from{opacity:0}to{opacity:.4}}@keyframes hero-breathe{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(max-width:900px){.experience-bento{grid-template-columns:1fr 1fr;grid-template-rows:240px 240px 240px}.photo-tile{grid-column:2;grid-row:1/3}.experience-bento .metric-tile:nth-child(5){grid-column:2;grid-row:3}.experience-story{min-height:410px}.story-copy{padding:30px}}
@media(max-width:700px){h1{font-size:clamp(3.2rem,12vw,5rem)}h2{font-size:clamp(3rem,10vw,4.7rem)}h3{font-size:clamp(2.1rem,8vw,3.4rem)}.hero h1{font-size:clamp(3.15rem,12vw,5rem);line-height:.98}.hero-content{padding-top:260px}.statement p{font-size:clamp(2.8rem,9vw,4.6rem)}.pillar{grid-template-columns:34px 1fr}.pillar:hover{padding-left:0;background:transparent}.pillar h3{font-size:2.15rem}.experience-head h2{font-size:clamp(3.15rem,10vw,4.7rem)}.experience-bento{grid-template-columns:1fr 1fr;grid-template-rows:190px 190px 410px;gap:10px}.photo-tile{grid-column:1/3;grid-row:3}.experience-bento .metric-tile:nth-child(5){grid-column:auto;grid-row:auto}.metric-tile{padding:19px;border-radius:18px}.metric-tile strong{font-size:clamp(2.5rem,10vw,4rem);white-space:normal}.metric-tile strong small{display:block;font-size:.33em;margin-top:8px}.metric-tile .tile-label{font-size:.56rem}.metric-tile p{font-size:.76rem}.experience-story{grid-template-columns:1fr}.story-image{height:320px}.story-copy{padding:28px}.story-copy h3{font-size:2.7rem}.solution-card{border-radius:18px}.about-visual{border-radius:18px}.contact h2{font-size:clamp(3.3rem,10vw,5rem)}}
@media(prefers-reduced-motion:reduce){.hero-photo,.hero-grid,.hero .eyebrow,.hero h1,.hero-subtitle,.hero-actions{animation:none!important}html.has-motion .reveal{opacity:1;transform:none;transition:none}}
/* Keep the architectural lines behind Davi and lift the copy as one block. */
.hero-grid{-webkit-mask-image:linear-gradient(90deg,#000 0%,#000 54%,transparent 64%);mask-image:linear-gradient(90deg,#000 0%,#000 54%,transparent 64%)}
@media(min-width:701px){.hero-content{padding-bottom:clamp(145px,16vh,205px)}}
@media(max-width:700px){.hero-grid{display:none}.hero-content{padding-bottom:105px}}
.footer-whatsapp{display:flex;align-items:center;gap:12px;color:#fff;transition:color .2s}.footer-whatsapp:hover{color:var(--yellow)}.footer-whatsapp svg{width:30px;height:30px;fill:none;stroke:var(--yellow);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.footer-whatsapp span{font-size:.64rem;font-weight:800;letter-spacing:.1em;line-height:1.4}.footer-whatsapp strong{font-size:.95rem;letter-spacing:0}.contact .button{margin-top:24px}
@media(max-width:700px){.footer-top{align-items:flex-start;gap:32px;flex-direction:column}}
