<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Virtue Salons — Professional Makeup in Chennai</title>
<style>
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=Inter:wght@400;500&display=swap');
:root {
--page-bg: #ece9e3;
--surface: #fbfaf6;
--white: #fff;
--cream: #f6f3eb;
--beige: #eadbc7;
--blush: #f0c7c5;
--black: #151515;
--text: #26211d;
--muted: #6f6860;
--line: #d8d3cb
}
* {
box-sizing: border-box
}
html {
scroll-behavior: smooth
}
body {
margin: 0;
background: var(--page-bg);
color: var(--text);
font-family: Inter, Arial, sans-serif
}
.browser {
width: min(812px, calc(100% - 70px));
margin: 38px auto;
border: 1px solid #d6d3cd;
border-radius: 9px;
overflow: hidden;
background: var(--surface);
box-shadow: 0 18px 35px #0003
}
.chrome {
height: 34px;
background: #f5f4f1;
display: grid;
grid-template-columns: 130px 1fr 130px;
align-items: center;
padding: 0 12px;
color: #888;
font-size: 9px
}
.dots {
display: flex;
gap: 6px
}
.dot {
width: 7px;
height: 7px;
border-radius: 50%
}
.r {
background: #ed6a5e
}
.y {
background: #f4bd4f
}
.g {
background: #61c454
}
.chrome-left,
.chrome-right {
display: flex;
align-items: center;
gap: 11px
}
.chrome-right {
justify-content: flex-end
}
.url {
text-align: center;
background: #ebeae7;
border-radius: 5px;
padding: 4px 20px;
color: #888
}
.site-header {
height: 54px;
display: grid;
grid-template-columns: 1.15fr 2.2fr 1.15fr;
align-items: center;
padding: 0 34px;
border-bottom: 1px solid var(--line);
background: #fbfaf6;
font-size: 9px
}
.brand {
font-family: "Cormorant Garamond", serif;
font-size: 17px;
white-space: nowrap
}
.nav {
display: flex;
justify-content: center;
gap: 7px;
white-space: nowrap
}
.nav a,
.book,
.treatment-list a,
.footer a {
color: inherit;
text-decoration: none
}
.book {
text-align: right;
white-space: nowrap
}
.hero {
height: 355px;
display: grid;
grid-template-columns: 1fr 1fr;
background: #f8f6ef
}
.hero-copy {
padding: 78px 28px 35px 70px;
position: relative;
z-index: 2
}
.hero h1 {
font: 500 47px/.84 "Cormorant Garamond", serif;
margin: 0 0 18px;
color: #111;
letter-spacing: -1.8px
}
.hero p {
font-size: 10px;
line-height: 1.35;
margin: 0 0 20px;
max-width: 245px
}
.text-link {
font-size: 9px;
color: #111;
text-decoration: none;
border-bottom: 1px solid transparent
}
.text-link:hover {
border-color: #111
}
.hero-img {
overflow: hidden;
background: #d9c1a6
}
.hero-img img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: 52% center;
display: block;
transition: .4s
}
.hero-img:hover img,
.clinic-img:hover {
transform: scale(1.015)
}
.treatments {
min-height: 315px;
padding: 38px 70px 30px;
display: grid;
grid-template-columns: 1.08fr .78fr;
gap: 70px;
align-items: center;
background: #fbfaf6
}
.clinic-wrap {
height: 238px;
overflow: hidden
}
.clinic-img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: .4s
}
.treatment-copy h2,
.why-card h2 {
font: 500 29px/1 "Cormorant Garamond", serif;
margin: 0 0 8px
}
.treatment-list {
list-style: none;
padding: 0;
margin: 0
}
.treatment-list li {
border-bottom: 1px solid #d7d2ca;
padding: 4px 0;
font: 500 20px/1 "Cormorant Garamond", serif
}
.results {
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 5px;
background: #fbfaf6;
overflow: hidden
}
.result-card {
min-width: 0
}
.result-card img {
display: block;
width: 100%;
height: 137px;
object-fit: cover
}
.result-card:nth-child(1) img,
.result-card:nth-child(6) img {
object-position: center
}
.result-card span {
height: 30px;
display: block;
padding-top: 8px;
text-align: center;
font-size: 8px;
white-space: nowrap
}
.why {
height: 205px;
display: grid;
place-items: center;
background: radial-gradient(circle at 73% 72%, #f2c6c3 0, transparent 34%), radial-gradient(circle at 18% 25%, #ead5b9 0, transparent 43%), linear-gradient(120deg, #efe0c9, #f5e9df 55%, #efc3c1)
}
.why-card {
width: 286px;
padding: 20px 23px;
background: #f8f1e8cc;
border: 1px solid #ffffff66;
border-radius: 6px;
box-shadow: 0 8px 20px #9b79642a;
backdrop-filter: blur(10px)
}
.why-card h2 {
font-size: 28px;
margin-bottom: 6px
}
.why-card ul {
list-style: none;
margin: 0;
padding: 0;
font-size: 10px;
line-height: 1.75
}
.testimonial {
height: 236px;
padding: 47px 70px 25px;
text-align: center;
background: #fbfaf6
}
.quote {
max-width: 520px;
margin: 0 auto 12px;
font: 500 25px/.94 "Cormorant Garamond", serif;
letter-spacing: -.5px
}
.avatar {
width: 34px;
height: 34px;
border-radius: 50%;
object-fit: cover;
display: block;
margin: 0 auto 5px
}
.client {
font-size: 8px
}
.footer {
height: 62px;
margin: 0 70px;
border-top: 1px solid var(--line);
display: grid;
grid-template-columns: 1.2fr .7fr 1.25fr .8fr;
align-items: center;
font-size: 8px
}
.footer-brand {
font: 500 18px/13px "Cormorant Garamond", serif
}
.footer-brand small {
display: block;
font: 500 5px/1 Inter, sans-serif;
letter-spacing: 2px
}
.socials {
display: flex;
justify-content: flex-end;
gap: 12px;
font-weight: 600
}
.socials a:hover {
opacity: .55
}
@media(max-width:700px) {
body {
background: var(--surface)
}
.browser {
width: 100%;
margin: 0;
border: 0;
border-radius: 0;
box-shadow: none
}
.chrome {
display: none
}
.site-header {
grid-template-columns: 1fr auto;
padding: 0 20px
}
.nav {
display: none
}
.hero {
height: auto;
grid-template-columns: 1fr
}
.hero-copy {
padding: 60px 30px
}
.hero-img {
height: 420px
}
.treatments {
padding: 45px 30px;
grid-template-columns: 1fr;
gap: 30px
}
.results {
display: flex;
overflow-x: auto
}
.result-card {
min-width: 135px
}
.why {
height: 210px
}
.testimonial {
height: auto;
padding: 55px 30px
}
.footer {
height: auto;
margin: 0 30px;
padding: 25px 0;
grid-template-columns: 1fr 1fr;
gap: 18px
}
.socials {
justify-content: flex-start
}
}
/* Full-width responsive layout */
body { background: var(--surface); overflow-x: hidden }
.browser {
width: 100%;
max-width: none;
margin: 0;
border: 0;
border-radius: 0;
box-shadow: none
}
.hero {
height: clamp(560px, 72vh, 760px);
grid-template-columns: minmax(420px, .9fr) minmax(520px, 1.1fr)
}
.hero-copy {
display: flex;
flex-direction: column;
justify-content: center;
padding: clamp(55px, 7vw, 120px)
}
.hero h1 {
font-size: clamp(64px, 6.4vw, 110px);
line-height: .83;
letter-spacing: -.045em;
margin-bottom: 30px
}
.hero p {
max-width: 510px;
font-size: clamp(15px, 1.25vw, 20px);
line-height: 1.55;
margin-bottom: 28px
}
.text-link { font-size: 14px; width: max-content }
.treatments {
min-height: 680px;
padding: clamp(70px, 8vw, 130px) clamp(40px, 8vw, 130px);
grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
gap: clamp(55px, 8vw, 130px)
}
.clinic-wrap { height: clamp(420px, 40vw, 600px) }
.treatment-copy h2, .why-card h2 { font-size: clamp(42px, 4vw, 66px); margin-bottom: 25px }
.treatment-list li { padding: 13px 0; font-size: clamp(25px, 2.4vw, 38px) }
.results { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px }
.result-card img { height: clamp(230px, 22vw, 380px) }
.result-card span { height: auto; padding: 14px 6px 20px; font-size: 13px }
.why { height: auto; min-height: 520px; padding: 80px 24px }
.why-card { width: min(580px, 100%); padding: clamp(35px, 5vw, 65px); border-radius: 18px }
.why-card ul { font-size: clamp(15px, 1.4vw, 20px); line-height: 1.9 }
.testimonial { height: auto; min-height: 480px; padding: clamp(80px, 9vw, 145px) 30px }
.quote { max-width: 1050px; font-size: clamp(36px, 4.5vw, 72px); line-height: .98; letter-spacing: -.025em; margin-bottom: 30px }
.avatar { width: 58px; height: 58px; margin-bottom: 10px }
.client { font-size: 13px }
.hero h1 { font-size: clamp(54px, 5.4vw, 92px) }
.hero-copy .opening { max-width: 600px }
.treatment-intro { font-size: clamp(14px, 1.15vw, 18px); line-height: 1.65; color: var(--muted); margin: 0 0 30px; max-width: 610px }
.cta-label { display: block; margin-bottom: 18px; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted) }
.contact-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 28px; margin: 28px 0 22px }
.contact-links a { color: var(--text); text-decoration: none; font-size: clamp(15px, 1.25vw, 19px); border-bottom: 1px solid var(--text); padding-bottom: 3px }
.locations { margin: 0; font: 500 clamp(17px, 1.8vw, 25px)/1.4 "Cormorant Garamond", serif; color: var(--muted) }
/* Compact, non-overlapping makeup service layout */
.hero { height: clamp(520px, 64vh, 650px) }
.hero h1 { font-size: clamp(48px, 4.7vw, 78px) }
.hero p { font-size: clamp(14px, 1.05vw, 17px); line-height: 1.55 }
.treatments {
min-height: 0;
padding: clamp(55px, 6vw, 90px) clamp(40px, 7vw, 110px);
align-items: start;
gap: clamp(45px, 6vw, 90px)
}
.clinic-wrap { height: clamp(330px, 30vw, 440px); align-self: start }
.treatment-copy { align-self: start }
.treatment-copy h2 { font-size: clamp(36px, 3.2vw, 52px); margin: 0 0 16px }
.treatment-intro { font-size: clamp(13px, 1vw, 16px); line-height: 1.55; margin-bottom: 22px }
.treatment-list li { padding: 9px 0; font-size: clamp(21px, 1.85vw, 29px) }
.result-card img { height: clamp(190px, 18vw, 290px) }
.why { min-height: 430px }
.why-card h2 { font-size: clamp(36px, 3.3vw, 52px) }
.testimonial { min-height: 400px; padding-top: clamp(65px, 7vw, 105px); padding-bottom: clamp(65px, 7vw, 105px) }
.quote { font-size: clamp(32px, 3.6vw, 56px) }
@media(max-width: 960px) {
.hero { height: auto; grid-template-columns: 1fr }
.hero-copy { min-height: 480px; text-align: center; align-items: center }
.hero p { max-width: 620px }
.hero-img { height: min(78vw, 650px) }
.treatments { grid-template-columns: 1fr; min-height: 0; gap: 55px }
.clinic-wrap { height: min(65vw, 560px) }
.treatment-copy { width: min(680px, 100%); margin: 0 auto }
.results { grid-template-columns: repeat(3, 1fr) }
.result-card img { height: 38vw; max-height: 360px }
.treatments { align-items: stretch }
.clinic-wrap { height: min(58vw, 470px) }
}
@media(max-width: 560px) {
.hero-copy { min-height: 400px; padding: 65px 22px }
.hero h1 { font-size: clamp(53px, 16vw, 76px); margin-bottom: 24px }
.hero p { font-size: 15px }
.hero-img { height: 110vw; max-height: 520px }
.treatments { padding: 65px 20px; gap: 42px }
.clinic-wrap { height: 85vw; min-height: 300px }
.treatment-copy h2 { font-size: 44px }
.treatment-list li { font-size: 25px; padding: 12px 0 }
.results { display: grid; grid-template-columns: repeat(2, 1fr); overflow: visible }
.result-card { min-width: 0 }
.result-card img { height: 58vw }
.result-card span { font-size: 12px }
.why { min-height: 440px; padding: 55px 20px }
.why-card { padding: 35px 28px }
.why-card h2 { font-size: 42px }
.testimonial { min-height: 420px; padding: 80px 22px }
.quote { font-size: clamp(34px, 10vw, 48px) }
.quote br { display: none }
.contact-links { flex-direction: column; align-items: center; gap: 14px }
.hero { height: auto }
.hero h1 { font-size: clamp(43px, 13vw, 60px) }
.clinic-wrap { height: 78vw; min-height: 270px; max-height: 390px }
.treatment-copy h2 { font-size: 38px }
.treatment-intro { font-size: 14px }
.treatment-list li { font-size: 22px }
}
/* Compact, aligned makeup content */
.hero {
height: auto;
min-height: 560px
}
.hero-copy {
padding: clamp(55px, 6vw, 90px) clamp(36px, 6vw, 95px)
}
.hero h1 {
font-size: clamp(48px, 4.8vw, 78px);
line-height: .88
}
.hero p {
font-size: clamp(14px, 1vw, 17px);
max-width: 520px
}
.treatments {
min-height: 0;
padding: clamp(60px, 6vw, 90px) clamp(36px, 7vw, 110px);
grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
gap: clamp(45px, 6vw, 90px);
align-items: start
}
.clinic-wrap {
width: 100%;
height: clamp(320px, 32vw, 470px);
align-self: start
}
.clinic-img {
object-position: center 48%
}
.treatment-copy {
align-self: start;
padding-top: 0
}
.treatment-copy h2 {
font-size: clamp(38px, 3.4vw, 54px);
line-height: 1;
margin: 0 0 18px
}
.treatment-intro {
font-size: clamp(13px, 1vw, 16px);
line-height: 1.55;
margin-bottom: 20px
}
.treatment-list li {
padding: 9px 0;
font-size: clamp(21px, 2vw, 30px)
}
.result-card img {
height: clamp(180px, 18vw, 285px)
}
.why {
min-height: 430px
}
.testimonial {
min-height: 400px;
padding: clamp(65px, 7vw, 105px) 30px
}
.quote {
font-size: clamp(32px, 3.7vw, 56px)
}
@media(max-width: 960px) {
.hero { min-height: 0 }
.hero-copy { padding: 60px 30px }
.treatments { grid-template-columns: 1fr; padding: 60px 30px; gap: 38px }
.clinic-wrap { width: min(680px, 100%); height: min(58vw, 440px); justify-self: center }
.treatment-copy { width: min(680px, 100%); justify-self: center }
.result-card img { height: min(36vw, 300px) }
}
@media(max-width: 560px) {
.hero-copy { padding: 52px 20px }
.hero h1 { font-size: clamp(42px, 13vw, 58px) }
.treatments { padding: 48px 18px; gap: 32px }
.clinic-wrap { height: 72vw; min-height: 270px }
.treatment-copy h2 { font-size: 38px }
.treatment-list li { font-size: 21px }
.result-card img { height: 52vw }
}
/* Contained images and smaller final scale */
.hero {
height: 560px;
min-height: 0;
align-items: stretch
}
.hero-copy {
padding: clamp(42px, 5vw, 76px)
}
.hero h1 {
font-size: clamp(44px, 4.2vw, 68px)
}
.hero p {
font-size: clamp(13px, .95vw, 16px)
}
.hero-img {
position: relative;
height: 560px;
min-height: 0;
overflow: hidden
}
.hero-img img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover
}
.treatments {
padding: clamp(48px, 5vw, 76px) clamp(32px, 6vw, 90px);
grid-template-columns: minmax(0, 1fr) minmax(340px, .85fr);
gap: clamp(38px, 5vw, 72px)
}
.clinic-wrap {
width: 100%;
height: min(29vw, 410px);
min-height: 300px;
overflow: hidden
}
.clinic-img {
width: 100%;
height: 100%;
object-fit: cover
}
.treatment-copy h2 {
font-size: clamp(33px, 3vw, 46px)
}
.treatment-intro {
font-size: clamp(12px, .9vw, 15px);
line-height: 1.5
}
.treatment-list li {
font-size: clamp(19px, 1.65vw, 26px);
padding: 8px 0
}
.result-card img { height: clamp(165px, 16vw, 250px) }
.why-card h2 { font-size: clamp(32px, 3vw, 46px) }
.why-card ul { font-size: clamp(13px, 1vw, 16px) }
.quote { font-size: clamp(29px, 3.3vw, 50px) }
@media(max-width: 960px) {
.hero { height: auto; grid-template-columns: 1fr }
.hero-copy { padding: 55px 28px }
.hero-img { position: relative; height: min(66vw, 500px) }
.treatments { grid-template-columns: 1fr; padding: 52px 28px; gap: 32px }
.clinic-wrap { width: min(620px, 100%); height: min(55vw, 390px); min-height: 280px; justify-self: center }
.treatment-copy { width: min(620px, 100%); justify-self: center }
.result-card img { height: min(32vw, 260px) }
}
@media(max-width: 560px) {
.hero-copy { padding: 48px 20px }
.hero h1 { font-size: clamp(39px, 11.5vw, 52px) }
.hero-img { height: 90vw; max-height: 400px }
.treatments { padding: 44px 16px; gap: 28px }
.clinic-wrap { height: 68vw; min-height: 240px }
.treatment-copy h2 { font-size: 34px }
.treatment-intro { font-size: 13px }
.treatment-list li { font-size: 19px }
.result-card img { height: 46vw }
.quote { font-size: clamp(28px, 8vw, 39px) }
}
</style>
<style id="vir-makeup-palette-1727">
:root{
--vir-background:#E9E9E7;--vir-light-background:#F7F7F5;--vir-text:#1A1A1A;--vir-white:#FFFFFF;
--vir-forest-darkest:#041F1D;--vir-forest:#073731;--vir-teal:#0D5C52;--vir-teal-highlight:#166F63;
--vir-forest-secondary:#0A463F;--vir-green-black:#031917;--vir-burgundy:#8B1A2B;--vir-wine:#3D1018;
--vir-terracotta:#A64B47;--vir-gold:#D4B56A;
--vir-services-gradient:linear-gradient(135deg,#041F1D 0%,#073731 30%,#0D5C52 62%,#031917 100%);
--vir-aesthetic-gradient:linear-gradient(135deg,#8B1A2B 0%,#3D1018 54%,#8B1A2B 100%);
--page-bg:var(--vir-light-background);--surface:var(--vir-light-background);--white:var(--vir-white);
--cream:#F5F0E9;--beige:#E7D9CA;--blush:#DDB9B3;--black:var(--vir-green-black);
--text:var(--vir-text);--muted:#5D5D5D;--line:rgba(7,55,49,.16)
}
body,.browser{background:var(--vir-light-background);color:var(--vir-text)}
.hero{background:linear-gradient(135deg,#F7F7F5 0%,#F2ECE5 66%,#E8D9CB 100%)}
.hero-copy{position:relative;background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(247,247,245,.12))}
.hero-copy:after{content:"";position:absolute;left:clamp(36px,6vw,95px);bottom:clamp(28px,4vw,58px);width:86px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--vir-burgundy),var(--vir-gold))}
.hero h1{color:var(--vir-forest-darkest)}
.hero p{color:#4A4A4A}
.text-link{color:var(--vir-burgundy);border-bottom-color:rgba(139,26,43,.35);font-weight:500}
.text-link:hover{color:var(--vir-forest);border-color:var(--vir-forest)}
.hero-img{background:var(--vir-forest-darkest)}
.treatments{background:linear-gradient(145deg,var(--vir-white) 0%,var(--vir-light-background) 67%,#E9E4DD 100%)}
.clinic-wrap{border-radius:16px;box-shadow:0 24px 55px rgba(4,31,29,.16);outline:1px solid rgba(212,181,106,.62);outline-offset:7px}
.treatment-copy h2{color:var(--vir-forest-darkest)}
.treatment-intro{color:var(--muted)}
.treatment-list li{border-color:rgba(7,55,49,.16);color:var(--vir-forest);transition:color .25s ease,padding-left .25s ease}
.treatment-list li:hover{color:var(--vir-burgundy);padding-left:9px}
.results{background:var(--vir-forest-darkest);gap:2px}
.result-card span{background:linear-gradient(135deg,var(--vir-forest),var(--vir-teal));color:var(--vir-white);border-top:1px solid rgba(212,181,106,.45)}
.result-card img{filter:saturate(.9) contrast(1.02);transition:transform .45s ease,filter .45s ease}
.result-card:hover img{transform:scale(1.035);filter:saturate(1.06) contrast(1.03)}
.why{background:radial-gradient(circle at 78% 24%,rgba(212,181,106,.18),transparent 31%),radial-gradient(circle at 14% 84%,rgba(166,75,71,.34),transparent 35%),var(--vir-aesthetic-gradient)}
.why-card{background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(245,240,233,.9));border:1px solid rgba(212,181,106,.62);box-shadow:0 24px 60px rgba(61,16,24,.34)}
.why-card h2{color:var(--vir-burgundy)}
.why-card li{color:var(--vir-forest-darkest)}
.why-card li::marker{color:var(--vir-gold)}
.testimonial{background:linear-gradient(135deg,var(--vir-light-background),#F1EBE4 58%,rgba(212,181,106,.2))}
.quote{color:var(--vir-forest-darkest)}
.client{color:var(--vir-burgundy);font-weight:500}
.avatar{outline:2px solid var(--vir-gold);outline-offset:4px}
.footer{border-color:rgba(7,55,49,.18);color:var(--vir-forest-darkest)}
.footer-brand{color:var(--vir-forest)}
.footer a:hover,.socials a:hover{color:var(--vir-burgundy);opacity:1}
@media(max-width:560px){.clinic-wrap{outline-offset:4px;border-radius:12px}.hero-copy:after{left:20px;bottom:22px;width:64px}}
</style>
<style id="vir-makeup-results-palette-1727">
.results{background:var(--vir-gold);gap:1px;border-top:1px solid rgba(212,181,106,.7);border-bottom:1px solid rgba(212,181,106,.7)}
.result-card:nth-child(1) span,.result-card:nth-child(4) span{background:linear-gradient(135deg,var(--vir-forest),var(--vir-teal));color:var(--vir-white)}
.result-card:nth-child(2) span,.result-card:nth-child(5) span{background:linear-gradient(135deg,var(--vir-burgundy),var(--vir-wine));color:var(--vir-white)}
.result-card:nth-child(3) span,.result-card:nth-child(6) span{background:linear-gradient(135deg,var(--vir-teal-highlight),var(--vir-forest-secondary));color:var(--vir-white)}
.result-card span{border-top:2px solid rgba(212,181,106,.72);letter-spacing:.015em;text-shadow:0 1px 2px rgba(0,0,0,.18)}
</style>
</head>
<body>
<div class="browser">
<main>
<section class="hero" id="home">
<div class="hero-copy">
<h1>Makeup That<br>Looks Like You —<br>On Your Best Day.</h1>
<p class="opening">The best makeup is not the most dramatic. It is the makeup that makes you feel like yourself—only more so. Confident. Put together. Like the version of you that walked out of the door and felt ready for whatever the day had in it.</p>
<a class="text-link" href="#contact">Book a Makeup Appointment →</a>
</div>
<div class="hero-img"><img
src="https://images.unsplash.com/photo-1616683693504-3ea7e9ad6fec?auto=format&fit=crop&w=900&q=90"
alt="Professional makeup look by Virtue Salons"></div>
</section>
<section class="treatments" id="services">
<div class="clinic-wrap"><img class="clinic-img"
src="https://images.unsplash.com/photo-1522335789203-aabd1fc54bc9?auto=format&fit=crop&w=1000&q=90"
alt="Professional makeup artist station at Virtue Salons"></div>
<div class="treatment-copy">
<h2>Makeup by Virtue</h2>
<p class="treatment-intro">At Virtue Salons, our makeup artists understand Chennai's light, Chennai's climate, and the very specific challenge of keeping makeup looking flawless in humid conditions. We work with professional products that photograph well, last through a long event, and do not sit heavy on the skin by hour three.</p>
<ul class="treatment-list">
<li><a href="#contact">— Bridal Makeup</a></li>
<li><a href="#contact">— Engagement Makeup</a></li>
<li><a href="#contact">— Party & Occasion Makeup</a></li>
<li><a href="#contact">— HD & Airbrush Makeup</a></li>
<li><a href="#contact">— Hairstyling & Saree Draping</a></li>
</ul>
</div>
</section>
<section class="results" id="results">
<div class="result-card"><img
src="https://images.unsplash.com/photo-1570172619644-dfd03ed5d881?auto=format&fit=crop&w=400&q=85"
alt="Natural makeup finish"><span>Natural Finish</span></div>
<div class="result-card"><img
src="https://virtue.thecreativestudios.in/wp-content/uploads/2026/07/virtue-soft-glam.jpg"
alt="Soft glam makeup"><span>Soft Glam</span></div>
<div class="result-card"><img
src="https://images.unsplash.com/photo-1616394584738-fc6e612e71b9?auto=format&fit=crop&w=400&q=85"
alt="Event makeup look"><span>Event Ready</span></div>
<div class="result-card"><img
src="https://images.unsplash.com/photo-1598440947619-2c35fc9aa908?auto=format&fit=crop&w=400&q=85"
alt="Camera-ready makeup"><span>Camera Ready</span></div>
<div class="result-card"><img
src="https://virtue.thecreativestudios.in/wp-content/uploads/2026/07/virtue-bridal-finish.jpg"
alt="Bridal makeup finish"><span>Bridal Finish</span></div>
<div class="result-card"><img
src="https://images.unsplash.com/photo-1570172619644-dfd03ed5d881?auto=format&fit=crop&w=400&q=85"
alt="Long-wear makeup"><span>Long-Wear Beauty</span></div>
</section>
<section class="why" id="about">
<div class="why-card">
<h2>Made for Chennai</h2>
<ul>
<li>— makeup designed for your features</li>
<li>— professional, camera-ready products</li>
<li>— humidity-conscious application</li>
<li>— comfortable, long-lasting finish</li>
</ul>
</div>
</section>
<section class="testimonial" id="contact">
<span class="cta-label">Book a Makeup Appointment at Virtue Salons</span>
<p class="quote">Tell us about the occasion.<br>We'll tell you what we can do.</p>
<div class="contact-links"><a href="tel:+917708887778">📞 77088 87778</a><a href="mailto:virtuesalon.india@gmail.com">📧 virtuesalon.india@gmail.com</a></div>
<p class="locations">Virtue Salons — Anna Nagar · Avadi · Ambattur · Kolathur</p>
</section>
</main>
</div>
</body>
</html>
