Contact — Kiara Vista *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } :root { –bordeaux: #5A1020; –bordeaux-deep: #3D0A15; –beige: #F5ECD7; –beige-mid: #EAD9BB; –beige-dark: #C8B08A; –text-dark: #1A0A0E; –text-mid: #6B4A52; –text-light: #A08A90; –ff-display: ‘Cormorant Garamond’, serif; –ff-body: ‘DM Sans’, sans-serif; } html { scroll-behavior: smooth; } body { font-family: var(–ff-body); background-color: var(–beige); color: var(–text-dark); min-height: 100vh; overflow-x: hidden; } /* ─── NAV ─── */ nav { position: fixed; top: 0; left: 0; right: 0; z-index: 100; display: flex; align-items: center; justify-content: space-between; padding: 1.5rem 4rem; background: rgba(245, 236, 215, 0.92); backdrop-filter: blur(8px); border-bottom: 1px solid rgba(90, 16, 32, 0.12); } .nav-logo { font-family: var(–ff-display); font-size: 1.35rem; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(–bordeaux); text-decoration: none; } .nav-links { display: flex; gap: 2.5rem; list-style: none; } .nav-links a { font-size: 0.75rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(–text-mid); text-decoration: none; transition: color 0.2s; } .nav-links a:hover { color: var(–bordeaux); } /* ─── HERO ─── */ .hero { padding: 10rem 4rem 5rem; display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: end; max-width: 1200px; margin: 0 auto; } .hero-eyebrow { font-size: 0.7rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(–bordeaux); margin-bottom: 1.2rem; opacity: 0; animation: fadeUp 0.8s ease forwards 0.2s; } .hero-title { font-family: var(–ff-display); font-size: clamp(3.5rem, 6vw, 5.5rem); font-weight: 300; line-height: 1.05; color: var(–bordeaux-deep); opacity: 0; animation: fadeUp 0.8s ease forwards 0.4s; } .hero-title em { font-style: italic; color: var(–bordeaux); } .hero-desc { font-size: 0.95rem; color: var(–text-mid); line-height: 1.8; max-width: 380px; opacity: 0; animation: fadeUp 0.8s ease forwards 0.6s; } .hero-tagline { font-family: var(–ff-display); font-size: 1rem; font-style: italic; color: var(–beige-dark); margin-top: 2rem; opacity: 0; animation: fadeUp 0.8s ease forwards 0.8s; } /* ─── MAIN LAYOUT ─── */ .contact-section { max-width: 1200px; margin: 0 auto; padding: 4rem 4rem 8rem; display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 5rem; align-items: start; } /* ─── FORM ─── */ .form-panel { background: #fff; border: 1px solid rgba(90, 16, 32, 0.1); border-radius: 2px; padding: 3rem; opacity: 0; animation: fadeUp 0.9s ease forwards 0.5s; } .form-title { font-family: var(–ff-display); font-size: 1.6rem; font-weight: 400; color: var(–bordeaux-deep); margin-bottom: 0.4rem; } .form-subtitle { font-size: 0.82rem; color: var(–text-light); letter-spacing: 0.04em; margin-bottom: 2.5rem; } .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; } .field { display: flex; flex-direction: column; margin-bottom: 1.5rem; } .field label { font-size: 0.68rem; letter-spacing: 0.15em; text-transform: uppercase; color: var(–text-mid); margin-bottom: 0.5rem; } .field input, .field textarea, .field select { font-family: var(–ff-body); font-size: 0.9rem; color: var(–text-dark); background: var(–beige); border: 1px solid rgba(90, 16, 32, 0.15); border-radius: 1px; padding: 0.75rem 1rem; outline: none; transition: border-color 0.2s, background 0.2s; appearance: none; } .field input:focus, .field textarea:focus, .field select:focus { border-color: var(–bordeaux); background: #fff; } .field input::placeholder, .field textarea::placeholder { color: var(–text-light); font-size: 0.85rem; } .field textarea { resize: vertical; min-height: 130px; line-height: 1.7; } .field select { cursor: pointer; background-image: url(« data:image/svg+xml,%3Csvg xmlns=’http://www.w3.org/2000/svg’ width=’10’ height=’6′ viewBox=’0 0 10 6’%3E%3Cpath d=’M1 1l4 4 4-4′ stroke=’%235A1020′ stroke-width=’1.5′ fill=’none’ stroke-linecap=’round’/%3E%3C/svg%3E »); background-repeat: no-repeat; background-position: right 1rem center; padding-right: 2.5rem; } .submit-row { display: flex; align-items: center; gap: 1.5rem; margin-top: 0.5rem; } .btn-submit { font-family: var(–ff-body); font-size: 0.75rem; font-weight: 500; letter-spacing: 0.15em; text-transform: uppercase; color: var(–beige); background: var(–bordeaux); border: none; padding: 1rem 2.5rem; cursor: pointer; border-radius: 1px; transition: background 0.2s, transform 0.15s; position: relative; overflow: hidden; } .btn-submit:hover { background: var(–bordeaux-deep); } .btn-submit:active { transform: scale(0.98); } .btn-submit::after { content:  »; position: absolute; inset: 0; background: rgba(255,255,255,0.08); opacity: 0; transition: opacity 0.2s; } .btn-submit:hover::after { opacity: 1; } .reply-note { font-size: 0.78rem; color: var(–text-light); font-style: italic; } /* ─── SUCCESS MESSAGE ─── */ .success-msg { display: none; background: rgba(90, 16, 32, 0.05); border: 1px solid rgba(90, 16, 32, 0.2); border-radius: 1px; padding: 1.25rem 1.5rem; margin-top: 1rem; font-size: 0.88rem; color: var(–bordeaux-deep); } /* ─── INFO PANEL ─── */ .info-panel { opacity: 0; animation: fadeUp 0.9s ease forwards 0.7s; } .info-block { margin-bottom: 3rem; } .info-block-label { font-size: 0.65rem; letter-spacing: 0.2em; text-transform: uppercase; color: var(–bordeaux); margin-bottom: 1.2rem; } .info-line { display: flex; align-items: center; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(90, 16, 32, 0.1); } .info-line:first-of-type { border-top: 1px solid rgba(90, 16, 32, 0.1); } .info-icon { width: 36px; height: 36px; background: rgba(90, 16, 32, 0.06); border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; } .info-icon svg { width: 14px; height: 14px; stroke: var(–bordeaux); } .info-text-label { font-size: 0.68rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(–text-light); margin-bottom: 2px; } .info-text-value { font-size: 0.88rem; color: var(–text-dark); font-weight: 400; } /* ─── PROCESS ─── */ .process-block { margin-bottom: 3rem; } .process-step { display: flex; gap: 1.25rem; align-items: flex-start; margin-bottom: 1.25rem; } .step-num { font-family: var(–ff-display); font-size: 2rem; font-weight: 300; color: var(–beige-dark); line-height: 1; min-width: 2rem; margin-top: -4px; } .step-title { font-size: 0.82rem; font-weight: 500; color: var(–text-dark); margin-bottom: 3px; } .step-desc { font-size: 0.78rem; color: var(–text-light); line-height: 1.6; } /* ─── SOCIAL ─── */ .social-links { display: flex; gap: 0.75rem; } .social-pill { font-size: 0.7rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(–bordeaux); border: 1px solid rgba(90, 16, 32, 0.3); padding: 0.45rem 1.1rem; border-radius: 20px; text-decoration: none; transition: background 0.2s, color 0.2s; } .social-pill:hover { background: var(–bordeaux); color: var(–beige); } /* ─── DIVIDER LINE ─── */ .section-divider { max-width: 1200px; margin: 0 auto; padding: 0 4rem; } .section-divider hr { border: none; border-top: 1px solid rgba(90, 16, 32, 0.12); } /* ─── FOOTER ─── */ footer { max-width: 1200px; margin: 0 auto; padding: 2.5rem 4rem; display: flex; justify-content: space-between; align-items: center; } .footer-logo { font-family: var(–ff-display); font-size: 1rem; letter-spacing: 0.18em; text-transform: uppercase; color: var(–bordeaux); } .footer-copy { font-size: 0.75rem; color: var(–text-light); } /* ─── ANIMATIONS ─── */ @keyframes fadeUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: translateY(0); } } /* ─── RESPONSIVE ─── */ @media (max-width: 900px) { nav { padding: 1.25rem 2rem; } .nav-links { display: none; } .hero { grid-template-columns: 1fr; padding: 8rem 2rem 3rem; gap: 2rem; } .contact-section { grid-template-columns: 1fr; padding: 3rem 2rem 6rem; gap: 3rem; } .form-row { grid-template-columns: 1fr; } footer { flex-direction: column; gap: 0.75rem; padding: 2rem; text-align: center; } .section-divider { padding: 0 2rem; } }

Get in touch

Let’s build
something
meaningful.

We work with ambitious brands ready to sharpen their vision and make a lasting impact. Tell us about your project — we’ll take it from there.

Enhancing your vision through marketing expertise.

Start the conversation

Every brief is read with full attention.

Full name
Company
Email address
Area of interest Select a topic… Brand strategy Campaign management Content & digital Market positioning Other
Your brief
We reply within 1 business day.
Thank you — your message has been received. We’ll be in touch shortly.

Direct contact

Email

hello@kiaravista.com

Phone

+33 6 00 00 00 00

Based in

Paris, France

What happens next

01

We review your brief

Every message is read carefully before we respond.

02

A discovery call

30 minutes to align on your vision and priorities.

03

A tailored proposal

We craft an approach specific to your goals — no templates.

Follow our work


© 2025 Kiara Vista. All rights reserved.
document.getElementById(‘contactForm’).addEventListener(‘submit’, function(e) { e.preventDefault(); const name = document.getElementById(‘name’).value.trim(); const email = document.getElementById(’email’).value.trim(); const message = document.getElementById(‘message’).value.trim(); if (!name || !email || !message) { alert(‘Please fill in the required fields (name, email, message).’); return; } // Replace this block with your actual form submission (Formspree, Netlify, etc.) document.getElementById(‘successMsg’).style.display = ‘block’; this.reset(); setTimeout(() => { document.getElementById(‘successMsg’).style.display = ‘none’; }, 6000); });