/* Clicksoft Clean: fundamentos e componentes compartilhados. Carregar após tokens.css. */
@font-face{font-family:Manrope;src:url('/assets/clicksoft/manrope.ttf') format('truetype');font-weight:200 800;font-display:swap}
:root{--radius:var(--radius-section);--gutter:clamp(22px,5.5vw,88px);--section-title:clamp(29px,2.8vw,38px);--action-height:var(--layout-action)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:36px}
body{margin:0;background:var(--white);font:16px/1.65 var(--font-family);color:var(--ink);-webkit-font-smoothing:antialiased}
::selection{background:var(--lime);color:var(--purple-dark)}
a{color:inherit;text-decoration:none;text-underline-offset:5px}
button,input,textarea{font:inherit}
button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}
button{cursor:pointer}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:6px}
button:focus-visible{outline-offset:4px}
img{display:block;max-width:100%}
button{color:inherit}
svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-weight:650;letter-spacing:-.04em;line-height:1.12;text-wrap:balance}
h2{font-size:clamp(32px,3.5vw,52px)}
h3{font-size:clamp(25px,2.6vw,38px)}
.wrap{max-width:1600px;padding-inline:var(--gutter);margin-inline:auto}
.section{padding-block:104px}
.skip-link{position:fixed;top:-100px;left:20px;background:var(--lime);padding:12px;z-index:10}
.skip-link:focus{top:10px}
.site-header{display:flex;align-items:center;justify-content:space-between;height:102px;gap:24px}
.logo{width:155px;height:auto}
.site-header nav{display:flex;gap:30px;font-size:14px;color:var(--soft)}
.site-header nav a,.header-contact{transition:color .2s}
.site-header nav a:hover,.header-contact:hover{color:var(--purple)}
.header-contact{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:700}
.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:0;border-radius:99px;padding:17px 25px;font-size:15px;font-weight:700;min-height:56px;transition:background .2s,transform .2s var(--ease)}
.button svg{width:20px}
.primary{background:var(--lime);color:var(--purple-dark)}
.primary:hover{background:var(--lime-hover);transform:translateY(-2px)}
.primary:active{transform:translateY(0)}
summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;padding:24px 0;font-weight:650;font-size:18px;letter-spacing:-.02em}
label{display:block;font-size:13px;font-weight:650;margin-bottom:7px}
input,textarea{width:100%;border:1px solid #bcb1ce;border-radius:12px;padding:13px 15px;background:var(--white);color:var(--ink);font-size:14px;margin-bottom:19px;caret-color:var(--purple)}
textarea{resize:vertical;min-height:104px}
input::placeholder,textarea::placeholder{color:var(--muted)}
.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
footer{display:flex;align-items:center;justify-content:space-between;padding-block:28px;gap:24px;font-size:12px;color:var(--soft)}
footer a{display:flex;gap:12px;align-items:center}
footer svg{width:16px;height:16px}
@media(max-width:1100px){
.site-header nav{gap:18px;font-size:13px}
.section{padding-block:80px}
}
@media(max-width:760px){
.site-header{height:80px;gap:16px}
.logo{width:132px}
.site-header nav{display:none}
.header-contact{font-size:12px;gap:7px}
.header-contact svg{width:15px;height:15px}
.section{padding-block:64px}
h2{font-size:34px;line-height:1.17}
.form-pair{grid-template-columns:1fr;gap:0}
footer{flex-direction:column;align-items:flex-start;gap:16px;padding-block:25px;font-size:11px}
}
@media(prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*{animation:none!important;transition:none!important}
}
footer{font-size:12px}
@media(min-width:761px) and (max-width:1000px){
.site-header nav{display:none}
}
h1,h2,h3{letter-spacing:-.03em}
h2{font-size:clamp(29px,3vw,42px)}
.section{padding-block:88px}
@media(max-width:760px){
.section{padding-block:56px}
h2{font-size:29px;line-height:1.2}
}
.site-footer{max-width:var(--layout-page);display:flex;align-items:center;justify-content:space-between;padding-block:32px;gap:24px}
.site-footer .footer-brand{display:flex;flex-direction:column;gap:11px;align-items:start}
.site-footer .footer-brand>a{display:block}
.footer-brand img{width:136px;height:auto}
.site-footer .footer-brand p{font-size:12px;line-height:1.6;color:var(--soft)}
.site-footer .footer-top{display:flex;font-size:12px;gap:12px;min-height:44px;align-items:center}
@media(max-width:760px){
.site-footer{flex-direction:row;align-items:center;padding-block:26px;gap:18px}
.footer-brand img{width:119px}
.site-footer .footer-brand p{font-size:10px;max-width:175px}
.site-footer .footer-top{font-size:11px;gap:7px;white-space:nowrap}
}
.site-header{max-width:var(--layout-page)}
.header-contact{min-height:44px;align-items:center}
@media(max-width:380px){
.site-header{gap:12px}
.site-header .logo{width:116px}
.header-contact{font-size:11px;gap:6px}
.header-contact svg{width:14px}
}
html{scroll-padding-top:96px}
.site-header{height:var(--layout-header);position:sticky;top:0;z-index:50;background:var(--white);border-bottom:1px solid var(--line)}
.site-footer{flex-wrap:wrap;column-gap:32px;row-gap:16px}
.site-footer .footer-brand{margin-right:auto}
.site-footer .footer-contacts{display:flex;align-items:center;gap:20px}
.site-footer .footer-phone{font-size:13px;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap}
.site-footer .footer-instagram{min-height:44px;display:inline-flex;align-items:center;gap:9px;font-size:13px;transition:color .2s}
.site-footer .footer-instagram svg{width:20px;height:20px;stroke-width:1.6}
.site-footer .footer-instagram:hover{color:var(--ink);text-decoration:underline}
.site-footer .footer-phone:hover{color:var(--ink);text-decoration:underline}
@media(max-width:760px){
html{scroll-padding-top:84px}
.site-header{height:var(--layout-header-mobile)}
.site-footer{column-gap:16px;row-gap:14px}
.site-footer .footer-brand{order:0}
.site-footer .footer-top{order:1}
.site-footer .footer-contacts{order:2;flex-basis:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:10px}
.site-footer .footer-phone{font-size:12px}
}
html{scroll-padding-top:calc(var(--layout-header) + var(--space-20))}
.site-header{max-width:var(--layout-page)}
@media(max-width:760px){:root{--section-title:var(--font-section-mobile);--action-height:var(--layout-action-mobile)}html{scroll-padding-top:calc(var(--layout-header-mobile) + var(--space-20))}}

.site-footer .footer-phone{gap:9px}.site-footer .footer-phone svg{width:20px;height:20px;stroke-width:1.5;color:inherit}

.form-honeypot{display:none}
.form-error{font-size:14px;line-height:1.6;color:#9c2541;margin-top:16px}
.button:disabled{cursor:wait;opacity:.65;transform:none}
@media(max-width:760px){:root{--gutter:24px}}

/* Rodapé discreto: contatos agrupados, com assinatura em escala de cinza. */
.site-footer{max-width:var(--layout-reading);padding:var(--space-24);column-gap:var(--space-24);color:var(--muted);border-top:1px solid var(--line)}
.site-footer .footer-brand{gap:var(--space-8)}
.site-footer .footer-brand img{width:124px;filter:grayscale(1);opacity:.72}
.site-footer .footer-brand p{color:inherit;font-size:11px}
.site-footer .footer-contacts{gap:var(--space-24)}
.site-footer .footer-top:hover{color:var(--ink)}
.site-footer a:focus-visible{outline-color:var(--soft)}
@media(max-width:760px){
.site-footer{row-gap:var(--space-12);padding-block:var(--space-20)}
.site-footer .footer-brand img{width:112px}
.site-footer .footer-brand p{font-size:10px}
.site-footer .footer-contacts{gap:var(--space-16);padding-top:var(--space-8)}
.site-footer .footer-instagram{font-size:12px}
}

/* Assinatura compacta com o símbolo oficial em suas cores originais. */
.site-footer .footer-brand{flex-direction:row;align-items:center;gap:12px}
.site-footer .footer-brand img{width:36px;height:36px;filter:none;opacity:1}
.site-footer .footer-brand p{max-width:160px;line-height:1.5}
.site-footer .footer-phone svg{color:#168a47}
.site-footer .footer-instagram svg{color:#d62976}
@media(max-width:760px){
.site-footer .footer-brand{gap:10px}
.site-footer .footer-brand img{width:32px;height:32px}
.site-footer .footer-brand p{max-width:128px}
}
