header{background-color:var(--color-moss-green);color:var(--color-beige)}.header-logo{filter:brightness(0) saturate(100%) invert(94%) sepia(13%) saturate(981%) hue-rotate(314deg) brightness(102%) contrast(89%)}.header-logo:hover{filter:brightness(0) saturate(100%) invert(99%) sepia(0%) saturate(4%) hue-rotate(131deg) brightness(102%) contrast(102%)}header nav button,header nav a{color:var(--color-beige)}header nav button:hover,header nav a:hover{color:var(--color-white)}.contact-section{min-height:100vh;position:relative;display:flex;align-items:flex-start;justify-content:center;padding-top:calc(var(--dynamic-header-offset, 60px) + 4rem);padding-bottom:4rem;background:var(--color-wine) url(/assets/images/fundo-textura-branca.svg) center / cover no-repeat;overflow:hidden}.contact-section::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgb(0 0 0 / .15) 0%,rgb(0 0 0 / .35) 90%);animation:fadeIn 1.6s ease-out}.contact-inner{position:relative;z-index:1;width:100%;max-width:80rem;margin:0 auto;padding:0 1.5rem;display:flex;flex-direction:column;gap:clamp(2rem, 4vw, 3rem)}.contact-intro{text-align:center;color:var(--color-gray-soft);background:linear-gradient(135deg,var(--color-moss-green) 0%,var(--color-gray-green) 100%);border:1px solid rgb(241 216 191 / .25);padding:clamp(1.25rem, 3vw, 2.5rem) clamp(1rem, 2.5vw, 2rem);border-radius:var(--border-radius-size);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:fadeInUp 0.9s ease-out}.contact-title{font-family:'Playfair',serif;font-size:clamp(1.75rem, 4.5vw, 2.75rem);letter-spacing:.05em;font-weight:600;margin:0 0 1rem}.contact-intro p{font-family:'Playfair',serif;font-size:clamp(1.05rem, 2vw, 1.375rem);font-weight:400;line-height:1.45;max-width:60ch;margin:0 auto}.contact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%, 340px),1fr));gap:clamp(1.5rem, 3vw, 2.5rem);align-items:start;animation:fadeInUp 0.9s ease-out}.contact-info{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1rem;padding:1.25rem 1rem 1.5rem;background:linear-gradient(135deg,var(--color-moss-green) 0%,var(--color-gray-green) 100%);border-radius:var(--border-radius-size);box-shadow:0 8px 28px -6px rgb(0 0 0 / .4);position:relative;overflow:hidden;isolation:isolate}.contact-info::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.4;mix-blend-mode:overlay;background:radial-gradient(circle at 25% 15%,rgb(255 255 255 / .2),transparent 60%),radial-gradient(circle at 85% 75%,rgb(255 255 255 / .15),transparent 70%)}.contact-info a{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:1.15rem .75rem 1.25rem;text-decoration:none;color:var(--color-gray-soft);background:rgb(255 255 255 / .08);border:1px solid rgb(255 255 255 / .2);border-radius:12px;font-family:'Rajdhani',sans-serif;font-weight:500;transition:background 0.35s ease,transform 0.4s cubic-bezier(.18,.72,.26,.99),box-shadow 0.4s ease,border-color 0.3s ease;will-change:transform}.contact-info a::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;border-radius:inherit;transition:opacity 0.4s ease;background:linear-gradient(125deg,rgb(255 255 255 / .15),#fff0)}.contact-info a:hover,.contact-info a:focus-visible{transform:translateY(-6px) scale(1.03);background:linear-gradient(140deg,rgb(255 255 255 / .18) 0%,rgb(255 255 255 / .05) 100%);box-shadow:0 10px 32px -10px rgb(0 0 0 / .55);border-color:rgb(255 255 255 / .35)}.contact-info a:hover::before,.contact-info a:focus-visible::before{opacity:1}.contact-icon{display:inline-block;width:44px;height:44px;background-color:currentColor;filter:drop-shadow(0 2px 4px rgb(0 0 0 / .35));transition:transform 0.45s cubic-bezier(.18,.72,.26,.99),filter 0.3s ease;mask-repeat:no-repeat;mask-position:center;mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain}.contact-info a:hover .contact-icon,.contact-info a:focus-visible .contact-icon{transform:scale(1.12);filter:drop-shadow(0 4px 10px rgb(0 0 0 / .5))}.form-container{width:100%;min-height:100%;position:relative;overflow:hidden;padding:.75rem;background:linear-gradient(135deg,var(--color-moss-green) 0%,var(--color-gray-green) 100%);border-radius:var(--border-radius-size);box-shadow:0 8px 28px -6px rgb(0 0 0 / .4)}.form-container::before{content:'';position:absolute;inset:0;pointer-events:none;opacity:.45;mix-blend-mode:overlay;background:radial-gradient(circle at 15% 20%,rgb(255 255 255 / .18),transparent 60%),radial-gradient(circle at 85% 80%,rgb(255 255 255 / .12),transparent 65%)}#contact-form{position:relative;z-index:1;width:100%;padding:clamp(1rem, 2.2vw, 1.75rem);border-radius:12px;color:var(--color-gray-soft);background:rgb(255 255 255 / .04);border:1px solid rgb(255 255 255 / .25);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}#contact-form fieldset{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.5rem}.form-group label{font-weight:300}.form-group input,.form-group textarea{width:100%;padding:.75rem .85rem;font-size:1rem;line-height:1.4;border-radius:8px;border:1px solid var(--color-gray-medium);background-color:var(--color-gray-soft);font-family:'Rajdhani',sans-serif;transition:border-color 0.25s ease,box-shadow 0.25s ease,background-color 0.3s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-dark-brown);box-shadow:0 0 0 3px rgb(99 69 73 / .35)}.form-group textarea{resize:none}#contact-form button{align-self:flex-start;cursor:pointer;border:none;border-radius:var(--border-radius-button);padding:.9rem 1.5rem;font-family:'Rajdhani',sans-serif;font-size:1rem;font-weight:700;letter-spacing:.05em;color:var(--color-white);background-color:var(--color-blue-gray);box-shadow:0 6px 18px -6px rgb(0 0 0 / .45);transition:background 0.35s ease,transform 0.35s cubic-bezier(.18,.72,.26,.99),box-shadow 0.35s ease}#contact-form button:hover,#contact-form button:focus-visible{background-color:var(--color-petrol-blue);box-shadow:0 10px 26px -10px rgb(0 0 0 / .6)}#contact-form button:active{transform:translateY(0);box-shadow:0 4px 12px -4px rgb(0 0 0 / .55)}#status{display:none;color:var(--color-gray-soft);font-size:.875rem;margin-top:.5rem}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}footer{background-color:var(--color-moss-green);color:var(--color-beige)}.footer-logo{filter:brightness(0) saturate(100%) invert(94%) sepia(13%) saturate(981%) hue-rotate(314deg) brightness(102%) contrast(89%)}footer .scroll-to-top-btn:hover,.footer-section.brand a:hover{filter:brightness(0) saturate(100%) invert(99%) sepia(0%) saturate(4%) hue-rotate(131deg) brightness(102%) contrast(102%)}.footer-contact-info a:hover,footer nav button:hover,footer nav a:hover,.social-icons a:hover{color:var(--color-white)}footer nav button,footer nav a,.footer-bottom-content{color:var(--color-beige)}.footer-bottom{border-top:1px solid rgb(241 216 191 / .5)}@keyframes fadeInUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@media (max-width:1024px){.contact-section{padding-top:calc(var(--dynamic-header-offset, 60px) + 6rem)}}@media (max-width:760px){.contact-info{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:656px){.contact-section{padding-top:calc(var(--dynamic-header-offset, 60px) + 8.75rem)}.contact-inner{gap:2rem}.contact-info{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.contact-info{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.contact-info a{padding:.85rem .5rem 1rem}.contact-icon{width:36px;height:36px}.contact-title{font-size:1.75rem}.contact-intro p{font-size:.95rem}#contact-form{padding:.85rem .85rem 1.25rem}#contact-form button{width:100%;text-align:center}.form-group input,.form-group textarea{font-size:.9rem}}