*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#090909;color:#f7f5f0;font-family:"DM Sans",sans-serif}a{color:inherit;text-decoration:none}
header{height:82px;position:absolute;z-index:5;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:0 6%;border-bottom:1px solid #ffffff20}
.brand{font-size:13px;letter-spacing:3px;font-weight:700;white-space:nowrap}.brand span{color:#c9a85e}
nav{display:flex;gap:23px;align-items:center}nav a,footer>a:last-child{font-size:9px;letter-spacing:1.7px;color:#ddd}nav a:hover,footer>a:last-child:hover{color:#c9a85e}.menu{display:none;background:none;border:0;color:white;font-size:23px}
.hero{height:100vh;min-height:650px;position:relative;display:flex;align-items:center;padding:8% 10%;overflow:hidden}
.hero-bg{position:absolute;inset:0;background:url("assets/petra-vocal-portrait.png") center 35%/cover;filter:grayscale(65%)}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080808f2 0%,#080808b8 48%,#08080820 100%),linear-gradient(0deg,#090909 0%,transparent 25%)}
.hero-copy{position:relative;z-index:1}.eyebrow{font-size:10px;letter-spacing:4px;color:#c9a85e;margin:0 0 24px}
.hero h1{font:500 clamp(100px,19vw,235px)/.9 "Playfair Display",serif;letter-spacing:-6px;margin:0;color:#c9a85e}
.tagline{color:#e0dcd3;font-size:14px;letter-spacing:1px;margin:30px 0}
.button{display:inline-flex;gap:25px;align-items:center;padding:16px 23px;background:#c9a85e;color:#090909;font-size:10px;letter-spacing:2px;font-weight:700}.button b{font-size:15px}
.hero-foot{position:absolute;bottom:35px;left:10%;right:10%;font-size:9px;letter-spacing:3px;color:#aaa;display:flex;justify-content:space-between}.hero-foot span{color:#c9a85e}
.section{padding:105px 10%}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.intro-image img{width:100%;display:block;max-height:650px;object-fit:cover}
.intro-text h2,.music h2,.portrait h2,.contact h2,.performances h2,.profile h2,.academic h2,.testimonials h2{font:500 clamp(42px,6vw,76px)/1.05 "Playfair Display",serif;margin:0 0 25px}
.intro-text h2 em,.music h2 em,.portrait h2 em,.contact h2 em,.performances h2 em,.profile h2 em,.academic h2 em,.testimonials h2 em{color:#c9a85e}
.intro-text>p:not(.eyebrow),.portrait-quote>p:not(.eyebrow),.contact>p:not(.eyebrow){font-size:13px;line-height:2;color:#aaa;max-width:470px}.small{font-size:11px!important;color:#777!important}
.music{background:#101010}.music-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:7%;align-items:center;margin-top:45px}.music-feature img{width:100%;display:block;aspect-ratio:1.35;object-fit:cover;filter:saturate(.8)}
.music-caption span,.gold-label{font-size:9px;letter-spacing:3px;color:#c9a85e}.music-caption h3,.vocal-feature h3{font:500 clamp(38px,5vw,62px)/1.05 "Playfair Display",serif;margin:22px 0}.music-caption h3 em{color:#c9a85e}.music-caption p,.vocal-feature>p,.repertoire-close{font-size:12px;color:#999;line-height:1.9}
.vocal-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:9%;align-items:center;margin:75px 0 25px;padding-top:45px;border-top:1px solid #393329}.vocal-feature h3{color:#f3f0e8}.vocal-feature h3{font-size:clamp(35px,4.5vw,55px)}
.portrait{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.portrait-image img{width:100%;display:block;max-height:650px;object-fit:cover}
.performances{background:#101010}.performance-intro,.testimonial-intro{max-width:650px;color:#aaa;font-size:13px;line-height:2;margin:25px 0 35px}
.places{display:flex;flex-wrap:wrap;gap:10px}.places span{border:1px solid #4a4030;padding:12px 16px;color:#e9e4da;font-size:11px;letter-spacing:.7px}
.highlight-events{margin-top:45px;padding:25px;border-left:2px solid #c9a85e;background:#15130f}.highlight-events .eyebrow{margin-bottom:12px}.highlight-events p:last-child{color:#eee;font-size:14px}.highlight-events strong{font-weight:500}
.profile{background:#0b0b0b}.profile-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid #34302a;margin-top:35px}.profile-grid div{padding:23px 5px;border-bottom:1px solid #34302a;color:#ddd;font-size:13px}.profile-grid div:before{content:"✦";color:#c9a85e;margin-right:14px}
.academic-list{margin-top:35px;border-top:1px solid #393329}.academic-list article{display:flex;gap:28px;align-items:flex-start;padding:25px 0;border-bottom:1px solid #393329}.academic-list article>span{color:#c9a85e;font-size:11px;padding-top:5px}.academic-list h3{font:500 20px "Playfair Display",serif;margin:0 0 8px;color:#f5f2eb}.academic-list p{font-size:12px;color:#999;margin:0}
.testimonials{background:#101010}.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:38px}.testimonial-card{padding:30px 30px 28px;border:1px solid #4a4030;background:linear-gradient(135deg,#171510,#0c0c0c);min-height:290px;display:flex;flex-direction:column}.quote-mark{font:60px/1 "Playfair Display",serif;color:#c9a85e}.testimonial-card blockquote{font:italic 21px/1.55 "Playfair Display",serif;color:#eee;margin:8px 0 28px;padding:0}.testimonial-attribution{font-size:9px;letter-spacing:2px;color:#c9a85e;margin-top:auto}.testimonial-event{margin-top:10px;font-size:9px;letter-spacing:2px;color:#8f887b}
.micro-note{font-size:10px;color:#777;line-height:1.8;margin-top:16px}
.contact{text-align:center;background:radial-gradient(ellipse at center,#191610 0%,#090909 65%)}.contact .eyebrow{margin-bottom:25px}.contact>p:not(.eyebrow){margin:0 auto 30px}.contact h2{font-size:clamp(55px,9vw,105px)}
.contact-methods{max-width:620px;margin:38px auto 0;border-top:1px solid #423927}.contact-method{display:grid;grid-template-columns:1fr 2fr auto;gap:15px;align-items:center;text-align:left;padding:20px 4px;border-bottom:1px solid #423927}.contact-method span{font-size:9px;letter-spacing:2px;color:#c9a85e}.contact-method strong{font-size:13px;font-weight:500;color:#f1eee7}.contact-method>b{color:#c9a85e}.contact-method small{grid-column:2;font-size:10px;color:#777;margin-top:-10px}
footer{display:flex;align-items:center;justify-content:space-between;padding:28px 7%;border-top:1px solid #252525}footer p{font-size:9px;letter-spacing:1.5px;color:#666}
@media(max-width:900px){nav{gap:13px}nav a{font-size:8px;letter-spacing:1px}}
@media(max-width:700px){.testimonial-grid{grid-template-columns:1fr}header{height:70px;padding:0 6%}.menu{display:block}nav{display:none;position:absolute;top:70px;left:0;right:0;background:#0b0b0b;padding:25px;flex-direction:column;align-items:center;border-bottom:1px solid #333}nav.open{display:flex}
.hero{padding:100px 7%;min-height:650px}.hero h1{font-size:clamp(85px,23vw,150px);letter-spacing:-3px}.hero-bg{background-position:58% center}.hero-foot{left:7%;right:7%;font-size:8px;letter-spacing:1.5px}
.section{padding:75px 7%}.intro,.music-feature,.portrait{grid-template-columns:1fr;gap:35px}.intro-text{order:-1}.music-caption{padding-top:8px}.vocal-feature{grid-template-columns:1fr;gap:10px;margin-top:45px}.portrait-quote{order:-1}.profile-grid{grid-template-columns:1fr}.contact{padding:85px 7%}.contact-method{grid-template-columns:1fr auto;gap:8px}.contact-method strong,.contact-method small{grid-column:1}.contact-method>b{grid-column:2;grid-row:1/3}footer{padding:25px 6%;gap:15px;flex-wrap:wrap}footer p{order:3;width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.testimonial-event{margin-top:10px;font-size:9px;letter-spacing:2px;color:#8f887b}

/* Five-page website additions */
.page-hero{height:480px;min-height:430px;position:relative;display:flex;align-items:flex-end;padding:150px 10% 70px;overflow:hidden;background:#0b0b0b}
.page-hero:before{content:"";position:absolute;inset:0;background-position:center;background-size:cover;filter:grayscale(75%);opacity:.72}
.page-hero-about:before{background-image:url("assets/orpheya-petra-portrait.png")}
.page-hero-music:before{background-image:url("assets/petra-piano-studio.png")}
.page-hero-performances:before{background-image:url("assets/petra-vocal-portrait.png")}
.page-hero-contact:before{background-image:url("assets/orpheya-petra-portrait.png")}
.page-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080808ed 0%,#080808a8 60%,#08080855 100%),linear-gradient(0deg,#090909 0%,transparent 65%)}
.page-hero-copy{position:relative;z-index:1;max-width:950px}.page-hero h1{font:500 clamp(48px,8vw,92px)/1 "Playfair Display",serif;letter-spacing:-2px;margin:0;color:#f6f3ed}.page-hero h1 em{font-style:normal;color:#c9a85e}.page-hero-copy>p:last-child{color:#d0cbc0;font-size:13px;letter-spacing:1px;margin:20px 0 0}
.home-intro{display:grid;grid-template-columns:1fr .9fr;gap:10%;align-items:center}.home-intro h2,.home-booking h2,.vocal-extended h2{font:500 clamp(42px,6vw,76px)/1.05 "Playfair Display",serif;margin:0 0 25px}.home-intro h2 em,.home-booking h2 em,.vocal-extended h2 em{color:#c9a85e}.home-intro p:not(.eyebrow),.vocal-extended p:not(.eyebrow){font-size:13px;line-height:2;color:#aaa;max-width:570px}.home-intro img{width:100%;max-height:580px;object-fit:cover;display:block}.text-link{display:inline-block;margin-top:18px;font-size:10px;letter-spacing:2px;border-bottom:1px solid #c9a85e;padding-bottom:10px}.text-link b{color:#c9a85e;margin-left:12px}
.home-links{background:#101010}.home-link-grid{border-top:1px solid #393329;margin-top:30px}.home-link-grid a{display:grid;grid-template-columns:60px 1fr auto;align-items:center;padding:24px 5px;border-bottom:1px solid #393329}.home-link-grid span{font-size:10px;color:#c9a85e}.home-link-grid strong{font:500 22px "Playfair Display",serif}.home-link-grid b{font-size:18px;color:#c9a85e}.home-link-grid a:hover strong{color:#c9a85e}.home-booking{text-align:center;background:radial-gradient(ellipse at center,#191610 0%,#090909 65%)}.home-booking h2{font-size:clamp(50px,8vw,88px)}
.vocal-extended{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center;margin-top:75px;padding-top:60px;border-top:1px solid #393329}.vocal-extended img{width:100%;max-height:570px;object-fit:cover;display:block}.vocal-extended h2{font-size:clamp(40px,5vw,64px);margin-top:18px}.booking-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:35px auto;max-width:720px}.booking-tags span{border:1px solid #51452e;color:#e7e0d3;padding:11px 15px;font-size:9px;letter-spacing:2px}
@media(max-width:900px){.page-hero{padding-left:7%;padding-right:7%}}
@media(max-width:700px){.page-hero{height:400px;min-height:380px;padding:130px 7% 55px}.home-intro,.vocal-extended{grid-template-columns:1fr;gap:30px}.home-link-grid a{grid-template-columns:38px 1fr auto}.home-link-grid strong{font-size:18px}.vocal-extended img{max-height:460px}}
