/* SEHAT ONLINE v1.0.44 — Free support feature. Scoped to the homepage only. */
.so-v27-home .so-free-feature{padding:clamp(36px,5.8vw,96px) clamp(14px,3.1vw,60px);background:linear-gradient(180deg,#f7fafb 0%,#eef5f8 48%,#fff 100%);color:#123759}
.so-free-feature,.so-free-feature *{box-sizing:border-box}
.so-free-feature__frame{max-width:1700px;margin:0 auto;overflow:hidden;border-radius:clamp(20px,2vw,34px);background:#fff;border:1px solid #dce9ee;box-shadow:0 20px 52px rgba(43,92,122,.11)}
.so-free-feature__hero{min-height:610px;display:grid;grid-template-columns:minmax(0,1.13fr) minmax(0,.87fr);background:linear-gradient(110deg,#f9fbfd 0%,#f3f8fa 55%,#e8f2f5 100%)}
.so-free-feature__content{z-index:2;position:relative;min-width:0;padding:clamp(35px,4.5vw,84px) clamp(28px,4.5vw,82px) clamp(30px,3.5vw,58px)}
.so-free-feature__eyebrow{display:inline-flex;align-items:center;gap:9px;background:#fde6d6;color:#315c79;border-radius:999px;padding:9px 16px;font-size:11px;line-height:1.35;letter-spacing:.11em;font-weight:800;text-transform:uppercase}
.so-free-feature__eyebrow svg{width:20px;height:20px;color:#a97854;flex:none}
.so-v27-home .so-free-feature h2{font-size:clamp(34px,3.45vw,59px);line-height:1.075;letter-spacing:-.047em;margin:20px 0 18px;color:#10375c;font-weight:800;max-width:850px}
.so-v27-home .so-free-feature h2 span{color:#4d95a7}
.so-v27-home .so-free-feature__intro{font-size:clamp(15px,1.15vw,18px);line-height:1.66;max-width:680px;margin:0 0 23px;color:#395770}
.so-free-feature__services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:22px 0 22px}
.so-free-feature__service{display:flex;align-items:center;gap:13px;text-decoration:none!important;padding:18px 16px;border:1px solid transparent;border-radius:18px;min-width:0;color:#123c5d!important;transition:transform .18s,border-color .18s,box-shadow .18s}
.so-free-feature__service--blue{background:linear-gradient(125deg,#d9eff4,#e9f4f8);border-color:#cae6ee}
.so-free-feature__service--peach{background:linear-gradient(125deg,#fcedde,#fdf4e8);border-color:#f6dec8}
.so-free-feature__service:hover,.so-free-feature__service:focus-visible{transform:translateY(-3px);box-shadow:0 8px 24px #285a7916;border-color:#a0bfce}
.so-free-feature__service-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;flex:0 0 46px;border-radius:14px;color:#4c92ab;background:#ffffffb9}
.so-free-feature__service--peach .so-free-feature__service-icon{color:#bb895b}
.so-free-feature__service-icon svg{width:27px;height:27px}
.so-free-feature__service strong{display:block;font-size:15px;line-height:1.3;letter-spacing:-.014em;color:#174262}
.so-free-feature__service small{display:block;font-size:12px;line-height:1.5;color:#476780;font-weight:500;margin-top:5px}
.so-free-feature__benefits{display:flex;align-items:center;flex-wrap:wrap;gap:12px 19px;padding:10px 0 2px;color:#2b5871}
.so-free-feature__benefits span{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:750;line-height:1.4;white-space:normal}
.so-free-feature__benefits svg{width:21px;height:21px;flex:none;color:#5697b0}
.so-free-feature__actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-top:24px}
.so-free-feature__primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none!important;background:#396f94;color:#fff!important;font-weight:800;font-size:14px;padding:16px 23px;border-radius:999px;min-height:54px;box-shadow:0 11px 22px #23658e22;transition:background .18s,transform .18s}
.so-free-feature__primary svg{width:21px;height:21px;flex:none}
.so-free-feature__primary span{font-size:20px;margin-left:4px}
.so-free-feature__primary:hover,.so-free-feature__primary:focus-visible{background:#225477;transform:translateY(-2px)}
.so-free-feature__secondary{display:inline-flex;align-items:center;gap:8px;color:#355f80!important;font-size:13px;font-weight:800;text-decoration:underline!important;text-underline-offset:4px;padding:8px 0}
.so-v27-home .so-free-feature__disclaimer{font-size:11px;line-height:1.55;color:#698094;margin:15px 0 0;max-width:700px}
.so-free-feature__visual{min-width:0;min-height:550px;position:relative;overflow:hidden;background:linear-gradient(140deg,#d2e7e9,#f5e9d7)}
.so-free-feature__visual:before{content:"";position:absolute;inset:0 auto 0 0;width:16%;z-index:1;background:linear-gradient(90deg,#f3f8fa 0%,rgba(243,248,250,0) 100%);pointer-events:none}
.so-free-feature__visual img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:50% 42%}
.so-free-feature__visual-caption{position:absolute;bottom:25px;right:25px;z-index:2;background:#fffef5e8;backdrop-filter:blur(10px);display:inline-flex;align-items:center;gap:8px;padding:12px 15px;border-radius:100px;color:#245576;font-weight:800;font-size:12px;box-shadow:0 12px 35px #1e3f4a22}
.so-free-feature__visual-caption svg{width:18px;height:18px;color:#69a4ad}
.so-free-feature__info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;padding:26px clamp(18px,3vw,49px);background:linear-gradient(90deg,#fdfaf4,#f5fafb);border-top:1px solid #e1e9eb;gap:0}
.so-free-feature__info-item{display:flex;align-items:flex-start;gap:14px;min-width:0;padding:5px clamp(12px,2vw,32px);border-right:1px solid #d5e4ea}
.so-free-feature__info-item:first-child{padding-left:0}
.so-free-feature__info-item:last-child{border:0;padding-right:0}
.so-free-feature__info-icon{width:45px;height:45px;flex:0 0 45px;display:flex;align-items:center;justify-content:center;color:#477fa0;background:#e2f0f5;border-radius:13px}
.so-free-feature__info-icon svg{width:24px;height:24px}
.so-free-feature__info-item strong{display:block;color:#153e61;font-size:14px;line-height:1.4;font-weight:800}
.so-v27-home .so-free-feature__info-item p{margin:5px 0 0;color:#4d6779;font-size:12px;line-height:1.5}
.so-free-feature a:focus-visible{outline:3px solid #225b87;outline-offset:3px}
@media(max-width:1250px){.so-free-feature__hero{grid-template-columns:minmax(0,1fr) minmax(0,.83fr)}.so-free-feature__content{padding:46px 32px}.so-free-feature__service{padding:13px 11px}.so-free-feature__service-icon{flex-basis:38px;width:38px;height:38px}.so-free-feature__service strong{font-size:13px}.so-free-feature__service small{font-size:11px}.so-free-feature__info-item{gap:10px}}
@media(max-width:920px){.so-free-feature__hero{grid-template-columns:1fr;min-height:0}.so-free-feature__content{padding:45px 34px 35px}.so-free-feature__visual{min-height:370px}.so-free-feature__visual:before{inset:0 0 auto;height:13%;width:100%;background:linear-gradient(180deg,#f4f8fa,transparent)}.so-free-feature__visual img{object-position:center 45%}.so-free-feature__info{grid-template-columns:1fr;gap:0;padding:8px 25px}.so-free-feature__info-item,.so-free-feature__info-item:first-child,.so-free-feature__info-item:last-child{padding:18px 4px;border-right:0;border-bottom:1px solid #dce9ee}.so-free-feature__info-item:last-child{border:0}.so-v27-home .so-free-feature h2{max-width:700px}}
@media(max-width:540px){.so-v27-home .so-free-feature{padding:30px 12px 48px}.so-free-feature__frame{border-radius:20px}.so-free-feature__content{padding:31px 21px 29px}.so-free-feature__eyebrow{font-size:9px;letter-spacing:.065em;padding:8px 11px}.so-v27-home .so-free-feature h2{font-size:clamp(33px,8.6vw,45px);margin:17px 0 14px}.so-v27-home .so-free-feature__intro{font-size:14px;line-height:1.6}.so-free-feature__services{grid-template-columns:1fr;gap:9px}.so-free-feature__service{padding:13px}.so-free-feature__benefits{align-items:flex-start;gap:11px}.so-free-feature__benefits span{font-size:11px}.so-free-feature__actions{align-items:stretch}.so-free-feature__primary{width:100%;min-height:52px;padding:13px 14px;font-size:13px}.so-free-feature__secondary{margin-inline:auto}.so-free-feature__visual{min-height:290px}.so-free-feature__visual-caption{right:12px;bottom:12px;font-size:10px;padding:9px 12px}.so-free-feature__info{padding:7px 20px}.so-free-feature__info-item strong{font-size:13px}.so-v27-home .so-free-feature__info-item p{font-size:11px}}
@media(prefers-reduced-motion:reduce){.so-free-feature__service,.so-free-feature__primary{transition:none!important}}

/* v1.0.45 — User-provided, transparent counseling photograph replaces the generated illustration. */
.so-free-feature__visual--counseling{
  isolation:isolate;
  background:
    radial-gradient(circle at 77% 16%,rgba(253,227,200,.88) 0 14%,transparent 14.25%),
    radial-gradient(ellipse at 50% 69%,rgba(168,211,222,.63) 0 46%,transparent 46.3%),
    linear-gradient(150deg,#edf7fa 0%,#d5eaf0 55%,#e8f0ed 80%,#fcf1e7 100%);
}
.so-free-feature__visual--counseling::before{
  content:"";position:absolute;inset:auto -13% -43% auto;width:85%;height:auto;aspect-ratio:1;
  border-radius:50%;border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.08);z-index:0;
}
.so-free-feature__visual--counseling::after{
  content:"";position:absolute;top:-30%;left:-34%;width:90%;aspect-ratio:1;border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.64),transparent 65%);z-index:0;pointer-events:none;
}
.so-free-feature__visual--counseling img{
  position:absolute;inset:auto auto 0 50%;transform:translateX(-50%);width:100%;height:100%;
  max-width:100%;object-fit:contain;object-position:center bottom;z-index:1;
}
.so-free-feature__visual--counseling .so-free-feature__visual-caption{
  z-index:2;top:24px;right:24px;bottom:auto;max-width:calc(100% - 48px);
  background:rgba(255,255,255,.9);color:#275b77;
}
@media(max-width:920px){
  .so-free-feature__visual--counseling::before{width:65%;inset:auto -9% -50% auto;}
  .so-free-feature__visual--counseling img{object-position:center bottom;}
}
@media(max-width:540px){
  .so-free-feature__visual--counseling{min-height:370px;}
  .so-free-feature__visual--counseling .so-free-feature__visual-caption{top:12px;right:12px;bottom:auto;max-width:calc(100% - 24px);}
}

/* v1.0.46 — User-approved mirrored therapy scene. Replace transparent-photo styling with full-bleed scene. */
.so-free-feature__visual--counseling{
  isolation:isolate;
  background:#e8f2f4;
}
.so-free-feature__visual--counseling::before{
  display:block;position:absolute;inset:0 auto 0 0;width:12%;height:auto;aspect-ratio:auto;
  border:0;border-radius:0;background:linear-gradient(90deg,#f2f8fa 0%,rgba(242,248,250,0) 100%);z-index:1;pointer-events:none;
}
.so-free-feature__visual--counseling::after{display:none}
.so-free-feature__visual--counseling img{
  display:block;position:absolute;inset:0;transform:none;
  width:100%;height:100%;max-width:none;object-fit:cover;object-position:48% 50%;z-index:0;
}
.so-free-feature__visual--counseling .so-free-feature__visual-caption{
  z-index:2;top:auto;bottom:23px;right:23px;max-width:calc(100% - 46px);
  background:rgba(255,255,255,.92);color:#275b77;
}
@media(max-width:1120px){
  .so-free-feature__hero{grid-template-columns:minmax(0,1fr)}
  .so-free-feature__visual--counseling{min-height:clamp(340px,48vw,530px)}
  .so-free-feature__visual--counseling img{object-position:center 47%}
  .so-free-feature__visual--counseling::before{inset:0 0 auto 0;height:14%;width:100%;background:linear-gradient(180deg,#f3f8fa,transparent)}
}
@media(max-width:540px){
  .so-free-feature__visual--counseling{min-height:315px}
  .so-free-feature__visual--counseling img{object-position:48% center}
  .so-free-feature__visual--counseling .so-free-feature__visual-caption{top:auto;bottom:12px;right:12px;max-width:calc(100% - 24px)}
}
