@font-face{font-family:"Helvetica Now Display";src:local("HelveticaNowDisplay-Regular"),local("Helvetica Now Display Regular");font-weight:400;font-style:normal;font-display:swap}
:root{color-scheme:light;--charcoal:#2B2B29;--sage:#E0DFD5;--taupe:#8A7D6B;--beige:#EAE8E2;--white:#F7F7F3;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{background:var(--white)}body{margin:0;color:var(--charcoal);font-family:"Helvetica Now Display",Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:var(--sage);color:var(--charcoal)}
.page{min-height:100svh;max-width:1440px;margin:auto;padding:clamp(40px,8vh,88px) clamp(32px,8vw,128px);display:flex;flex-direction:column}
.brand{display:flex;align-items:center}.brand img{display:block;width:132px;height:22px}
main{flex:1;display:flex;flex-direction:column;justify-content:center;padding:64px 0 68px}
h1{font-size:clamp(64px,7.7vw,112px);font-weight:400;line-height:.99;letter-spacing:-.035em;margin:0 0 48px -.065em}.line{display:block;overflow:hidden;padding:0 .07em .13em;margin-bottom:-.13em}.line>span{display:block;animation:reveal 1.5s var(--ease) both}.line:nth-child(1)>span{animation-delay:.12s}.line:nth-child(2)>span{animation-delay:.25s}
.details{display:grid;grid-template-columns:minmax(0,620px) auto;align-items:end;gap:48px;max-width:960px}.details p{font-size:17px;line-height:1.55;letter-spacing:-.015em;color:rgb(43 43 41 / .5);margin:0}.proposal{display:inline-flex;align-items:center;justify-self:start;align-self:end;gap:14px;min-height:44px;font-size:16px;white-space:nowrap;position:relative}
.proposal-label{position:relative;display:block;padding:10px 7px;border-bottom:1px solid var(--taupe);isolation:isolate;transition:color .45s var(--ease)}
.proposal-label:before{content:"";position:absolute;inset:0;background:var(--taupe);transform:scaleY(0);transform-origin:bottom;transition:transform .55s var(--ease);z-index:-1}
.proposal:focus-visible .proposal-label{color:var(--white)}.proposal:focus-visible .proposal-label:before{transform:scaleY(1)}
a{color:inherit;text-decoration:none;cursor:pointer;touch-action:manipulation}.arrow{display:block;flex:none;width:.75em;height:.75em;overflow:visible;transition:transform .65s var(--ease)}
footer{display:flex;justify-content:space-between;align-items:center;gap:24px}small{font-size:12px;letter-spacing:.02em;color:var(--charcoal)}nav{display:flex;gap:34px}.secondary{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-size:14px}.secondary>span:first-child{position:relative}.secondary>span:first-child:after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .65s var(--ease)}
a:focus-visible{outline:2px solid var(--taupe);outline-offset:7px}.skip{position:fixed;top:12px;left:12px;z-index:3;background:var(--charcoal);color:var(--white);padding:12px;transform:translateY(-180%)}.skip:focus{transform:none}
.entrance{animation:arrive 1.5s var(--ease) both}.brand{animation-delay:0s}.details{animation-delay:.45s}footer{animation-delay:.65s}
@media(hover:hover){a:hover .arrow{transform:translate(3px,-3px)}.proposal:hover .proposal-label{color:var(--white)}.proposal:hover .proposal-label:before{transform:scaleY(1)}.secondary:hover>span:first-child:after{transform:scaleX(1)}}
@keyframes reveal{from{transform:translateY(110%);opacity:0}to{transform:none;opacity:1}}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.details p{font-size:17px}}
@media(max-width:700px){.page{padding:40px 32px}.brand img{width:112px;height:auto}main{padding:70px 0 68px}h1{font-size:clamp(34px,11.6vw,76px);margin-bottom:36px;line-height:1.03;letter-spacing:-.035em}.details{display:flex;flex-direction:column;align-items:flex-start;gap:25px}.details p{max-width:340px;font-size:16px;line-height:1.6}.proposal{font-size:15px;align-self:flex-start}footer{align-items:center}nav{gap:18px}.secondary{font-size:13px;gap:7px}small{font-size:10px}}
@media(max-height:600px) and (min-width:701px){.page{padding-top:25px}main{padding:35px 0}h1{font-size:min(8vw,100px);margin-bottom:28px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(max-height:450px) and (min-width:701px){.page{padding-top:20px;padding-bottom:12px}main{padding:22px 0}h1{font-size:64px;margin-bottom:20px}.details p{font-size:15px;line-height:1.45}}

/* Versão clara: taupe pontua a chamada, sem alteração de cor no hover. */
.proposal .arrow{color:var(--taupe)}

@media(max-width:360px){.page{padding:32px 26px}main{padding:44px 0}.details p{font-size:15px}nav{gap:13px}.secondary{font-size:12px}footer{gap:12px}}
