:root{--pink:#e12b74;--lilac:#bf80a8;--pale:#e7d1e2;--paper:#fff3f7;--text:#7a7a7a;--header:#ce9fc3;--footer:#dab3d1}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;overflow-x:hidden;background:var(--paper);color:#333;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.5}
a{color:inherit;text-decoration:none}
.site-header{height:100px;background:var(--header);display:flex;align-items:center;justify-content:space-between;padding:0 20px 0 10px;position:relative;z-index:20}
.brand{display:flex;align-items:center;gap:0}
.brand img{display:block;width:200px;height:auto;max-height:82px;object-fit:contain}
.brand-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.main-nav a{font-family:Rufina,serif;font-size:22px;font-weight:400;text-transform:uppercase;color:#fff;padding:10px 0}
.menu-button{display:none;border:0;background:transparent;width:42px;height:42px;padding:9px}
.menu-button span{display:block;height:2px;background:#fff;margin:6px 0}
.hero{height:79vh;min-height:0;position:relative;overflow:hidden;background:#fff}
.slide{position:absolute;inset:0;background-position:center;background-size:cover;opacity:0;transition:opacity .5s ease}
.slide.active{opacity:1}
.hero-overlay{position:absolute;inset:0;background:transparent;z-index:1;pointer-events:none}
.hero-link{position:absolute;inset:0;z-index:2}
.arrow{position:absolute;z-index:4;top:50%;transform:translateY(-50%);border:0;background:transparent;color:hsl(0 0% 93% / .9);width:25px;height:25px;padding:0;cursor:pointer}
.arrow svg{display:block;width:100%;height:100%;fill:currentColor}.prev{left:10px}.next{right:10px}
.dots{position:absolute;z-index:5;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:8px}
.dots button{border:0;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.75);padding:0}
.dots button.active{background:var(--pink)}
.mountains{position:absolute;left:0;width:100%;overflow:hidden;pointer-events:none}
.mountains:after{content:"";position:absolute;inset:0;background-repeat:no-repeat;background-position:center;background-size:100% 100%}
.hero .mountains.top{top:0;height:36px;z-index:6}.hero .mountains.top:after{background-image:url('../assets/mountains-header.svg')}
.hero .mountains.bottom{bottom:0;height:44px;z-index:6}.hero .mountains.bottom:after{background-image:url('../assets/mountains-white.svg');transform:rotate(180deg)}
.intro{position:relative;text-align:center;background:var(--paper);margin-top:3em;padding:0 0 3em}
.intro p{font-family:Rufina,serif;color:var(--lilac);font-size:2.3em;line-height:1.5;margin:0 0 .9rem}
.intro h1{font-family:Rufina,serif;font-weight:400;color:#6c6c6c;font-size:2em;line-height:1;margin:0}
.intro h1 a{color:inherit}
.intro p,.intro h1{position:relative;z-index:3}
.intro .mountains.bottom{display:none}
.profiles{position:relative;display:flex;justify-content:center;align-items:center;margin:0;padding:10px 0}
.profiles>.mountains.top{top:-1px;height:10vw;display:block;z-index:0}.profiles>.mountains.top:after{background-image:url('../assets/mountains-pale.svg');transform:scaleX(-1)}
.profile-grid{position:relative;z-index:1;width:calc(100% - 20px);max-width:1140px;display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin:0 auto}
.profile-card{width:23.5%;min-height:0;border:1px solid #ffc5de;border-radius:9px;background:#fff;text-align:center;position:relative;overflow:visible;padding:10px 10px 20px}
.portrait{display:block;width:100%;height:auto;border-radius:8px}
.available{position:absolute;left:-7px;top:-8px;width:74px;height:43px;object-fit:contain;z-index:2}
.profile-card h2{font-family:Rufina,serif;font-size:2em;font-weight:400;text-transform:uppercase;color:var(--pink);line-height:1;margin:-47px 0 19px;position:relative;padding:5px 5px 0;background:rgba(255,243,247,.63);text-shadow:0 0 10px rgba(255,255,255,.99)}
.profile-card p{font-family:Rufina,serif;font-size:16px;line-height:1.5;margin:10px 0 0;color:var(--text)}
.profile-card strong{display:block;font-family:Rufina,serif;font-size:16px;line-height:1.5;color:#333;margin:0;font-weight:700}
.profile-link{display:none}
.screening{margin:3em 0 0;display:flex;align-items:center;gap:10px;padding:94px 10px 16px}
.screening .line{height:1px;background:#a6989e;flex:1}
.screening p{font-family:Rufina,serif;text-transform:uppercase;color:#a6989e;font-size:1.5em;line-height:1;text-align:center;white-space:nowrap;margin:0}
footer{position:relative;text-align:center;color:#fff;font-family:Rufina,serif}
.footer-transition{position:relative;height:20px;margin-top:3em;padding:0 10px}
.footer-wave{position:absolute;bottom:-1px;left:50%;width:calc(100% + 1.3px);height:36px;overflow:hidden;transform:translateX(-50%) rotate(180deg);transform-origin:center;background:url('../assets/mountains-footer.svg') center/100% 100% no-repeat}
.footer-content{position:relative;display:flex;flex-direction:column;align-items:center;background:var(--footer);padding:10px}
footer .tagline{font-size:1.3em;font-style:italic;color:#fff3f7;margin:0 0 .9rem}
footer p,.footer-support{font-size:1em;color:#f4c9da}
footer a{color:#fff3f7;text-decoration:underline}
.mobile-only{display:none}
@media(min-width:768px){.slide{right:5%;left:5%}.prev{left:calc(5% + 10px)}.next{right:calc(5% + 10px)}}
@media(max-width:1024px){.profile-card{width:40%}.hero{height:70vh}.dots{bottom:28px;z-index:7}}
@media(max-width:767px){
  .site-header{height:152px;margin:1px;padding:0;flex-direction:column;justify-content:flex-start}
  .brand{height:82px;justify-content:center}.brand img{width:220px;max-height:70px}
  .menu-button{display:block;position:absolute;top:84px;width:55px;height:55px;padding:10px;background:rgba(180,123,164,.42)}
  .menu-button span{height:4px;border-radius:3px}
  .main-nav{display:none;position:absolute;top:145px;right:8px;left:8px;background:#fff3f7a8;text-align:center;padding:0;border-radius:21px;box-shadow:none}
  .main-nav.open{display:block}.main-nav a{display:block;color:var(--pink);font-size:1.6em;font-weight:700;padding:12px}
  .hero{height:50vh}.arrow{font-size:25px;padding:10px}.prev{left:5px}.next{right:5px}
  .intro{margin-top:3em;padding-bottom:3em}.intro p{font-size:2.1em;line-height:1.5;padding:0 15px}.intro h1{font-size:2em}
  .profiles{display:block;padding:10px 0}.profile-grid{display:flex;gap:20px;width:100%;padding:0 10px}
  .profile-card{width:100%;max-width:343px;margin:0 auto;padding:10px 10px 20px}.profile-card h2{font-size:2.3em}
  .screening{margin:3em auto 0;padding:5em 20px 0;gap:10px}.screening p{font-size:1.3em;white-space:normal}.mobile-only{display:block}
}
