*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#173c3d;background:#fff}a{color:inherit;text-decoration:none}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);border-bottom:1px solid #e4ecea;position:sticky;top:0;background:rgba(255,255,255,.96);z-index:20}.brand{display:flex;align-items:center;gap:10px;font-size:22px;font-weight:800;letter-spacing:-.8px}.brand small{font-size:9px;margin-left:4px;letter-spacing:1px;color:#607a79}.mark{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#1d6a68;color:#fff;font-family:Georgia,serif;font-style:italic}.topbar nav{display:flex;gap:26px;align-items:center;font-size:14px;font-weight:650}.button{border:0;background:#1b6967;color:white;border-radius:8px;padding:15px 22px;font-weight:750;cursor:pointer;box-shadow:0 6px 18px rgba(27,105,103,.14)}.button.small{padding:11px 16px}.menu{display:none;background:none;border:0;font-size:24px}.hero{min-height:610px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(236,247,244,.98),rgba(236,247,244,.86),rgba(236,247,244,.45)),radial-gradient(circle at 82% 42%,#a8d1c9 0 12%,transparent 13%),linear-gradient(130deg,#eaf6f3,#cce3de)}.hero-inner{width:min(1180px,90%);margin:auto}.eyebrow{font-size:12px;font-weight:850;letter-spacing:2px;color:#2d817c}.hero h1,.section h2,.founder h2,.join h2{font-family:Georgia,serif;font-weight:500;letter-spacing:-1.8px}.hero h1{font-size:64px;line-height:1.02;margin:14px 0}.hero h1 em{color:#2a817b;font-weight:400}.hero p{font-size:19px;line-height:1.6;max-width:650px;color:#4d6665}.search{display:flex;background:white;padding:10px;border-radius:10px;max-width:900px;box-shadow:0 12px 35px rgba(31,67,65,.12);margin-top:28px}.search label{flex:1;padding:4px 14px;border-right:1px solid #e4ecea}.search label span,.builder label{display:block;font-size:11px;font-weight:850;letter-spacing:.7px}.search input,.search select,.builder input,.builder select{width:100%;border:0;outline:0;padding:8px 0;font-size:14px;background:transparent;color:#526866}.trust{display:flex;gap:30px;margin-top:20px;font-size:13px;color:#496a68}.section{padding:90px max(5vw,24px);max-width:1320px;margin:auto}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px}.section-head h2,.how h2{font-size:38px;margin:8px 0}.section-head p{color:#667d7b}.section-head>a{color:#287d78;font-weight:750}.treatment-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.treatment-grid article{padding:28px;border:1px solid #dce9e6;border-radius:12px;background:#fbfdfc}.treatment-grid .icon{font-size:28px}.treatment-grid h3{margin-bottom:8px}.treatment-grid p{font-size:14px;color:#68807e}.soft{max-width:none;background:#f4f9f7}.soft>*{max-width:1180px;margin-left:auto;margin-right:auto}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.profile{background:white;border-radius:13px;overflow:hidden;box-shadow:0 8px 25px rgba(25,60,58,.08)}.photo{height:220px;position:relative;background-size:cover;background-position:center}.p1{background:linear-gradient(135deg,#b5d7cf,#557f79)}.p2{background:linear-gradient(135deg,#d7c9b5,#57726e)}.p3{background:linear-gradient(135deg,#d3dfd9,#6c8c84)}.photo:after{content:"";position:absolute;inset:45px 32%;border-radius:50% 50% 42% 42%;background:rgba(255,255,255,.45)}.photo span{position:absolute;top:12px;left:12px;z-index:2;background:white;padding:6px 9px;border-radius:5px;font-size:9px;font-weight:900;letter-spacing:1px}.profile-body{padding:20px}.verified{font-size:11px;color:#2b827c;font-weight:800}.profile h3{font-size:21px;margin:7px 0}.loc{font-size:13px;color:#738684}.tags{display:flex;gap:6px;flex-wrap:wrap}.tags span{background:#eaf5f2;padding:5px 8px;border-radius:5px;font-size:10px}.price{border-top:1px solid #edf1f0;margin-top:15px;padding-top:15px;font-weight:800}.price a{float:right;color:#287d78;font-size:12px}.how{text-align:center}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}.steps b{display:grid;place-items:center;margin:auto;width:48px;height:48px;border-radius:50%;background:#dff0ec;color:#277a75}.steps p{color:#6b807e;font-size:14px}.founder{padding:85px max(6vw,30px);background:#164f50;color:white;display:grid;grid-template-columns:1fr 1fr;gap:80px}.founder h2{font-size:45px}.light{color:#9dd4cc}.story{font-size:16px;line-height:1.75;color:#dcebea}.story strong{color:white}.join{padding:90px max(7vw,30px);background:#eaf5f2;display:grid;grid-template-columns:1fr 430px;gap:80px;align-items:center}.join h2{font-size:45px;margin:10px 0}.join p{line-height:1.7;color:#54706e}.offer{margin-top:25px;font-size:11px;letter-spacing:1px}.offer strong,.offer small{display:block;letter-spacing:0}.offer strong{font-family:Georgia,serif;font-size:27px;margin:5px 0;color:#1e6c68}.builder{background:white;padding:28px;border-radius:14px;box-shadow:0 15px 35px rgba(27,71,68,.12)}.mini-head{display:flex;justify-content:space-between;font-weight:800;font-size:13px}.progress{height:5px;background:#e5efed;border-radius:4px;margin:15px 0 25px}.progress i{display:block;width:20%;height:100%;background:#287d78;border-radius:4px}.builder label{margin:14px 0;color:#3f5d5b}.builder input,.builder select{border:1px solid #dce7e5;border-radius:7px;padding:12px;margin-top:6px}.wide{width:100%;margin-top:10px}.tiny{font-size:11px;color:#83918f}.dashboard{text-align:center}.dash{display:grid;grid-template-columns:230px 1fr;max-width:850px;margin:35px auto 0;text-align:left;border:1px solid #dce8e5;border-radius:12px;overflow:hidden;box-shadow:0 12px 30px rgba(24,65,62,.07)}.dash aside{background:#f0f7f5;padding:25px;display:flex;flex-direction:column;gap:13px}.avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#1d6a68;color:white;font-weight:900}.dash aside small{font-size:10px}.dash aside i{color:#a16e16}.dash aside a{font-size:12px;padding-top:8px}.dash-main{padding:28px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stats div{border:1px solid #e1e9e7;padding:15px;border-radius:8px}.stats small,.stats strong{display:block}.notice{margin-top:20px;background:#f0f7f5;padding:20px;border-radius:8px}.notice p{font-size:13px;color:#617875}footer{padding:55px max(5vw,24px);text-align:center;background:#0f3e3f;color:#dbe9e7}.footerbrand{justify-content:center;color:white}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,130px);background:#123f40;color:#fff;padding:14px 20px;border-radius:8px;transition:.3s;z-index:50;font-size:13px}.toast.show{transform:translate(-50%,0)}
@media(max-width:800px){.topbar nav{display:none}.menu{display:block}.hero{min-height:650px}.hero h1{font-size:47px}.search{display:block}.search label{border:0;border-bottom:1px solid #e5eceb;margin-bottom:7px}.search .button{width:100%;margin-top:8px}.trust{flex-direction:column;gap:8px}.treatment-grid,.cards,.steps{grid-template-columns:1fr 1fr}.founder,.join{grid-template-columns:1fr;gap:30px}.dash{grid-template-columns:1fr}.dash aside{display:none}}@media(max-width:520px){.treatment-grid,.cards,.steps{grid-template-columns:1fr}.hero h1{font-size:41px}.section{padding:65px 22px}.section-head{align-items:start;flex-direction:column}.founder h2,.join h2{font-size:37px}.stats{grid-template-columns:1fr}.join{padding:65px 22px}}
/* v0.2 search + profile */
.results-hero{padding:70px max(6vw,28px) 45px;background:#eaf5f2}.results-hero>div,.results-hero form{max-width:1180px;margin-left:auto;margin-right:auto}.results-hero h1{font:500 44px Georgia,serif;margin:10px 0}.results-hero h1 em{color:#287d78}.results-search{margin-top:25px}.results-layout{max-width:1180px;margin:50px auto 90px;padding:0 24px;display:grid;grid-template-columns:240px 1fr;gap:35px}.filters{border:1px solid #dfe9e7;border-radius:12px;padding:22px;height:max-content}.filters h3{margin-top:0}.filters label{display:block;font-size:12px;font-weight:800;margin:18px 0}.filters select,.result-top select{width:100%;margin-top:7px;padding:11px;border:1px solid #dbe5e3;border-radius:7px;background:white}.result-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.result-top small{display:block;color:#718481}.result-top select{width:auto}.result-card{display:grid;grid-template-columns:245px 1fr;border:1px solid #dfe9e7;border-radius:13px;overflow:hidden;margin-bottom:18px;background:white}.result-photo{min-height:250px;position:relative}.rp1{background:linear-gradient(135deg,#a9d2c8,#4f7c75)}.rp2{background:linear-gradient(135deg,#d4c5ae,#536f6b)}.rp3{background:linear-gradient(135deg,#d7e1dc,#719087)}.result-photo:after,.gallery-main:after,.gallery-small:after{content:"";position:absolute;inset:45px 32%;border-radius:50% 50% 42% 42%;background:rgba(255,255,255,.42)}.result-photo span{position:absolute;z-index:2;top:12px;left:12px;background:white;padding:6px 8px;border-radius:5px;font-size:9px;font-weight:900}.result-copy{padding:24px}.result-copy h2{font:500 28px Georgia,serif;margin:5px 0}.result-copy>p{color:#607775;line-height:1.55}.result-bottom{border-top:1px solid #e8eeed;margin-top:18px;padding-top:17px;display:flex;justify-content:space-between;align-items:center}.preview-banner{text-align:center;background:#dff0ec;padding:8px;font-size:10px;font-weight:900;letter-spacing:1.3px;color:#1f6763}.profile-page{max-width:1180px;margin:35px auto 90px;padding:0 24px}.back{font-size:13px;color:#367b77}.profile-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:45px;margin-top:25px}.profile-gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:10px;height:470px}.gallery-main,.gallery-small{position:relative;overflow:hidden;border-radius:12px;background:linear-gradient(135deg,#b3d5cd,#527c75)}.gallery-main{grid-row:1/3}.g1{background:linear-gradient(135deg,#d7e6e2,#6e958e)}.g2{background:linear-gradient(135deg,#dfd3c0,#748e88)}.profile-intro{padding:25px 0}.profile-intro h1{font:500 50px Georgia,serif;margin:7px 0}.profile-location{color:#5f7674}.lead{font-size:17px;line-height:1.65;color:#536c6a}.contact-box{margin-top:28px;padding:20px;background:#f0f7f5;border-radius:10px;display:flex;justify-content:space-between;align-items:center}.contact-box small,.contact-box strong{display:block}.contact-box strong{font:500 27px Georgia,serif}.profile-columns{display:grid;grid-template-columns:1fr 330px;gap:55px;margin-top:55px}.profile-content h2{font:500 30px Georgia,serif;margin-top:35px}.profile-content>p{line-height:1.8;color:#526d6a}.price-list{border-top:1px solid #dfe8e6}.price-list>div{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #dfe8e6}.price-list small,.price-list b{display:block}.price-list small{margin-top:5px;color:#70817f}.location-box{background:#f2f7f5;padding:22px;border-radius:10px}.location-box p{color:#5c7371}.location-box small{color:#7a8b89}.side-card{border:1px solid #dce7e5;border-radius:12px;padding:22px;margin-bottom:18px;box-shadow:0 8px 25px rgba(25,60,58,.05)}.side-card p{font-size:13px;line-height:1.55;color:#607573}.side-card>small{display:block;margin-top:15px;color:#788987}.outline{border:1px solid #1b6967;background:white;color:#1b6967;border-radius:8px;padding:13px 18px;font-weight:750;margin-top:9px;cursor:pointer}.safety{background:#f5faf8}
@media(max-width:800px){.results-layout,.profile-hero,.profile-columns{grid-template-columns:1fr}.filters{display:none}.result-card{grid-template-columns:1fr}.result-photo{min-height:220px}.profile-gallery{height:330px}.profile-intro h1{font-size:42px}.profile-side{grid-row:auto}.results-search{display:block}}@media(max-width:520px){.result-top{align-items:start;gap:10px}.result-card{display:block}.profile-gallery{grid-template-columns:1fr;height:300px}.gallery-main{grid-row:auto}.gallery-small{display:none}.contact-box{align-items:start;gap:15px;flex-direction:column}.price-list>div{gap:15px;flex-direction:column}}

/* v0.3 visual photography pass */
.hero-photo{position:relative;background:
linear-gradient(90deg,rgba(236,247,244,.98) 0%,rgba(236,247,244,.93) 42%,rgba(236,247,244,.28) 70%,rgba(236,247,244,.08) 100%),
url("assets/hero.jpg") center right/cover no-repeat}
.hero-photo .hero-inner{position:relative;z-index:1}
.real-photo:after,.result-photo:after,.gallery-main:after,.gallery-small:after{display:none}
.p1{background:url("assets/sarah.jpg") center 25%/cover no-repeat}
.p2{background:url("assets/sports.jpg") center/cover no-repeat}
.p3{background:url("assets/relax.jpg") center/cover no-repeat}
.rp1{background:url("assets/sarah.jpg") center 25%/cover no-repeat}
.rp2{background:url("assets/sports.jpg") center/cover no-repeat}
.rp3{background:url("assets/relax.jpg") center/cover no-repeat}
.gallery-main{background:url("assets/sarah.jpg") center/cover no-repeat}
.g1{background:url("assets/clinic.jpg") center/cover no-repeat}
.g2{background:url("assets/detail.jpg") center/cover no-repeat}
.photo span,.result-photo span{background:rgba(255,255,255,.92);backdrop-filter:blur(4px)}
.profile,.result-card,.builder,.side-card{transition:transform .2s ease,box-shadow .2s ease}
.profile:hover,.result-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(25,60,58,.12)}
@media(max-width:800px){.hero-photo{background:linear-gradient(rgba(236,247,244,.91),rgba(236,247,244,.91)),url("assets/hero.jpg") center/cover no-repeat}}
