
:root{--ease:cubic-bezier(0.22,1,0.36,1);}
*{box-sizing:border-box;}
body{margin:0;background:oklch(98% 0.012 75);font-family:'Nunito',sans-serif;color:oklch(28% 0.02 50);}
a{color:#B85A73;}
a:hover{color:#D4708A;}
::selection{background:#D4708A;color:white;}
img{max-width:100%;}
h1,h2,h3{font-family:'Baloo 2',sans-serif;}
.desktop-only{display:flex;}
.mobile-only{display:none;}
@media (max-width:860px){
  .desktop-only{display:none !important;}
  .mobile-only{display:flex !important;}
  .stack-mobile{grid-template-columns:1fr !important;}
  .grid3-mobile{grid-template-columns:1fr !important;}
  .brand span{display:none;}
}
@keyframes floatA{0%,100%{transform:translate(0,0) rotate(0deg);}50%{transform:translate(18px,-22px) rotate(10deg);}}
@keyframes floatB{0%,100%{transform:translate(0,0) rotate(0deg);}50%{transform:translate(-22px,16px) rotate(-8deg);}}
.float-shape{animation:floatA 15s ease-in-out infinite;}
.float-shape-b{animation:floatB 17s ease-in-out infinite;}
@media (prefers-reduced-motion:reduce){.float-shape,.float-shape-b{animation:none !important;}}
.gallery-masonry{column-count:3;column-gap:16px;}
@media (max-width:860px){.gallery-masonry{column-count:2;}}
@media (max-width:480px){.gallery-masonry{column-count:1;}}
.gallery-item{break-inside:avoid;margin-bottom:16px;border-radius:18px;overflow:hidden;}
.gallery-item img{width:100%;display:block;}

header{position:sticky;top:0;z-index:100;background:oklch(98% 0.012 75 / 0.92);backdrop-filter:blur(10px);border-bottom:1px solid oklch(90% 0.02 75);}
.header-inner{max-width:1180px;margin:0 auto;padding:6px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;height:100%;min-width:0;overflow:hidden;}
.brand img{height:52px;width:auto;object-fit:contain;flex-shrink:0;}
.brand span{font-family:'Baloo 2',sans-serif;font-weight:700;font-size:19px;color:oklch(30% 0.03 40);white-space:nowrap;}
nav.desktop-only{align-items:center;gap:18px;flex-shrink:0;}
nav.desktop-only a{font-family:'Baloo 2',sans-serif;font-weight:700;font-size:15px;text-decoration:none;color:oklch(35% 0.02 50);}
nav.desktop-only a.active{color:#B85A73;font-weight:800;}
.header-right.desktop-only{align-items:center;gap:10px;flex-shrink:0;}
.header-phone{font-family:'Baloo 2',sans-serif;font-weight:600;font-size:15px;text-decoration:none;color:oklch(30% 0.03 40);white-space:nowrap;}
.btn-header{background:#D4708A;color:white;border:none;padding:10px 20px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:600;font-size:15px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-block;}
.btn-header:hover{background:#C15C77;color:white;}
.hamburger{background:transparent;border:none;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;}
.hamburger div{display:flex;flex-direction:column;gap:5px;}
.hamburger span{width:24px;height:2.5px;background:oklch(30% 0.03 40);border-radius:2px;}
.mobile-drawer{display:none;flex-direction:column;padding:20px 24px 28px;gap:2px;margin-top:4px;border-top:1px solid oklch(90% 0.02 75);background:oklch(98% 0.012 75);}
.mobile-drawer.open{display:flex;}
.mobile-drawer a{padding:16px 4px;font-family:'Baloo 2',sans-serif;font-weight:600;font-size:17px;text-decoration:none;color:oklch(35% 0.02 50);border-bottom:1px solid oklch(93% 0.015 70);}
.mobile-drawer a.active{color:#B85A73;font-weight:800;}
.mobile-drawer .drawer-call{font-weight:700;color:oklch(30% 0.03 40);border-bottom:none;margin-top:14px;}

.pill{display:inline-block;background:oklch(93% 0.04 20);color:#B85A73;font-weight:700;font-size:14px;padding:6px 14px;border-radius:100px;margin-bottom:18px;white-space:nowrap;}

.btn-hero-primary{background:#E8585A;color:white;border:none;padding:16px 30px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:17px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-block;}
.btn-hero-primary:hover{background:#D13F41;color:white;}
.btn-hero-outline{background:transparent;color:oklch(30% 0.03 40);border:2px solid #4F9DDE;padding:14px 28px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:17px;cursor:pointer;white-space:nowrap;text-decoration:none;display:inline-block;}
.btn-hero-outline:hover{background:#4F9DDE;color:white;}

.svc-card{position:relative;height:300px;border-radius:20px;overflow:hidden;border:1px solid oklch(92% 0.02 70);transition:transform .35s var(--ease),box-shadow .35s;}
.svc-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px oklch(30% 0.02 40 / .18);}
.svc-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease);}
.svc-card:hover img{transform:scale(1.06);}
.svc-card .scrim{position:absolute;inset:0;background:linear-gradient(to top,oklch(15% 0.02 40 / .88),oklch(15% 0.02 40 / .15) 55%);pointer-events:none;}
.svc-card .txt{position:absolute;inset:0;padding:20px;display:flex;flex-direction:column;justify-content:flex-end;}
.svc-card h3{font-size:20px;margin:0 0 6px;color:white;}
.svc-card p{font-size:15px;line-height:1.5;color:oklch(94% 0.01 60);margin:0;}

.btn-cta{background:#F4B942;color:oklch(22% 0.03 40);border:none;padding:13px 26px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:16px;cursor:pointer;transition:transform .3s var(--ease);text-decoration:none;display:inline-block;}
.btn-cta:hover{background:#E0A72A;transform:translateY(-3px);color:oklch(22% 0.03 40);}

.value-card{background:oklch(100% 0.008 75);border:1px solid oklch(92% 0.02 70);border-radius:18px;padding:26px;transition:transform .35s var(--ease),box-shadow .35s;}
.value-card:hover{transform:translateY(-6px);box-shadow:0 14px 28px oklch(30% 0.02 40 / .12);}
.value-card h3{font-size:19px;margin:0 0 8px;color:oklch(28% 0.03 40);padding-top:14px;}

.opt-card{background:oklch(100% 0.008 75);border:1px solid oklch(92% 0.02 70);border-radius:18px;padding:28px 24px;text-align:center;transition:transform .35s var(--ease),box-shadow .35s;}
.opt-card:hover{transform:translateY(-6px);box-shadow:0 14px 28px oklch(30% 0.02 40 / .12);}

.btn-waitlist{background:#4F9DDE;color:white;border:none;padding:14px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:16px;cursor:pointer;}
.btn-waitlist:hover{background:#3A87C4;}
.upload-drop{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:oklch(97% 0.01 75);border:2px dashed oklch(80% 0.03 150);border-radius:12px;padding:36px 20px;margin-bottom:18px;cursor:pointer;text-align:center;transition:background .2s,border-color .2s;}
.upload-drop:hover{background:oklch(94% 0.02 150);border-color:#5FBF7A;}
.btn-app{background:#E8585A;color:white;border:none;padding:12px 24px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:15px;cursor:pointer;white-space:nowrap;}
.btn-app:hover{background:#D13F41;}
.btn-health{background:#5FBF7A;color:white;border:none;padding:12px 24px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:15px;cursor:pointer;white-space:nowrap;}
.btn-health:hover{background:#47A863;}
.btn-purple{background:#9B6FD1;color:white;border:none;padding:14px 28px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:16px;cursor:pointer;text-decoration:none;display:inline-block;}
.btn-purple:hover{background:#8358BE;color:white;}
.btn-send{background:#5FBF7A;color:white;border:none;padding:14px;border-radius:100px;font-family:'Baloo 2',sans-serif;font-weight:700;font-size:16px;cursor:pointer;}
.btn-send:hover{background:#47A863;}

.social-icon{width:42px;height:42px;border-radius:50%;background:oklch(93% 0.02 70);display:flex;align-items:center;justify-content:center;text-decoration:none;color:oklch(30% 0.03 40);font-weight:700;transition:background .2s,color .2s;}
.social-icon:hover{background:#D4708A;color:white;}

input,textarea{padding:14px 16px;border-radius:12px;border:1px solid oklch(88% 0.02 70);font-size:16px;font-family:inherit;width:100%;}
textarea{resize:vertical;}

footer{background:oklch(24% 0.02 45);color:oklch(85% 0.01 60);padding:48px 24px 28px;}
footer a{color:oklch(75% 0.01 60);text-decoration:none;}
footer a:hover{color:white;}
