@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/cormorant-garamond-400.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:500;font-display:swap;src:url("assets/fonts/cormorant-garamond-500.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url("assets/fonts/cormorant-garamond-600.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:400;font-display:swap;src:url("assets/fonts/cormorant-garamond-italic-400.ttf") format("truetype")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:500;font-display:swap;src:url("assets/fonts/cormorant-garamond-italic-500.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:400;font-display:swap;src:url("assets/fonts/montserrat-400.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:500;font-display:swap;src:url("assets/fonts/montserrat-500.ttf") format("truetype")}
@font-face{font-family:"Montserrat";font-style:normal;font-weight:600;font-display:swap;src:url("assets/fonts/montserrat-600.ttf") format("truetype")}

:root{
  --color-background:#FFFAF8;
  --color-white:#FFFFFF;
  --color-text:#2E2527;
  --color-text-muted:#75686C;
  --color-plum:#5B3B4A;
  --color-berry:#8D4C63;
  --color-rose:#D7A3AD;
  --color-blush:#F3D7DD;
  --color-champagne:#EFE0C7;
  --color-sage:#CFD9CF;
  --color-border:#EAD8DC;
  --shadow-soft:0 8px 30px rgba(66,48,40,.06);
  --shadow-image:0 6px 18px rgba(92,62,72,.12);
  --max-width:1160px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{
  margin:0;
  min-width:320px;
  overflow-x:hidden;
  color:var(--color-text);
  background:var(--color-background);
  font-family:"Montserrat",Arial,Helvetica,sans-serif;
  font-size:16px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-underline-offset:3px}
img{display:block;max-width:100%;height:auto}
.wrap{width:min(var(--max-width),calc(100% - 80px));margin-inline:auto}

header{
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(255,250,248,.96);
  border-bottom:1px solid rgba(234,216,220,.85);
  box-shadow:0 3px 22px rgba(91,59,74,.045);
  backdrop-filter:blur(12px);
}
.nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.brand{
  position:relative;
  padding-left:18px;
  color:var(--color-plum);
  font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  font-size:29px;
  font-weight:600;
  line-height:1;
  letter-spacing:.02em;
  text-decoration:none;
}
.brand::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:3px;background:linear-gradient(var(--color-berry),var(--color-champagne))}
.brand small{
  display:block;
  margin-top:8px;
  color:var(--color-text-muted);
  font-family:"Montserrat",Arial,sans-serif;
  font-size:10px;
  font-weight:600;
  line-height:1.2;
  letter-spacing:.22em;
  text-transform:uppercase;
}
nav{display:flex;align-items:center;gap:25px}
nav a{
  position:relative;
  padding:32px 0 28px;
  color:var(--color-text);
  font-size:14px;
  font-weight:500;
  line-height:1;
  text-decoration:none;
}
nav a::after{content:"";position:absolute;left:0;right:100%;bottom:22px;height:2px;background:var(--color-berry);transition:right .22s ease}
nav a:hover,nav a.active{color:var(--color-berry)}
nav a:hover::after,nav a.active::after{right:0}
.menu{
  display:none;
  width:46px;
  height:46px;
  padding:0;
  color:var(--color-plum);
  background:var(--color-white);
  border:1px solid var(--color-border);
  border-radius:3px;
  font:500 26px/1 "Montserrat",Arial,sans-serif;
  cursor:pointer;
}

h1,h2,h3{
  color:var(--color-plum);
  font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  font-weight:500;
  line-height:1.08;
  text-wrap:balance;
}
h1{margin:.18em 0 .28em;font-size:clamp(56px,6vw,72px);letter-spacing:-.025em}
h2{margin:0 0 24px;font-size:clamp(38px,4vw,48px);letter-spacing:-.015em}
h3{margin:0 0 14px;font-size:clamp(24px,2.6vw,30px)}
h2::after{content:"";display:block;width:66px;height:2px;margin-top:16px;background:linear-gradient(90deg,var(--color-berry),var(--color-champagne))}
p{margin:0 0 1.1em}
.lead{max-width:780px;color:#51464a;font-size:clamp(19px,2vw,21px);line-height:1.65}
.eyebrow{
  margin-bottom:16px;
  color:#fff;
  font-size:13px;
  font-weight:600;
  letter-spacing:.2em;
  text-transform:uppercase;
}

.hero{
  position:relative;
  min-height:78vh;
  display:grid;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background:#43353a;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:
    linear-gradient(90deg,rgba(46,37,39,.72) 0%,rgba(46,37,39,.42) 43%,rgba(46,37,39,.1) 76%),
    url("assets/images/hochzeit-braut/braut-makeup-07.jpg") center 30%/cover no-repeat;
}
.hero::after{content:"";position:absolute;inset:auto 0 0;height:120px;z-index:-1;background:linear-gradient(to top,var(--color-background),transparent)}
.hero-content{
  width:min(760px,calc(100% - 80px));
  margin-left:max(40px,calc((100vw - var(--max-width))/2));
  padding:110px 0 140px;
  color:#fff;
}
.hero h1{max-width:680px;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.22)}
.hero .lead{max-width:690px;color:rgba(255,255,255,.94)}

.btn{
  display:inline-flex;
  min-height:50px;
  align-items:center;
  justify-content:center;
  padding:14px 24px;
  color:#fff;
  background:linear-gradient(135deg,var(--color-berry),#A96072);
  border:0;
  border-radius:3px;
  box-shadow:0 8px 20px rgba(141,76,99,.18);
  font:600 15px/1.3 "Montserrat",Arial,sans-serif;
  text-decoration:none;
  cursor:pointer;
  transition:transform .25s ease,filter .25s ease,box-shadow .25s ease;
}
.btn:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 11px 24px rgba(141,76,99,.24)}
.btn:focus-visible,.menu:focus-visible,nav a:focus-visible,.portfolio-nav a:focus-visible{outline:3px solid rgba(141,76,99,.3);outline-offset:3px}
.btn.light{color:var(--color-plum);background:#fff;box-shadow:0 10px 28px rgba(32,24,28,.2)}

section{padding:96px 0;background:var(--color-background)}
section:nth-of-type(even){background:var(--color-white)}
.soft{background:linear-gradient(135deg,#F9ECEF 0%,#FBF3EB 55%,#F0F5F0 100%)!important}
.grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:72px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.card{
  height:100%;
  padding:32px;
  background:rgba(255,255,255,.95);
  border:1px solid var(--color-border);
  border-top:4px solid var(--color-rose);
  box-shadow:var(--shadow-soft);
}
.card:nth-child(3n+2){border-top-color:var(--color-champagne)}
.card:nth-child(3n){border-top-color:var(--color-sage)}
.card p:last-child{margin-bottom:0}
.portrait{
  width:100%;
  max-height:680px;
  object-fit:cover;
  border-radius:3px;
  box-shadow:0 18px 45px rgba(91,59,74,.14);
}
.grid2>.portrait:first-child{justify-self:center;max-width:540px}
.quote{
  margin:30px 0 0;
  padding:25px 28px;
  color:var(--color-berry);
  background:#fff7f8;
  border-left:4px solid var(--color-berry);
  font:italic 500 clamp(24px,2.6vw,30px)/1.4 "Cormorant Garamond",Georgia,serif;
}
.statement{padding:54px 0!important;background:var(--color-blush)!important;text-align:center}
.statement p{max-width:900px;margin:auto;color:var(--color-berry);font:italic 500 clamp(28px,4vw,42px)/1.25 "Cormorant Garamond",Georgia,serif}

.reviews-trust{padding:38px 0!important;background:var(--color-white)!important}
.reviews-trust-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:28px;
  padding:30px 34px;
  background:linear-gradient(125deg,#fff 0%,#fff8f7 60%,#f8f1e8 100%);
  border:1px solid var(--color-border);
  border-left:5px solid var(--color-rose);
  box-shadow:var(--shadow-soft);
}
.google-mark{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#fff;border:1px solid var(--color-border);box-shadow:0 8px 22px rgba(91,59,74,.1)}
.google-mark span{font:600 34px/1 Arial,sans-serif;color:#4285f4}
.reviews-trust-copy .eyebrow{margin-bottom:5px;color:var(--color-berry)}
.reviews-trust-copy h2{margin:0 0 6px;font-size:clamp(31px,3.6vw,42px)}
.reviews-trust-copy h2::after{display:none}
.reviews-trust-copy p{max-width:720px;margin:0;color:var(--color-text-muted);font-size:15px}
.reviews-button{white-space:nowrap}

.pagehead{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:88px 0 64px;
  text-align:center;
  background:linear-gradient(135deg,#F5DFE4 0%,#FBF2E6 52%,#EEF4EF 100%);
}
.pagehead::before,.pagehead::after{content:"";position:absolute;z-index:-1;border-radius:50%;filter:blur(1px)}
.pagehead::before{width:260px;height:260px;left:-120px;top:-140px;background:rgba(215,163,173,.22)}
.pagehead::after{width:300px;height:300px;right:-160px;bottom:-220px;background:rgba(207,217,207,.35)}
.pagehead .wrap::before{content:"MAKEUP PROFI MARTINA";display:block;margin-bottom:12px;color:var(--color-berry);font-size:12px;font-weight:600;letter-spacing:.24em}
.pagehead h1{margin:0;color:var(--color-plum);font-size:clamp(50px,6vw,66px)}
.pagehead p{max-width:740px;margin:18px auto 0;color:var(--color-text-muted);font-size:18px}

.list-clean{display:grid;gap:10px;margin:22px 0 0;padding:0;list-style:none}
.list-clean li{position:relative;padding-left:30px}
.list-clean li::before{content:"";position:absolute;left:0;top:.65em;width:15px;height:1px;background:var(--color-berry)}
.price{margin:4px 0 18px;color:var(--color-berry);font:500 27px/1.25 "Cormorant Garamond",Georgia,serif}
.note{color:var(--color-text-muted);font-size:13px}

.seo-band{padding:68px 0;background:linear-gradient(125deg,var(--color-plum),var(--color-berry))!important;color:#fff}
.seo-band h2,.seo-band .lead{color:#fff}
.seo-band h2::after{background:linear-gradient(90deg,#fff,var(--color-champagne))}
.pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.pill{padding:9px 14px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(255,255,255,.1);font-size:14px}

.faq{max-width:900px}
.faq details{padding:0;border-bottom:1px solid var(--color-border);background:rgba(255,255,255,.72)}
.faq details:first-child{border-top:1px solid var(--color-border)}
.faq summary{
  position:relative;
  padding:25px 58px 25px 24px;
  color:var(--color-plum);
  font-size:17px;
  font-weight:600;
  line-height:1.55;
  cursor:pointer;
  list-style:none;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:24px;top:50%;translate:0 -50%;color:var(--color-berry);font:400 30px/1 "Cormorant Garamond",serif}
.faq details[open] summary::after{content:"−"}
.faq details p{margin:0;padding:0 58px 26px 24px;color:#514a46}

.gallery{columns:3 280px;column-gap:18px}
.gallery img{
  width:100%;
  margin:0 0 18px;
  break-inside:avoid;
  border-radius:3px;
  background:#f3ecec;
  box-shadow:var(--shadow-image);
}
.gallery-section{scroll-margin-top:145px}
.gallery-section h2{margin-bottom:34px}
.journey-section{background:linear-gradient(180deg,#FFFAF8 0%,#FDF4F2 100%)!important}
.journey-heading{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:end;gap:52px;margin-bottom:38px}
.journey-heading h2{max-width:760px;margin-bottom:0}
.journey-heading p{margin:0 0 8px;color:var(--color-text-muted)}
.journey-cover{margin:0 0 30px;padding:10px;background:#fff;border:1px solid var(--color-border);box-shadow:var(--shadow-image)}
.journey-cover img{display:block;width:100%;max-height:980px;object-fit:contain;background:#f7efeb}
.journey-cover figcaption{padding:13px 8px 5px;color:var(--color-text-muted);font-size:14px;text-align:center}
.journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.journey-grid figure{display:flex;flex-direction:column;margin:0;background:#fff;border:1px solid var(--color-border);box-shadow:0 12px 28px rgba(91,59,74,.09)}
.journey-grid img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;background:#f3ecec}
.journey-grid figure:nth-child(7) img{aspect-ratio:5/4}
.journey-grid figcaption{display:flex;align-items:center;gap:12px;min-height:68px;padding:14px 16px;color:var(--color-plum);font:500 17px/1.35 "Cormorant Garamond",Georgia,serif}
.journey-grid figcaption span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:50%;color:#fff;background:var(--color-berry);font:600 12px/1 "Montserrat",Arial,sans-serif}
.portfolio-nav{position:sticky;top:88px;z-index:20;background:rgba(255,250,248,.96);border-bottom:1px solid var(--color-border);backdrop-filter:blur(12px)}
.portfolio-nav .wrap{display:flex;gap:10px;overflow-x:auto;padding-top:13px;padding-bottom:13px;scrollbar-width:thin}
.portfolio-nav a{flex:none;padding:8px 13px;color:var(--color-plum);background:#fff;border:1px solid var(--color-border);border-radius:999px;font-size:13px;font-weight:500;text-decoration:none}
.portfolio-nav a:hover{color:var(--color-berry);background:#fff6f7;border-color:var(--color-rose)}
.portfolio-cta{text-align:center;background:linear-gradient(135deg,#F5DFE4,#FBF2E6)!important}
.portfolio-cta .lead{margin-left:auto;margin-right:auto}

.contactbox{display:grid;grid-template-columns:.82fr 1.18fr;gap:54px;align-items:start}
.contactbox>div:first-child{padding:38px;background:linear-gradient(145deg,#F9E8EC,#F8F0E3);border-left:4px solid var(--color-rose)}
form{display:grid;gap:17px;padding:36px;background:#fff;border:1px solid var(--color-border);box-shadow:var(--shadow-soft)}
label{font-size:14px;font-weight:600}
input,textarea{
  width:100%;
  margin-top:7px;
  padding:14px 15px;
  color:var(--color-text);
  background:#fff;
  border:1px solid var(--color-border);
  border-radius:2px;
  font:400 16px/1.4 "Montserrat",Arial,sans-serif;
  transition:border-color .2s ease,box-shadow .2s ease;
}
input:focus,textarea:focus{outline:0;border-color:var(--color-berry);box-shadow:0 0 0 3px rgba(141,76,99,.12)}
textarea{min-height:180px;resize:vertical}
form label:has(input[type="checkbox"]){display:flex;align-items:flex-start;gap:10px;font-weight:400}
form input[type="checkbox"]{flex:0 0 18px;width:18px;height:18px;margin-top:4px;accent-color:var(--color-berry)}

.legal{max-width:880px;padding:44px;background:rgba(255,255,255,.75);border:1px solid var(--color-border)}
.legal h2{margin-top:42px;font-size:34px}
.legal h2:first-child{margin-top:0}

.whatsapp{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:40;
  padding:11px 16px;
  color:var(--color-plum);
  background:rgba(255,255,255,.96);
  border:1px solid var(--color-border);
  border-radius:999px;
  box-shadow:0 8px 28px rgba(46,37,39,.15);
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  backdrop-filter:blur(8px);
}
.whatsapp:hover{color:var(--color-berry);border-color:var(--color-rose)}

footer{margin:0;padding:48px 0 38px;color:#fff;background:linear-gradient(135deg,var(--color-plum),var(--color-text))}
.footergrid{display:flex;justify-content:space-between;align-items:flex-start;gap:36px;flex-wrap:wrap}
footer strong{font:600 26px/1.2 "Cormorant Garamond",Georgia,serif}
footer a{color:var(--color-champagne)}

@media(max-width:920px){
  .wrap{width:min(var(--max-width),calc(100% - 40px))}
  .nav{min-height:82px}
  .brand{font-size:26px}
  .menu{display:grid;place-items:center}
  nav{
    display:none;
    position:absolute;
    top:82px;
    left:0;
    right:0;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:12px 20px 22px;
    background:rgba(255,250,248,.99);
    border-bottom:1px solid var(--color-border);
    box-shadow:0 16px 30px rgba(91,59,74,.1);
  }
  nav.open{display:flex}
  nav a{padding:14px 4px;border-bottom:1px solid rgba(234,216,220,.7)}
  nav a::after{display:none}
  .hero-content{width:calc(100% - 40px);margin-left:20px;padding:90px 0 120px}
  .grid2,.grid3,.contactbox{grid-template-columns:1fr;gap:38px}
  .reviews-trust-card{grid-template-columns:auto 1fr}
  .reviews-button{grid-column:1/-1;justify-self:start;margin-left:92px}
  .journey-heading{grid-template-columns:1fr;gap:18px}
  .journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  section{padding:72px 0}
  .portfolio-nav{top:82px}
  .gallery-section{scroll-margin-top:138px}
}

@media(max-width:640px){
  body{font-size:16px;line-height:1.7}
  .wrap{width:calc(100% - 40px)}
  .brand{padding-left:14px;font-size:23px}
  .brand small{font-size:9px;letter-spacing:.14em}
  .hero{min-height:72vh}
  .hero::before{background-position:62% 30%}
  .hero-content{padding:80px 0 110px}
  .eyebrow{font-size:11px;letter-spacing:.15em}
  h1{font-size:clamp(38px,12vw,46px)}
  h2{font-size:clamp(30px,9vw,36px)}
  h3{font-size:clamp(22px,7vw,26px)}
  .lead{font-size:18px}
  .pagehead{padding:68px 0 50px}
  .pagehead h1{font-size:clamp(38px,12vw,46px)}
  .pagehead p{font-size:16px}
  section{padding:58px 0}
  .card,form,.contactbox>div:first-child,.legal{padding:25px}
  .price{font-size:25px}
  .gallery{columns:2 145px;column-gap:12px}
  .gallery img{margin-bottom:12px}
  .reviews-trust-card{grid-template-columns:1fr;padding:26px 24px;text-align:center}
  .google-mark{margin:auto}
  .reviews-button{grid-column:auto;justify-self:center;margin-left:0;white-space:normal}
  .journey-grid{grid-template-columns:1fr;gap:16px}
  .journey-grid img,.journey-grid figure:nth-child(7) img{aspect-ratio:auto;max-height:none;object-fit:contain}
  .portfolio-nav .wrap{width:100%;padding-left:20px;padding-right:20px}
  .whatsapp{right:14px;bottom:14px;padding:10px 13px}
}

@media(max-width:420px){
  .gallery{columns:1}
  .menu{width:42px;height:42px}
  .brand{font-size:21px}
  .brand small{display:none}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{transition-duration:.01ms!important}
}
