:root{--teal:#207272;--rose:#d94f70;--sun:#f2b134;--bg:#88b2c2;--ink:#15282a;--mut:hsl(184, 58%, 22%);--font-body: "Sora", system-ui, sans-serif;--font-quote: "Playfair Display", Georgia, serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:var(--bg);color:var(--ink);line-height:1.6}a{color:inherit}main{padding:40px 5vw;max-width:1180px;margin:auto}h2{font-size:30px;margin:0 0 16px}nav{display:flex;align-items:center;gap:20px;padding:14px 5vw;background:var(--teal);color:#f7f9fa;position:sticky;top:0;z-index:5;flex-wrap:wrap}nav b{font-size:22px;margin-right:auto}nav a{cursor:pointer;text-decoration:none;opacity:.85}nav a:hover,nav a:focus-visible{opacity:1;text-decoration:underline}.btn{background:var(--rose);color:#fff;border:0;padding:11px 22px;border-radius:999px;font:600 15px Sora;cursor:pointer;transition:filter .2s,transform .1s}.btn:hover{filter:brightness(1.08)}.btn:active{transform:scale(.97)}.btn.alt{background:var(--sun);color:var(--teal)}.btn.ghost{background:none;border:2px solid var(--teal);color:var(--teal)}.btn:disabled{opacity:.6;cursor:wait}.cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--sun);outline-offset:2px}.hero{position:relative;height:340px;background:var(--teal);color:#fff;overflow:hidden}.slide{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:center;padding:0 8vw;opacity:0;transition:opacity 1s;background-size:cover}.slide.on{opacity:1}.slide h1{font-size:clamp(24px,3.6vw,40px);line-height:1.1;margin:0 0 10px;max-width:16ch}.slide p{font-size:16px;max-width:48ch;margin:0 0 14px}.slide small{opacity:.8}.slide .btn{padding:9px 18px;font-size:14px}.dots{position:absolute;bottom:20px;left:8vw;display:flex;gap:8px}.dots button{width:12px;height:12px;border-radius:50%;border:0;background:#fff6;cursor:pointer}.dots .on{background:var(--sun)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.card{background:#fcfeff;border-radius:18px;overflow:hidden;box-shadow:0 2px 14px #0f3d3e1a;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0f3d3e26}.card .av{aspect-ratio:4 / 5;display:grid;place-items:center;font-size:56px;font-weight:800;color:#fff;overflow:hidden}.card .av img{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block}.card .in{padding:16px}.card h3{margin:0}.tag{display:inline-block;background:#e6efef;border-radius:99px;padding:2px 10px;font-size:13px;margin:6px 6px 6px 0}.box{background:#fff;padding:28px;border-radius:18px;max-width:560px;margin:auto;box-shadow:0 2px 14px #0f3d3e1a}label{display:block;font-size:14px;font-weight:600;margin:12px 0 4px}input,select,textarea{width:100%;padding:11px;border:1.5px solid #a3d0d3;border-radius:10px;font:inherit;background:#fff}.row{display:flex;gap:12px}.row>*{flex:1}.filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.filters>*{width:auto;flex:1;min-width:130px}.err{color:#b3213f;font-weight:600}.photo-pick{display:flex;align-items:center;gap:16px;margin:6px 0}.photo-pick .pv{width:84px;height:84px;border-radius:50%;background:#e6efef;overflow:hidden;display:grid;place-items:center;font-size:12px;color:var(--mut);flex:none}.photo-pick .pv img{width:100%;height:100%;object-fit:cover}.photo-pick input{border:0;padding:0}.file-btn{display:inline-block;background:var(--teal);color:#fff;padding:9px 18px;border-radius:999px;cursor:pointer;font-weight:600;font-size:14px;margin:0}.file-btn input{display:none}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000a;display:grid;place-items:center;z-index:10;padding:16px}.modal .box{max-width:440px;max-height:85vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.plans{display:grid;gap:10px;margin:14px 0}.plan{border:2px solid #c8d5d6;border-radius:12px;padding:12px;cursor:pointer;display:flex;justify-content:space-between}.plan.sel{border-color:var(--rose);background:#fdeff3}.stars{display:flex;gap:4px}.stars button{background:none;border:0;font-size:30px;color:#c8d5d6;cursor:pointer;padding:0 2px}.stars button.on{color:var(--sun)}.rv-stars{color:var(--sun);font-size:20px;letter-spacing:2px}.quotes{padding:0}.quotes h2{text-align:center;padding:40px 5vw 0;max-width:1180px;margin:0 auto}.qlist{display:flex;flex-direction:column}.qrow{margin:0;width:100%;padding:40px 8vw 40px 0vw;display:flex;flex-direction:row;align-items:center;gap:48px;text-align:left}.qrow:nth-child(2n){flex-direction:row-reverse;padding:40px 0vw 40px 8vw}.qphoto{position:relative;flex:0 0 380px;aspect-ratio:4 / 3;border-radius:18px;overflow:hidden;display:grid;place-items:center;color:#fffc;font-size:48px;box-shadow:0 8px 24px #0f3d3e26}.qphoto img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}.qtext{flex:1;max-width:60ch}.qtext blockquote{margin:0;font-family:var(--font-quote);font-size:24px;line-height:1.5;font-style:italic;font-weight:500;color:#1c1c1c}.qtext figcaption{margin-top:14px;font-size:15px;color:var(--mut)}.qtext figcaption:before{content:"- "}@media (max-width: 700px){.qrow,.qrow:nth-child(2n){flex-direction:column;text-align:center;padding:40px 6vw}.qphoto{flex:none;width:100%;max-width:420px}}footer{background:var(--teal);color:#fff;text-align:center;padding:26px;margin-top:60px}details{background:#fff;border-radius:12px;padding:14px 18px;margin-bottom:10px}@media (max-width: 560px){.qlist{grid-template-columns:1fr}.qrow{flex-direction:column}.qphoto{flex:none;width:100%;height:220px}}@media (prefers-reduced-motion: reduce){.slide,.card,.qrow,.btn{transition:none}.card:hover,.qrow:hover{transform:none}}.auth-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0 4px;font-size:14px}.check{display:flex;align-items:center;gap:8px;margin:0;font-weight:400;cursor:pointer}.check input{width:auto}.or{display:flex;align-items:center;gap:12px;margin:18px 0 6px;color:var(--mut);font-size:13px}.or:before,.or:after{content:"";flex:1;height:1px;background:#c8d5d6}.tabs{display:flex;gap:6px;background:#e6efef;border-radius:999px;padding:4px;margin:14px 0 4px}.tabs button{flex:1;border:0;background:none;padding:8px;border-radius:999px;font:600 14px Sora;color:var(--teal);cursor:pointer}.tabs button.on{background:#fff;box-shadow:0 1px 6px #0f3d3e26}.phone-row{display:flex;gap:10px}.phone-row select{flex:0 0 170px;width:auto}.code-input{text-align:center;font-size:26px;letter-spacing:8px}.chat{display:grid;grid-template-columns:300px 1fr;background:#fff;border-radius:18px;box-shadow:0 2px 14px #0f3d3e1a;overflow:hidden;height:70vh;min-height:420px}.chat-list{border-right:1px solid #e3ebeb;overflow-y:auto}.convo{display:flex;gap:12px;align-items:center;width:100%;padding:12px 14px;border:0;border-bottom:1px solid #f0f4f4;background:none;text-align:left;cursor:pointer;font:inherit;color:inherit}.convo:hover,.convo.on{background:#eef5f5}.avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;display:grid;place-items:center;color:#fff;font-weight:800;flex:none}.avatar img{width:100%;height:100%;object-fit:cover}.convo .meta{min-width:0;flex:1}.convo .meta b,.convo .meta small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.badge{background:var(--rose);color:#fff;border-radius:999px;font-size:12px;padding:1px 8px}.chat-main{display:flex;flex-direction:column;min-width:0;min-height:0}.chat-head{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #e3ebeb}.chat-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:8px;background:var(--bg)}.bubble{max-width:75%;padding:9px 14px;border-radius:16px;background:#fff;align-self:flex-start;overflow-wrap:anywhere}.bubble.me{background:var(--teal);color:#fff;align-self:flex-end}.bubble small{display:block;opacity:.65;font-size:11px;margin-top:2px}.chat-form{display:flex;gap:10px;padding:12px;border-top:1px solid #e3ebeb}.chat-form input{flex:1}.chat-empty{margin:auto;color:var(--mut);text-align:center;padding:24px}.dot{width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:6px;background:#c8d5d6}.dot.online{background:#2e9e5b}.back-btn{display:none;padding:6px 14px;font-size:13px}@media (max-width: 700px){.chat{grid-template-columns:1fr}.chat.has-active .chat-list{display:none}.chat:not(.has-active) .chat-main{display:none}.back-btn{display:inline-block}}.social{display:flex;gap:16px;justify-content:center;margin-bottom:10px}.social a{color:#fff;opacity:.85;display:inline-flex}.social a:hover,.social a:focus-visible{opacity:1}.follow{text-align:center;margin-top:32px}.follow h3{margin-bottom:12px}.social-lg a{color:var(--teal)}.social-lg a:hover{color:var(--rose)}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;max-width:1000px;margin:-34px auto 0;padding:0 5vw 10px;text-align:center;position:relative;z-index:2}.features>div{background:#fff;border-radius:16px;padding:26px 20px;box-shadow:0 6px 22px #0f3d3e26}.fico{font-size:30px;display:block;margin-bottom:10px}.features h3{margin:0 0 8px;font-size:17px}.features p{margin:0;font-size:14px;color:var(--mut);line-height:1.5}@media (max-width: 640px){.features{margin-top:16px}}.foot-copy{text-align:center;opacity:.75;font-size:13px;max-width:60ch;margin:0 auto}.content-row{display:flex;align-items:center;gap:48px;max-width:1100px;margin:60px auto;padding:0 6vw}.content-row.quote-row{max-width:none;width:100%;margin:0;padding:40px 8vw 40px 3vw}.content-row.quote-row.rev{flex-direction:row-reverse;padding:40px 0vw 40px 8vw}@media (max-width: 700px){.content-row.quote-row,.content-row.quote-row.rev{flex-direction:column;padding:40px 6vw}}.content-row.rev{flex-direction:row-reverse}.content-photo{flex:1;aspect-ratio:4/3;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #0f3d3e26}.content-photo img{width:100%;height:100%;object-fit:cover}.content-photo-fallback{width:100%;height:100%;background:linear-gradient(135deg,var(--teal),#1f4e79)}.content-text{flex:1}.content-text h2{margin:0 0 14px;font-size:28px}.content-text p{color:var(--mut);font-size:16px;line-height:1.7;max-width:48ch}@media (max-width: 700px){.content-row,.content-row.rev{flex-direction:column;text-align:center}.content-text p{margin:0 auto}}.foot-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:48px;text-align:left;margin-bottom:20px}.foot-grid h4{margin:0 0 10px;font-size:14px;text-transform:uppercase;letter-spacing:.06em;opacity:.7}.foot-grid a{display:block;margin:6px 0;cursor:pointer;opacity:.85;text-decoration:none}.foot-grid a:hover{opacity:1;text-decoration:underline}.foot-copy{text-align:center;opacity:.75;font-size:13px;margin:0 auto;max-width:60ch}.quote-row .content-text blockquote{margin:0;font-size:22px;line-height:1.5;font-style:normal;color:var(--ink)}.quote-row .quote-author{margin-top:14px;font-size:15px;color:var(--mut)}.text-quotes{max-width:700px;margin:60px auto;padding:0 6vw;text-align:center}.text-quotes h2{margin-bottom:20px}.text-quotes blockquote{margin:0 0 36px;font-size:20px;font-style:normal;line-height:1.6;color:var(--ink)}.text-quotes .quote-author-inline{display:block;margin-top:10px;font-size:14px;font-style:normal;color:var(--mut)}.quotes2{width:100%;max-width:none;margin:0;padding:0;background-color:#d7dbe0;color:#fff}.quotes2 h2{text-align:center;padding:56px 5vw 0;margin:0 0 10px;color:#111}.quotes2-list{display:flex;flex-direction:column}.quotes2-item{margin:0;width:100%;padding:40px 8vw 40px 3vw;display:flex;flex-direction:row;align-items:center;gap:48px}.quotes2-item:nth-child(2n){flex-direction:row-reverse;padding:40px 0vw 40px 8vw}.quotes2-photo{position:relative;flex:0 0 380px;aspect-ratio:4 / 3;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px #0003}.quotes2-photo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}.quotes2-text{flex:1;display:flex;flex-direction:column;justify-content:center;text-align:left;color:#fff}.quotes2-text blockquote{margin:0;font-family:var(--font-quote);font-size:24px;line-height:1.5;font-style:italic;font-weight:500;color:#1c1c1c}.quotes2-text figcaption{margin-top:14px;font-size:14px;color:#ffffffb3}@media (max-width: 700px){.quotes2-item{flex-direction:column;padding:40px 5vw}.quotes2-photo{flex:none;width:100%;height:260px}.quotes2-text{text-align:center}}.qtext blockquote,.quote-row .content-text blockquote,.text-quotes blockquote,.quotes2-text blockquote{font-family:var(--font-quote);font-style:italic;font-weight:500}.pay-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:14px 0}.pay-method{position:relative;border:2px solid #c8d5d6;background:#fff;border-radius:12px;padding:12px 8px;font:600 14px Sora;color:var(--ink);cursor:pointer}.pay-method.on{border-color:var(--rose);background:#fdeff3}.pay-method.soon{opacity:.55;cursor:not-allowed}.pay-method.soon:hover{opacity:.55}.soon-badge{display:block;font-size:10px;font-weight:400;color:var(--mut);margin-top:2px}.manual-pay h3{margin:10px 0 8px;font-size:18px}.manual-steps{margin:0 0 14px;padding-left:20px}.manual-steps li{margin-bottom:6px}.email-locked{display:flex;align-items:center;gap:10px}.email-locked input{flex:1;background:#f0f4f4;color:var(--mut)}.verified-tag{background:#dff3e6;color:#1e7a42}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px;margin:8px 0}.gallery-thumb{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#e6efef}.gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.gallery-remove{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:0;background:#000a;color:#fff;cursor:pointer;font-size:14px;line-height:1}.gallery-add{aspect-ratio:1;border-radius:12px;border:2px dashed #c8d5d6;display:grid;place-items:center;text-align:center;font-size:13px;color:var(--mut);cursor:pointer;padding:6px}.gallery-add input{display:none}.profile-detail{max-width:900px;margin:0 auto}.pd-main{display:flex;gap:32px;background:#fff;border-radius:18px;padding:28px;box-shadow:0 2px 14px #0f3d3e1a}.pd-photo{flex:0 0 240px;aspect-ratio:4/5;border-radius:16px;overflow:hidden}.pd-photo img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.pd-photo-fallback{width:100%;height:100%;display:grid;place-items:center;font-size:64px;font-weight:800;color:#fff;background:var(--teal)}.pd-info{flex:1}.pd-info h2{margin:0 0 10px}.pd-tags{margin-bottom:18px}.pd-info h3{margin:16px 0 6px;font-size:16px}.pd-info p{margin:0;color:var(--mut)}.card-actions{display:flex;gap:8px;flex-wrap:wrap}.pd-gallery{margin-top:28px}.gallery-grid.view-only .gallery-thumb{cursor:default}@media (max-width: 700px){.pd-main{flex-direction:column}.pd-photo{flex:none;width:100%;max-width:280px;margin:0 auto}}.pd-back{margin-bottom:20px}.pw-ok{color:#1e7a42;font-weight:600;font-size:14px;margin:4px 0 0}.pw-bad{color:#b3213f;font-weight:600;font-size:14px;margin:4px 0 0}.nav-logo{height:32px;width:32px;object-fit:contain;border-radius:8px}.gallery-thumb.clickable{cursor:pointer;border:0;padding:0;background:none}.gallery-thumb.clickable:hover img{filter:brightness(.9)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#000d;z-index:20;display:flex;align-items:center;justify-content:center;padding:24px}.lightbox-img{max-width:90vw;max-height:85vh;border-radius:8px;object-fit:contain;box-shadow:0 10px 40px #0008}.lightbox-close{position:absolute;top:20px;right:24px;background:#fff2;color:#fff;border:0;width:40px;height:40px;border-radius:50%;font-size:24px;line-height:1;cursor:pointer}.lightbox-close:hover{background:#fff4}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#fff2;color:#fff;border:0;width:48px;height:48px;border-radius:50%;font-size:30px;line-height:1;cursor:pointer}.lightbox-nav:hover{background:#fff4}.lightbox-nav.prev{left:20px}.lightbox-nav.next{right:20px}.lightbox-count{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#0008;color:#fff;padding:4px 14px;border-radius:999px;font-size:13px}@media (max-width: 560px){.lightbox-nav{width:40px;height:40px;font-size:24px}.lightbox-nav.prev{left:8px}.lightbox-nav.next{right:8px}}.manual-fallback{margin-top:16px;border-top:1px solid #e3ebeb;padding-top:12px}.manual-fallback summary{cursor:pointer;font-weight:600;font-size:14px;color:var(--teal)}.manual-fallback summary:hover{text-decoration:underline}.manual-fallback .manual-pay{margin-top:12px}
