/*
Theme Name: Zaina Beauty Art
Theme URI: https://www.instagram.com/zainabeauty_art/
Author: Zaina Beauty Art
Description: Editorial portfolio theme for a makeup artist. Editable portfolio, services, masterclasses and testimonials, with site settings in Appearance > Customize.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: zaina
*/

:root{--body:#4d413b;--bg:#f6f1ec;--bg2:#ece3da;--ink:#2a211d;--muted:#7d6f67;--accent:#b8826f;--line:rgba(42,33,29,.15);
--serif:'Cormorant Garamond',Georgia,serif;--sans:'Jost','Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:1280px;margin:0 auto;padding:0 clamp(20px,4vw,56px)}
.eyebrow{font-size:.72rem;letter-spacing:.32em;text-transform:uppercase;color:var(--muted)}
h1,h2,h3{font-family:var(--serif);font-weight:300;line-height:1.05}
h2{font-size:clamp(2.2rem,5vw,4rem);letter-spacing:.02em}
.btn{display:inline-block;border:1px solid var(--ink);padding:14px 34px;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;transition:.35s;background:transparent;color:var(--ink);cursor:pointer;font-family:var(--sans)}
.btn:hover{background:var(--ink);color:var(--bg)}
.btn.light{border-color:#f6f1ec;color:#f6f1ec}.btn.light:hover{background:#f6f1ec;color:var(--ink)}
.link{font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:4px}
section{padding:clamp(70px,11vw,150px) 0}
.ph{background-color:var(--bg2);background-size:cover;background-position:center 25%;position:relative;overflow:hidden}
.ph::after{content:"";position:absolute;inset:auto 0 12px 0;text-align:center;font-size:.62rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(42,33,29,.35)}
.g1{background-image:linear-gradient(160deg,#e6d3c7,#cfa898)}.g2{background-image:linear-gradient(160deg,#d9c7b8,#a98f7d)}
.g3{background-image:linear-gradient(160deg,#efe1d6,#d9b9a8)}.g4{background-image:linear-gradient(160deg,#c9b2a3,#8e6f60)}
.g5{background-image:linear-gradient(160deg,#f0e4da,#c8a79a)}
header{position:fixed;top:0;left:0;right:0;z-index:50;transition:.4s;background:rgba(246,241,236,.94);backdrop-filter:blur(8px)}
header.solid{background:rgba(246,241,236,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:78px}
.logo{font-family:var(--serif);font-size:1.5rem;letter-spacing:.12em;line-height:1.1}
.logo small{display:block;font-family:var(--sans);font-size:.55rem;letter-spacing:.35em;color:var(--muted);text-transform:uppercase}
nav ul{display:flex;gap:38px;list-style:none}
nav a{font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;position:relative}
nav a::after{content:"";position:absolute;left:0;bottom:-6px;width:0;height:1px;background:currentColor;transition:.3s}
nav a:hover::after,nav .current-menu-item>a::after,nav .current_page_item>a::after{width:100%}
.burger{display:none;background:none;border:0;width:34px;height:34px;cursor:pointer}
.burger span{display:block;height:1px;background:var(--ink);margin:8px 0}
.pagehead{padding-top:170px;padding-bottom:70px}
.pagehead h1{font-size:clamp(3rem,8vw,7rem);margin-top:16px}
.pagehead p{max-width:560px;color:var(--body);margin-top:24px}
.hero{min-height:100vh;display:grid;grid-template-columns:1.05fr 1fr;padding:0}
.hero-text{display:flex;flex-direction:column;justify-content:center;padding:140px clamp(20px,5vw,80px) 80px}
.hero h1{font-size:clamp(3rem,7.5vw,7rem);margin:22px 0 26px}
.hero h1 em,.pagehead h1 em{font-style:italic;color:var(--accent)}
.hero p{max-width:420px;color:var(--muted);margin-bottom:40px}
.hero-img{min-height:60vh}
.band{border-block:1px solid var(--line);overflow:hidden;padding:22px 0;white-space:nowrap}
.band div{display:inline-block;animation:slide 32s linear infinite;font-family:var(--serif);font-size:1.6rem;font-style:italic;color:var(--muted)}
.band span{margin:0 28px}
@keyframes slide{to{transform:translateX(-50%)}}
.split{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(40px,8vw,120px);align-items:center}
.split.rev{grid-template-columns:1.1fr 1fr}
.split .ph{aspect-ratio:4/5}
.split h2{margin:18px 0 28px}
.split p{margin-bottom:18px;color:var(--body);max-width:520px}
.stats{display:flex;gap:48px;margin:34px 0 40px}
.stats b{display:block;font-family:var(--serif);font-weight:300;font-size:2.8rem;line-height:1}
.stats span{font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted)}
.head{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px;gap:20px;flex-wrap:wrap}
.head h2{margin-top:14px}
.tease{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,28px)}
.tease a{display:block;overflow:hidden}.tease .ph{aspect-ratio:3/4;transition:transform .8s}.tease a:hover .ph{transform:scale(1.04)}
.cap{display:flex;justify-content:space-between;margin-top:12px;font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted)}
.alt{background:var(--bg2)}
.worked{display:flex;flex-wrap:wrap;gap:20px 56px;font-family:var(--serif);font-size:1.7rem;font-style:italic;color:var(--muted);margin-top:36px}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}
.quotes blockquote{font-family:var(--serif);font-size:1.5rem;line-height:1.35;font-weight:300}
.quotes cite{display:block;margin-top:16px;font-family:var(--sans);font-style:normal;font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted)}
.tag{text-align:center;padding:clamp(100px,15vw,200px) 20px;color:#f6f1ec;background-size:cover;background-position:center}
.tag p{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(2rem,5.5vw,4.4rem);line-height:1.15;max-width:900px;margin:0 auto 36px}
.plist a{display:grid;grid-template-columns:60px 1fr auto;gap:20px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line);transition:.3s}
.plist{border-top:1px solid var(--line)}
.plist a:hover{padding-left:14px;color:var(--accent)}
.plist .n{font-size:.75rem;letter-spacing:.2em;color:var(--muted)}
.plist h3{font-size:clamp(1.4rem,2.6vw,2.1rem)}
.plist .t{font-size:.68rem;letter-spacing:.25em;text-transform:uppercase;color:var(--muted)}
.filters{display:flex;gap:10px 26px;flex-wrap:wrap;margin-bottom:40px}
.filters button{background:none;border:0;border-bottom:1px solid transparent;font:inherit;font-size:.72rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);cursor:pointer;padding:4px 0}
.filters button.on,.filters button:hover{color:var(--ink);border-color:var(--ink)}
.masonry{columns:3;column-gap:clamp(12px,2vw,28px)}
.masonry .item{break-inside:avoid;margin-bottom:clamp(12px,2vw,28px);display:block;overflow:hidden}
.masonry .item.hide{display:none}
.masonry .ph{transition:transform .8s}.masonry .item:hover .ph{transform:scale(1.04)}
.acc{border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid var(--line)}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:30px 0;font-family:var(--serif);font-size:clamp(1.8rem,3.5vw,3rem)}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-family:var(--sans);font-weight:200;font-size:2rem;transition:.3s}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc .body{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;padding:0 0 40px;color:var(--body)}
.acc ul{list-style:none}.acc li{padding:6px 0;border-bottom:1px solid var(--line);font-size:.85rem}
.acc .price{display:block;margin-top:18px;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}
.cta{text-align:center;margin-top:60px}
.gallery{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.gallery .ph{aspect-ratio:1/1}
form{display:grid;gap:22px;max-width:640px}
label{font-size:.66rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted)}
input,select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid var(--ink);padding:10px 0;font:inherit;font-weight:300;color:var(--ink);outline:none;border-radius:0}
input:focus,select:focus,textarea:focus{border-color:var(--accent)}
textarea{resize:vertical;min-height:100px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.info a{display:block;border-bottom:1px solid var(--line);padding:14px 0;font-size:.8rem;letter-spacing:.2em;text-transform:uppercase;transition:.3s}
.info a:hover{padding-left:10px;color:var(--accent)}
.info{margin-top:30px;border-top:1px solid var(--line)}
footer{border-top:1px solid var(--line);padding:50px 0 36px}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;align-items:center}
.foot ul{display:flex;gap:28px;list-style:none;flex-wrap:wrap}
.foot a,.foot small{font-size:.68rem;letter-spacing:.25em;text-transform:uppercase}.foot small{color:var(--muted)}
.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s,transform 1s}.reveal.in{opacity:1;transform:none}
@media(max-width:900px){
.burger{display:block}
nav ul{position:fixed;inset:78px 0 auto 0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);max-height:0;overflow:hidden;transition:.45s}
nav ul.open{max-height:460px}nav li{border-top:1px solid var(--line)}nav a{display:block;padding:20px clamp(20px,4vw,56px)}
.hero,.split,.split.rev{grid-template-columns:1fr}
.hero-img{order:-1;min-height:55vh;margin-top:78px}.hero-text{padding:50px 20px 70px}
.tease,.quotes{grid-template-columns:1fr}.masonry{columns:2}
.acc .body{grid-template-columns:1fr}.gallery{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:560px){.masonry{columns:1}.two{grid-template-columns:1fr}.stats{gap:28px}.plist a{grid-template-columns:36px 1fr}.plist .t{grid-column:2}}

