:root{--ink:#10283c;--muted:#4f6679;--brand:#ff9c00;--brand-dark:#e68a00;--teal-deep:#0a6aa8;--deep:#0b7fc2;--mid:#12aef5;--light:#7fd2fa;--mint:#e6f5fd;--line:#bfe3f7;--bg:#f9fcff;--white:#fff;--serif:'Fraunces',Georgia,serif;--sans:'Figtree',system-ui,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--bg);line-height:1.6;font-size:1rem}
h1,h2,h3{font-family:var(--serif);font-weight:600;line-height:1.2;margin:0 0 .6rem}
h1{font-size:clamp(2rem,5vw,3.1rem)}
h2{font-size:clamp(1.5rem,3vw,2rem)}
h3{font-size:1.2rem}
a{color:inherit}
p{margin:0 0 .8rem}
.wrap{width:min(1120px,92%);margin:0 auto}
:focus-visible{outline:3px solid #ff9c00;outline-offset:2px}
main{padding-top:var(--header-space,68px)}
.ddl{position:relative}
.ddl-native{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.ddl-btn{display:flex;align-items:center;gap:.6rem;width:100%;padding:.65rem;border:1px solid var(--line);border-radius:6px;font:inherit;background:var(--white);color:var(--ink);text-align:left;cursor:pointer}
.ddl-btn:hover,.ddl.open .ddl-btn{border-color:var(--brand-dark)}
.ddl-txt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ddl-ico{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:var(--mint)}
.ddl-ico svg{width:18px;height:18px;stroke:var(--deep);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ddl-chev{flex:none;width:16px;height:16px;stroke:var(--muted);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.ddl.open .ddl-chev{transform:rotate(180deg)}
.ddl-list{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 6px);margin:0;padding:6px;list-style:none;background:var(--white);border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(16,40,60,.14);max-height:280px;overflow:auto;display:none}
.ddl.open .ddl-list{display:block}
.ddl-list li{display:flex;align-items:center;gap:.6rem;padding:6px;border-radius:8px;cursor:pointer}
.ddl-list li:hover,.ddl-list li.active{background:var(--mint)}
.ddl-list li[aria-selected=true]{font-weight:600}
.ddl-list li[aria-selected=true] .ddl-ico{background:var(--deep)}
.ddl-list li[aria-selected=true] .ddl-ico svg{stroke:#fff}
.btn{display:inline-block;background:var(--brand);color:var(--ink);padding:.75rem 1.4rem;border-radius:6px;text-decoration:none;font-weight:600;border:0;cursor:pointer;font-family:inherit;font-size:1rem;transition:background .15s}
.btn:hover{background:var(--brand-dark)}
.btn-small{padding:.5rem 1rem;font-size:.95rem}
.btn-ghost{background:transparent;color:var(--deep);box-shadow:inset 0 0 0 2px var(--deep)}
.btn-ghost:hover{background:var(--mint)}
.link{color:var(--deep);font-weight:600}
.hero{padding:10px}
.hero-inner{border-radius:16px;overflow:hidden;padding:clamp(2.5rem,7vw,5rem) clamp(1.2rem,5vw,4rem);background:linear-gradient(90deg,rgba(8,92,150,.92),rgba(18,150,225,.22)),url('/assets/images/hero.svg') center/cover no-repeat,var(--teal-deep)}
.hero-inner .hero-grid{width:min(1120px,100%);margin:0 auto}
.hero h1{color:var(--white)}
.hero .lead{color:rgba(255,255,255,.88)}
.hero .actions .btn{background:var(--white);color:var(--deep)}
.hero .actions .btn:hover{background:var(--mint)}
.hero .actions .btn-ghost{background:transparent;color:var(--white);box-shadow:inset 0 0 0 2px var(--white)}
.hero .actions .btn-ghost:hover{background:rgba(255,255,255,.15)}
.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}
.lead{font-size:1.15rem;color:var(--muted);max-width:52ch}
.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.4rem}
.finder{background:var(--white);padding:1.6rem;border-radius:12px;border:1px solid var(--line)}
label{display:block;font-weight:600;font-size:.9rem;margin:.8rem 0 .3rem}
select,input[type=search]{width:100%;padding:.65rem;border:1px solid var(--line);border-radius:6px;font:inherit;background:var(--white);color:var(--ink)}
.finder .btn{margin-top:1.2rem;width:100%}
.consult-card{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:2rem;background:#dff2fc;border-radius:16px;overflow:hidden;padding:clamp(1.5rem,4vw,3rem) clamp(1.5rem,4vw,3.5rem) 0}
.consult-text{align-self:center;padding-bottom:clamp(1.5rem,4vw,3rem)}
.consult-text .lead-dark,.consult-text .note{color:#3d5a6b}
.consult-img{display:flex;justify-content:center;align-items:flex-end}
.consult-img img{display:block;height:auto;width:auto;max-width:100%;max-height:460px}
.lead-dark{color:var(--muted);font-size:1.05rem;max-width:56ch}
.steps{margin:1rem 0 1.4rem;padding-left:1.3rem}
.steps li{margin-bottom:.4rem}
.section{padding:clamp(2rem,5vw,3.5rem) 0}
.tint{background:var(--mint)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.2rem;margin:1.4rem 0}
.card{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:1.4rem}
.tint .card{border-color:transparent}
.muted{color:var(--muted)}
.price{font-family:var(--serif);font-size:1.6rem;font-weight:600;color:var(--deep);margin:.4rem 0}
.avatar{width:52px;height:52px;border-radius:50%;background:var(--brand);color:var(--ink);display:grid;place-items:center;font-family:var(--serif);font-size:1.3rem;margin-bottom:.8rem}
.filters{display:flex;gap:1rem;align-items:flex-end;flex-wrap:wrap;margin:1rem 0 1.4rem}
.filters>div{flex:1;min-width:200px}
.tags,.check{list-style:none;padding:0;margin:.8rem 0}
.tags{display:flex;flex-wrap:wrap;gap:.4rem}
.tags li{background:var(--mint);padding:.2rem .7rem;border-radius:999px;font-size:.85rem}
.check li{padding-left:1.5rem;position:relative;margin-bottom:.35rem}
.check li::before{content:"";position:absolute;left:.15rem;top:.55em;width:.5rem;height:.9rem;border:solid var(--deep);border-width:0 2px 2px 0;transform:translateY(-50%) rotate(45deg)}
.check+.btn{margin-top:.6rem}
.empty{padding:2rem;background:var(--mint);border-radius:10px}
.note{color:var(--muted);font-size:.9rem}
.section-title{text-align:center;margin-bottom:2rem}
.countries{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1.5rem}
.country{display:flex;flex-direction:column;align-items:center;gap:.8rem;text-decoration:none;font-weight:500}
.country img{width:96px;height:96px;border-radius:16px;object-fit:cover;box-shadow:0 4px 12px rgba(16,40,60,.25);transition:transform .2s}
.country:hover img{transform:scale(1.06)}
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem 1.5rem;text-align:center}
.service svg{width:52px;height:52px;stroke:var(--mid);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.service h3{font-family:var(--sans);font-size:1rem;font-weight:600;margin:.8rem 0 0}
.partners{overflow:hidden;padding:.5rem 0 1rem;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.partner-track{display:flex;width:max-content;animation:partner-scroll 35s linear infinite}
.partners:hover .partner-track{animation-play-state:paused}
.partner{flex:none;height:56px;display:flex;align-items:center;margin-right:3rem}
.partner img{display:block;max-height:56px;width:auto;filter:grayscale(1);opacity:.8}
.partner span{font-weight:600;color:var(--muted);padding:.5rem 1.2rem;border:1px solid var(--line);border-radius:999px;white-space:nowrap}
@keyframes partner-scroll{to{transform:translateX(-50%)}}
.country-hero{display:flex;gap:2rem;align-items:center;flex-wrap:wrap}
.country-flag{display:block;width:120px;height:120px;border-radius:16px;object-fit:cover;box-shadow:0 4px 12px rgba(16,40,60,.25)}
.stats{background:var(--teal-deep) center/cover no-repeat;color:var(--white);text-align:center;padding:clamp(2.5rem,6vw,4.5rem) 0;margin:2rem 10px;border-radius:16px}
.stats h2{color:var(--white);margin-bottom:.4rem}
.stats-sub{color:#dff3fd;margin-bottom:2.2rem}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem 1rem;max-width:900px;margin:0 auto}
.stat-num{display:inline-flex;align-items:flex-start;gap:.5rem;font-family:var(--serif);font-weight:600;font-size:clamp(2.4rem,5vw,3.6rem);line-height:1;font-variant-numeric:tabular-nums}
.stat-num::before{content:"";width:3px;height:1.1rem;background:var(--brand);margin-top:.3rem}
.stat-num sup{font-family:var(--sans);font-size:1.1rem;margin-top:.1rem}
.stat-label{margin-top:.6rem;font-weight:600}
.foot-top{background:var(--ink);padding:1.4rem 0 2.6rem;margin-top:2rem}
.foot-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
.pill{display:inline-flex;align-items:center;gap:.6rem;color:#fff;text-decoration:none;font-weight:600;border:2px solid #fff;border-radius:999px;padding:.65rem 1.4rem;transition:background .15s}
.pill:hover{background:rgba(255,255,255,.15)}
.pill svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.site-footer{background:var(--brand);color:var(--ink);border-radius:24px 24px 0 0;margin-top:-24px;position:relative;padding:3rem 0 1rem}
.site-footer a{color:var(--ink)}
.foot-grid{display:grid;grid-template-columns:1.1fr 1.2fr 1.3fr;gap:2.5rem}
.foot-logo{display:block;width:100%;max-width:280px;height:auto;margin-bottom:1rem}
.foot-desc{max-width:42ch}
.social{display:flex;gap:.8rem;margin-top:1.2rem}
.social a{width:40px;height:40px;border-radius:50%;background:var(--ink);display:grid;place-items:center}
.social svg{width:20px;height:20px;fill:none;stroke:#fff;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.foot-links h3,.office h3{font-family:var(--sans);font-size:1.15rem;font-weight:700;margin:0 0 .8rem}
.office h3{text-transform:uppercase;margin-bottom:.2rem}
.link-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem}
.link-cols ul{margin:0;padding-left:1.2rem}
.link-cols li{margin-bottom:.45rem}
.offices{text-align:right}
.office{margin-bottom:.8rem}
.map{display:block;width:100%;height:190px;border:0;border-radius:12px;margin-top:1rem}
.foot-bar{display:flex;gap:1rem;align-items:center;margin:2rem 0 1rem;padding:.6rem;border:2px solid rgba(16,40,60,.25);border-radius:16px}
.foot-bar form{flex:1}
.foot-bar input[type=search]{border:0;border-radius:999px;padding:.8rem 1rem .8rem 2.8rem;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235b716d' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.500-3.500'/%3E%3C/svg%3E") no-repeat 1rem center/20px}
.foot-bar .btn{background:var(--teal-deep);color:#fff;white-space:nowrap}
.foot-bar .btn:hover{background:var(--ink)}
.disclaimer{font-size:.9rem}
.copy{padding-top:1rem;border-top:1px solid rgba(16,40,60,.2);font-size:.85rem}
@media(max-width:820px){
 .services{grid-template-columns:repeat(2,1fr)}
 .hero-grid{grid-template-columns:1fr;gap:2rem}
 .consult-card{grid-template-columns:1fr;gap:0}
 .consult-img img{max-height:340px}
 .stats-grid{grid-template-columns:repeat(2,1fr)}
 .foot-grid{grid-template-columns:1fr}
 .offices{text-align:left}
 .foot-bar{flex-direction:column;align-items:stretch}
}
@media(max-width:480px){.services{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.partner-track{animation:none}.partners{overflow-x:auto;-webkit-mask-image:none;mask-image:none}html{scroll-behavior:auto}.btn{transition:none}}

.faq{display:grid;gap:.6rem;margin-bottom:1rem}
.faq details{background:var(--white);border:1px solid var(--line);border-radius:10px}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;font-weight:600;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";flex:none;width:.6rem;height:.6rem;border:solid var(--deep);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg)}
.faq details p{margin:0;padding:0 1.2rem 1.1rem;color:var(--muted);max-width:70ch}

.crumbs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem;font-size:.92rem;color:var(--muted)}
.crumbs a{color:var(--deep);text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.crumbs>*+*::before{content:"/";margin-right:.4rem;color:#9fb7c4}

/* ---------- Sativa utama: palet gabungan Medical (teal) dan Travel (biru + oranye) ---------- */
:root{--med:#245f5e;--med-soft:#89c9c8;--med-mint:#e7f4f3;--trv:#0a6aa8;--trv-soft:#12aef5;--trv-mint:#e6f5fd}
.hero-inner{position:relative;isolation:isolate;background:linear-gradient(135deg,rgba(16,40,60,.9),rgba(16,40,60,.35)),url('/assets/images/hero.svg') center/cover no-repeat,var(--ink)}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;pointer-events:none}
.has-video .hero-inner::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(135deg,rgba(16,40,60,.86),rgba(16,40,60,.3))}
.hero-main{padding:clamp(1.5rem,4vw,3rem) 0 0}
.hero-head{max-width:760px;margin:0 auto 2rem;text-align:center}
.hero-head h1{margin-bottom:.8rem}
.hero-head .lead{margin:0 auto;color:rgba(255,255,255,.9)}
.choices{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1rem,2.5vw,1.6rem);width:min(1020px,100%);margin:0 auto}
.choice{position:relative;display:flex;flex-direction:column;background:#fff;color:var(--ink);border-radius:16px;padding:clamp(1.3rem,3vw,2rem);text-decoration:none;box-shadow:0 18px 40px -16px rgba(0,0,0,.45);transition:transform .25s ease,box-shadow .25s ease;overflow:hidden}
.choice::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--c)}
.choice:hover,.choice:focus-visible{transform:translateY(-4px);box-shadow:0 26px 50px -16px rgba(0,0,0,.55)}
.choice-medical{--c:var(--med-soft);--cd:var(--med);--cm:var(--med-mint)}
.choice-travel{--c:var(--brand);--cd:var(--trv);--cm:var(--trv-mint)}
.choice-ico{width:56px;height:56px;border-radius:14px;background:var(--cm);display:grid;place-items:center;margin-bottom:1rem}
.choice-ico svg{width:30px;height:30px;fill:none;stroke:var(--cd);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.choice-name{margin:0 0 .15rem;font-family:var(--sans);font-size:.95rem;font-weight:600;color:var(--cd)}
.choice h2{font-size:clamp(1.35rem,2.6vw,1.7rem);margin-bottom:.6rem}
.choice p{color:var(--muted)}
.choice ul{list-style:none;margin:.4rem 0 1.4rem;padding:0;display:grid;gap:.4rem}
.choice li{padding-left:1.5rem;position:relative}
.choice li::before{content:"";position:absolute;left:.15rem;top:.5em;width:.45rem;height:.8rem;border:solid var(--cd);border-width:0 2px 2px 0;transform:translateY(-50%) rotate(45deg)}
.choice-btn{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.4rem;border-radius:8px;background:var(--cd);color:#fff;font-weight:600;transition:background .2s}
.choice-travel .choice-btn{background:var(--brand);color:var(--ink)}
.choice:hover .choice-btn{filter:brightness(.92)}
.choice-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.hero-hint{text-align:center;color:rgba(255,255,255,.85);font-size:.95rem;margin:1.4rem 0 0}
.hero-hint a{color:#fff;font-weight:600}
.sec-head{max-width:640px;margin:0 auto 2rem;text-align:center}
.sec-head p{color:var(--muted)}
.why .card h3{font-size:1.1rem}
.art-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:1.2rem}
.art-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.art-thumb{display:flex;align-items:flex-end;padding:1rem;aspect-ratio:16/8;color:#fff;font-weight:600;background:linear-gradient(135deg,var(--trv),var(--trv-soft))}
.art-card[data-k=Medical] .art-thumb{background:linear-gradient(135deg,var(--med),var(--med-soft))}
.art-card[data-k=Umum] .art-thumb{background:linear-gradient(135deg,var(--ink),var(--muted))}
.art-body{display:flex;flex-direction:column;flex:1;padding:1.2rem 1.3rem 1.4rem}
.art-body h3{font-size:1.15rem}
.art-body h3 a{text-decoration:none}
.art-body h3 a:hover{color:var(--deep)}
.art-meta{font-size:.85rem;color:var(--muted);margin:0 0 .4rem}
.art-body .link{margin-top:auto}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.6rem}
.chip{padding:.4rem 1rem;border-radius:999px;border:1px solid var(--line);background:#fff;text-decoration:none;font-weight:600;font-size:.92rem}
.chip:hover{background:var(--mint)}
.chip[aria-current=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.article{max-width:720px}
.article h1{font-size:clamp(1.7rem,4vw,2.4rem)}
.article p{font-size:1.08rem;line-height:1.8;color:#2c4457}
.page-head{padding:clamp(1.5rem,4vw,3rem) 0 0}
.page-head .lead{max-width:60ch}
.about{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(1.5rem,4vw,3rem);align-items:start}
.about-box{background:var(--mint);border-radius:16px;padding:1.6rem}
.about-box h3{font-family:var(--sans);font-size:1rem;margin:0 0 .3rem}
.about-box p{color:var(--muted)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.job{background:#fff;border:1px solid var(--line);border-radius:12px}
.job+.job{margin-top:.7rem}
.job summary{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.3rem;cursor:pointer;list-style:none;font-weight:600}
.job summary::-webkit-details-marker{display:none}
.job summary small{display:block;font-weight:400;color:var(--muted)}
.job summary::after{content:"";flex:none;width:.6rem;height:.6rem;border:solid var(--deep);border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .2s}
.job[open] summary::after{transform:rotate(-135deg)}
.job-body{padding:0 1.3rem 1.3rem}
.job-body p{color:var(--muted)}
.job-body .check{margin:.6rem 0 1rem}
@media(max-width:820px){.choices,.about,.two{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.hero-video{display:none}.choice,.choice-btn,.job summary::after{transition:none}.choice:hover{transform:none}}

/* ---------- Profil (beranda), Tentang Kami, Visi Misi ---------- */
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
.profile-text h2{font-family:var(--sans);font-weight:600;font-size:clamp(1.5rem,3vw,1.9rem);margin-bottom:.4rem}
.profile-sub{font-weight:700;margin-bottom:1.2rem}
.profile-text p{max-width:60ch}
.btn-pill{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;padding:.8rem 1.5rem;border-radius:999px;background:var(--ink);color:#fff;font-weight:600;text-decoration:none;transition:background .2s}
.btn-pill:hover{background:var(--teal-deep)}
.btn-pill svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.profile-media{border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 10px 30px -10px rgba(16,40,60,.3);aspect-ratio:16/9}
.profile-media iframe{display:block;width:100%;height:100%;border:0}
.profile-media video,.profile-logo{display:block;width:100%;height:100%;object-fit:contain;background:#fff}
.profile-logo{display:grid;place-items:center;padding:8%}
.profile-logo img{width:100%;height:auto}
.about-text{max-width:860px}
.about-text p{line-height:1.8}
.client-list{margin:0 0 1rem;padding-left:1.4rem;line-height:1.9}
.vm{max-width:1000px;margin:0 auto;background:#f6f6f6;border-radius:20px;padding:.4rem clamp(1rem,3vw,1.8rem)}
.vm details+details{border-top:1px solid #ddd}
.vm summary{display:flex;align-items:center;gap:.6rem;padding:1.1rem 0 .4rem;color:#b3001b;font-weight:700;font-size:1.1rem;cursor:pointer;list-style:none}
.vm summary::-webkit-details-marker{display:none}
.vm summary::before{content:"";border-style:solid;border-width:0 5px 6px 5px;border-color:transparent transparent #b3001b transparent;transition:transform .2s}
.vm details:not([open]) summary::before{transform:rotate(180deg)}
.vm p{margin:0;padding:.6rem 0 1.4rem 1.2rem;max-width:80ch;line-height:1.8}
.sec-lead{text-align:center;color:var(--muted);margin:-1rem 0 2rem}
.rs-partners{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.2rem;align-items:start}
.rs-partners h3{font-size:1.15rem}
.rs-partners h4{font-family:var(--sans);font-size:.95rem;font-style:italic;margin:.8rem 0 .3rem}
.rs-partners ul{margin:0;padding-left:1.1rem;color:var(--muted);line-height:1.7}
@media(max-width:820px){.profile-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.btn-pill,.vm summary::before{transition:none}}
/* ===== Footer: dekorasi sederhana, akun sosial, kredit developer, tampilan penuh di desktop ===== */
html{height:100%}
body{min-height:100vh;display:flex;flex-direction:column}
main{flex:1 0 auto}
.site-footer{overflow:hidden;isolation:isolate;padding:3.5rem 0 1.2rem}
.site-footer::before{content:"";position:absolute;z-index:-1;right:-90px;top:-110px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,transparent 58%,rgba(255,255,255,.28) 58.5%,rgba(255,255,255,.28) 61%,transparent 61.5%,transparent 72%,rgba(255,255,255,.18) 72.5%,rgba(255,255,255,.18) 75%,transparent 75.5%)}
.site-footer::after{content:"";position:absolute;z-index:-1;left:-20px;bottom:56px;width:220px;height:140px;background-image:radial-gradient(rgba(16,40,60,.22) 1.6px,transparent 1.7px);background-size:18px 18px;-webkit-mask-image:linear-gradient(to top right,#000,transparent 80%);mask-image:linear-gradient(to top right,#000,transparent 80%)}
.site-footer .foot-links h3::after{content:"";display:block;width:34px;height:3px;margin-top:.45rem;border-radius:3px;background:var(--ink)}
.site-footer .link-cols ul{list-style:none;padding:0}
.site-footer .link-cols a{display:inline-block;text-decoration:none;transition:transform .15s}
.site-footer .link-cols a::before{content:"\203A";display:inline-block;width:.9rem;font-weight:700;opacity:.55}
.site-footer .link-cols a:hover{text-decoration:underline;text-underline-offset:3px;transform:translateX(3px)}
.site-footer .social{flex-wrap:wrap;gap:.6rem}
.site-footer .social a{width:auto;height:auto;display:inline-flex;align-items:center;gap:.55rem;padding:.5rem 1rem .5rem .8rem;border-radius:999px;background:var(--ink);color:#fff;font-weight:600;font-size:.92rem;text-decoration:none;transition:transform .15s,box-shadow .15s}
.site-footer .social a:hover{transform:translateY(-2px);box-shadow:0 6px 14px rgba(16,40,60,.25)}
.site-footer .social svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.site-footer .social svg.fill{fill:currentColor;stroke:none}
.site-footer .copy{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 1.5rem}
.site-footer .copy .dev a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
.site-footer .copy .dev a:hover{opacity:.75}
@media(min-width:1024px){
 .foot-top .wrap,.site-footer .wrap{width:auto;max-width:none;margin-inline:clamp(2rem,5vw,6rem)}
 .site-footer{padding-top:4rem}
 .foot-grid{grid-template-columns:1.2fr 1.3fr 1.2fr;gap:clamp(2.5rem,5vw,6rem)}
 .foot-logo{max-width:320px}
 .map{height:220px}
}
@media(max-width:820px){
 .site-footer .copy{flex-direction:column;align-items:flex-start}
}

/* ===== Hero beranda: pilihan Medical / Travel dengan card glass ===== */
.hero-inner{display:flex;flex-direction:column;justify-content:center}
.hero-main{padding:clamp(1rem,3vw,2rem) 0}
.hero-head h1{font-size:clamp(2rem,4.2vw,3.1rem);text-shadow:0 2px 18px rgba(0,0,0,.25)}
.choices{width:min(900px,100%);gap:clamp(1rem,2.5vw,1.75rem)}
.choice{background:rgba(255,255,255,.13);-webkit-backdrop-filter:blur(18px) saturate(150%);backdrop-filter:blur(18px) saturate(150%);border:1px solid rgba(255,255,255,.32);border-radius:22px;color:#fff;padding:clamp(1.4rem,3vw,2rem);box-shadow:0 20px 44px -18px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.35);transition:transform .25s ease,background .25s ease,border-color .25s ease}
.choice::before{display:none}
.choice:hover,.choice:focus-visible{transform:translateY(-4px);background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.55);box-shadow:0 26px 50px -18px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.45)}
.choice:focus-visible{outline:3px solid #fff;outline-offset:3px}
.choice-medical{--c:var(--med-soft)}
.choice-travel{--c:var(--brand)}
.choice-ico{width:52px;height:52px;border-radius:50%;background:var(--c);margin-bottom:1.1rem}
.choice-ico svg{stroke:var(--ink)}
.choice-name{color:rgba(255,255,255,.8);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}
.choice h2{color:#fff;font-size:clamp(1.3rem,2.4vw,1.6rem);margin-bottom:.5rem}
.choice p{color:rgba(255,255,255,.88);margin:0 0 1.5rem}
.choice-btn,.choice-travel .choice-btn{align-self:flex-start;border-radius:999px;background:var(--c);color:var(--ink);padding:.7rem 1.3rem}
.choice:hover .choice-btn{filter:none;box-shadow:0 6px 16px rgba(0,0,0,.25)}
.choice-btn{white-space:nowrap}
.choice-btn svg{transition:transform .2s}
.choice:hover .choice-btn svg{transform:translateX(3px)}
.hero-hint{margin-top:1.6rem}
.hero-hint a{text-decoration:underline;text-underline-offset:3px}
@media(min-width:1024px){
 .hero-inner{min-height:max(560px,calc(100vh - var(--header-space,68px) - 20px))}
}
@media(max-width:820px){
 .choice p{margin-bottom:1.2rem}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .choice{background:rgba(16,40,60,.62)}
}

/* ===== Artikel dari admin: gambar utama, isi (heading, daftar, kutipan, gambar) ===== */
.art-thumb{position:relative;overflow:hidden}
.art-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.art-thumb.has-img::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(16,40,60,.6),transparent 60%)}
.art-thumb span{position:relative;z-index:1}
.article-cover{margin:1.2rem 0 1.6rem}
.article-cover img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px}
.article-body h2{font-size:clamp(1.35rem,3vw,1.7rem);margin:2rem 0 .7rem}
.article-body h3{font-size:1.2rem;margin:1.6rem 0 .5rem}
.article-body h4{font-size:1.05rem;margin:1.3rem 0 .4rem}
.article-body ul,.article-body ol{margin:0 0 1.2rem;padding-left:1.4rem;font-size:1.08rem;line-height:1.8;color:#2c4457}
.article-body li{margin-bottom:.35rem}
.article-body blockquote{margin:1.4rem 0;padding:.4rem 1.2rem;border-left:4px solid var(--brand);background:var(--mint);border-radius:0 10px 10px 0;color:#2c4457}
.article-body blockquote p{margin:.4rem 0}
.article-body img{display:block;max-width:100%;height:auto;border-radius:12px;margin:1.4rem 0}
.article-body a{color:var(--deep);text-decoration:underline;text-underline-offset:3px}
.article-body hr{border:0;border-top:1px solid var(--line);margin:2rem 0}
.article .actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:2rem}

/* ===== Ikon card hero: besar, terang, di pojok kanan atas, terpotong tepi card ===== */
.choice{position:relative;overflow:hidden}
.choice>*{position:relative;z-index:1}
.choice>.choice-ico{position:absolute;z-index:0;top:-44px;right:-38px;width:160px;height:160px;margin:0;border-radius:0;background:none;display:block;pointer-events:none}
.choice-ico svg{display:block;width:100%;height:100%;stroke:rgba(236,241,245,.62);stroke-width:1.1}
.choice h2{padding-right:3.2rem}
@media(max-width:820px){.choice>.choice-ico{width:130px;height:130px;top:-34px;right:-30px}.choice h2{padding-right:2.6rem}}

/* ===== Kenapa memilih Sativa: kartu modern ===== */
.why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}
.why-card{position:relative;overflow:hidden;background:var(--white);border:1px solid rgba(11,127,194,.12);border-radius:20px;padding:1.9rem 1.5rem 1.7rem;box-shadow:0 1px 2px rgba(16,40,60,.04),0 14px 30px -18px rgba(11,127,194,.4);transition:transform .25s ease,box-shadow .25s ease}
.why-card:hover{transform:translateY(-6px);box-shadow:0 1px 2px rgba(16,40,60,.04),0 24px 40px -20px rgba(11,127,194,.55)}
.why-num{position:absolute;top:.7rem;right:1.2rem;font-family:var(--serif);font-size:3.6rem;font-weight:600;line-height:1;color:rgba(11,127,194,.09);user-select:none}
.why-ico{display:grid;place-items:center;width:58px;height:58px;margin-bottom:1.3rem;border-radius:17px;background:linear-gradient(135deg,var(--deep),var(--mid));box-shadow:0 12px 22px -12px rgba(11,127,194,.8);transition:background .25s ease,box-shadow .25s ease}
.why-card:hover .why-ico{background:linear-gradient(135deg,var(--brand),#ffbd45);box-shadow:0 12px 22px -12px rgba(230,138,0,.8)}
.why-ico svg{width:28px;height:28px;fill:none;stroke:#fff;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.why-card h3{font-family:var(--serif);font-size:1.2rem;line-height:1.3;margin:0 0 .55rem;color:var(--ink)}
.why-card p{margin:0;color:var(--muted);font-size:.98rem;line-height:1.7}
@media(max-width:1100px){.why{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.why{grid-template-columns:1fr}.why-card{padding:1.6rem 1.3rem}}
@media(prefers-reduced-motion:reduce){.why-card,.why-ico{transition:none}.why-card:hover{transform:none}}

/* ===== Hiasan wave simpel pada section statistik ===== */
.stats{position:relative;overflow:hidden;isolation:isolate}
.stats::before,.stats::after{content:"";position:absolute;left:0;right:0;bottom:0;z-index:-1;pointer-events:none;background-repeat:repeat-x;background-position:0 100%}
.stats::before{height:96px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 720 90' preserveAspectRatio='none'%3E%3Cpath fill='white' fill-opacity='.10' d='M0 45C120 0 240 0 360 45S600 90 720 45V90H0Z'/%3E%3C/svg%3E");background-size:760px 96px;animation:stats-wave 38s linear infinite}
.stats::after{height:64px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 720 90' preserveAspectRatio='none'%3E%3Cpath fill='white' fill-opacity='.08' d='M0 45C120 0 240 0 360 45S600 90 720 45V90H0Z'/%3E%3C/svg%3E");background-size:520px 64px;background-position:-180px 100%;animation:stats-wave-b 28s linear infinite reverse}
@keyframes stats-wave{to{background-position:760px 100%}}
@keyframes stats-wave-b{to{background-position:340px 100%}}
@media(max-width:600px){.stats::before{height:70px;background-size:560px 70px}.stats::after{height:48px;background-size:400px 48px}}
@media(prefers-reduced-motion:reduce){.stats::before,.stats::after{animation:none}}

/* Promo terbaru (beranda): dipisah Travel & Medical, bisa digeser */
.promo-row{margin-top:1.8rem}
.promo-row:first-of-type{margin-top:0}
.promo-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:.8rem;padding-left:.8rem;border-left:5px solid var(--trv)}
.promo-row-medical .promo-row-head{border-left-color:var(--med)}
.promo-row-head h3{margin:0}
.promo-track{display:flex;align-items:flex-start;gap:1rem;overflow-x:auto;scroll-snap-type:x proximity;padding:.3rem .2rem 1rem;-webkit-overflow-scrolling:touch}
.promo-card{flex:0 0 auto;display:block;height:clamp(300px,42vw,430px);max-width:86vw;scroll-snap-align:start;border-radius:18px;overflow:hidden;background:var(--mint);border:1px solid var(--line);box-shadow:0 6px 20px rgba(16,40,60,.12);transition:transform .2s,box-shadow .2s}
.promo-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(16,40,60,.18)}
.promo-card img,.promo-card video{display:block;width:100%;height:100%;object-fit:cover}
@media(prefers-reduced-motion:reduce){.promo-card{transition:none}.promo-card:hover{transform:none}}
.foot-aduan{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.7rem 1rem;margin-bottom:1.4rem;color:#fff}
.foot-aduan p{margin:0;font-weight:500}

/* ===== Payment Partners (footer) ===== */
.foot-pay{margin-top:2rem;padding-top:1.4rem;border-top:1px solid rgba(16,40,60,.2)}
.foot-pay h3{font-family:var(--sans);font-size:1.15rem;font-weight:700;margin:0 0 1rem}
.pay-list{list-style:none;margin:0 0 1.4rem;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:1rem 2rem}
.pay-list li{display:flex;align-items:center;height:36px}
.pay-list img{display:block;height:100%;width:auto;max-width:120px;object-fit:contain;filter:grayscale(1);opacity:.85;transition:opacity .2s}
.pay-list li:hover img{opacity:1}
.pay-name{font-weight:700;font-size:1rem;letter-spacing:.01em;color:rgba(16,40,60,.75)}
@media(max-width:560px){.pay-list{gap:.9rem 1.4rem}.pay-list li{height:30px}}