body.dark{color-scheme:dark;--body:#cfc4b8;--bg:#0d0b0a;--bg2:#15120f;--ink:#f1e9e0;--muted:#a09386;--accent:#c9a97c;--line:rgba(241,233,224,.14)}
body.dark header{background:rgba(13,11,10,.9)}
body.dark .btn{border-color:var(--accent);color:var(--accent)}
body.dark .btn:hover{background:var(--accent);color:#0d0b0a}
body.dark .btn.light{border-color:var(--ink);color:var(--ink)}body.dark .btn.light:hover{background:var(--ink);color:#0d0b0a}
body.dark .split p,body.dark .pagehead p{color:#cfc4b8}
body.dark .acc li,body.dark .acc .body{color:#cfc4b8}
body.dark .pagehead h1 em,body.dark h2 em{color:var(--accent)}
.rule{width:64px;height:1px;background:var(--accent);margin:26px 0}
.pf-top{display:flex;justify-content:space-between;align-items:end;gap:30px;flex-wrap:wrap}
.pf-top h1{font-size:clamp(3.5rem,10vw,9rem);letter-spacing:.01em;margin-top:14px}
.pf-count{text-align:right;font-family:var(--serif);font-size:clamp(3rem,6vw,5.5rem);line-height:1;color:var(--accent);font-weight:300}
.pf-count small{display:block;font-family:var(--sans);font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted);margin-top:8px}
.pf-bar{position:sticky;top:78px;z-index:20;background:rgba(13,11,10,.92);backdrop-filter:blur(8px);border-block:1px solid var(--line);margin-bottom:40px}
.pf-bar .filters{margin:0;padding:18px 0;justify-content:center;gap:10px 40px}
body.dark .filters button.on,body.dark .filters button:hover{color:var(--accent);border-color:var(--accent)}
.pf-grid{columns:3;column-gap:16px}
.pf-item{display:block;position:relative;margin-bottom:16px;break-inside:avoid;overflow:hidden;background:var(--bg2);cursor:zoom-in}
.pf-item img{width:100%;height:auto;display:block;transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.pf-item img.ld{opacity:1}
.pf-item:hover img{transform:scale(1.04)}
.pf-item::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(13,11,10,.75));opacity:0;transition:.5s;z-index:1}
.pf-item::after{content:"";position:absolute;inset:12px;border:1px solid var(--accent);opacity:0;transform:scale(1.03);transition:.5s;z-index:2;pointer-events:none}
.pf-item:hover::before,.pf-item:hover::after{opacity:1;transform:none}
.pf-cap{position:absolute;left:24px;right:24px;bottom:22px;display:flex;justify-content:space-between;align-items:baseline;z-index:3;opacity:0;transform:translateY(10px);transition:.5s;font-size:.66rem;letter-spacing:.28em;text-transform:uppercase}
.pf-cap b{font-family:var(--serif);font-weight:300;font-size:1.5rem;letter-spacing:.05em;color:var(--accent)}
.pf-item:hover .pf-cap{opacity:1;transform:none}
.pf-item.hide{display:none}
.lb{position:fixed;inset:0;background:rgba(8,7,6,.97);z-index:100;display:none;align-items:center;justify-content:center;flex-direction:column}
.lb.open{display:flex}
.lb img{max-width:92vw;max-height:82vh;width:auto;height:auto;object-fit:contain;box-shadow:0 30px 90px rgba(0,0,0,.6)}
.lb-meta{margin-top:18px;display:flex;gap:30px;font-size:.68rem;letter-spacing:.3em;text-transform:uppercase;color:var(--muted)}
.lb-meta b{color:var(--accent);font-weight:400}
.lb button{position:absolute;background:none;border:0;color:var(--ink);cursor:pointer;font-family:var(--sans);font-weight:200;transition:.3s}
.lb button:hover{color:var(--accent)}
.lb-x{top:22px;right:30px;font-size:2.6rem}
.lb-p,.lb-n{top:50%;transform:translateY(-50%);font-size:3rem;padding:20px}
.lb-p{left:10px}.lb-n{right:10px}
.mc-row{display:grid;grid-template-columns:130px 1.3fr 1fr auto;gap:30px;align-items:center;padding:36px 0;border-bottom:1px solid var(--line)}
.mc-list{border-top:1px solid var(--line)}
.mc-num{font-family:var(--serif);font-size:3.6rem;line-height:1;color:var(--accent);font-weight:300}
.mc-num small{display:block;font-family:var(--sans);font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;color:var(--muted);margin-top:8px}
.mc-row h3{font-size:clamp(1.8rem,3vw,2.6rem)}
.mc-row p{color:#cfc4b8;margin-top:8px;max-width:480px}
.mc-meta{list-style:none;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.mc-meta li{padding:5px 0;border-bottom:1px solid var(--line)}
.mc-meta li:last-child{border:0;color:var(--accent)}
.learn{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.learn div{padding:36px 28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.learn b{font-family:var(--serif);font-weight:300;font-size:2.4rem;color:var(--accent);display:block;line-height:1;margin-bottom:18px}
.learn h3{font-size:1.7rem;margin-bottom:10px}
.learn p{font-size:.9rem;color:#cfc4b8}
@media(max-width:900px){.pf-grid{columns:2}.pf-bar{top:78px}.mc-row{grid-template-columns:90px 1fr;gap:14px 20px}.mc-row .mc-meta,.mc-row .btn-wrap{grid-column:2}.learn{grid-template-columns:1fr 1fr}.pf-cap{opacity:1;transform:none}.pf-item::before{opacity:1}}
@media(max-width:560px){.pf-grid{columns:1}.pf-bar .filters{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;gap:26px}.pf-bar .filters button{white-space:nowrap}.learn{grid-template-columns:1fr}.pf-count{text-align:left}}

.screen-reader-text{position:absolute;left:-9999px}
.notice-sent{background:var(--bg2);border:1px solid var(--accent);padding:16px 20px;margin-bottom:26px;font-size:.9rem}
.hp{position:absolute;left:-9999px}
.entry p{margin-bottom:18px}.entry ul{margin:0 0 18px 20px}
.entry h2,.entry h3{margin:28px 0 14px}
.empty-note{color:var(--muted);padding:40px 0}
.admin-bar header{top:32px}.admin-bar .pf-bar{top:110px}
@media(max-width:782px){.admin-bar header{top:46px}.admin-bar .pf-bar{top:124px}}

option{background:#15120f;color:#f1e9e0}

.stats{flex-wrap:wrap;gap:24px 44px}.stats b{font-size:clamp(1.7rem,3vw,2.3rem)}
