/* Load the shared stylesheet before the page stylesheet. */

.btn-whatsapp {
border-color:#20B26B;
    background:#fff;
    color:#128F51;
}

.btn-whatsapp:hover {
background:#F0FFF6;
}

.hhero-media {
position:relative;
    overflow:hidden;
    min-height:280px;
}

.hhero-media:before {
content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,.45) 22%,transparent 55%);
    z-index:1;
}

.hhero-media>img {
width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    display:block;
}

.hand-note {
position:absolute;
    z-index:2;
    left:18px;
    top:18px;
    color:var(--teal);
    font-style:italic;
    font-size:15px;
    line-height:1.4;
    font-weight:600;
}

.hhero-bubble {
position:absolute;
    z-index:2;
    right:14px;
    bottom:18px;
    background:#ffffffF2;
    border-radius:52px;
    padding:10px 16px 10px 10px;
    display:flex;
    align-items:center;
    gap:10px;
    box-shadow:var(--shadow);
}

.hhero-bubble img {
width:44px;
    height:44px;
}

.hhero-bubble strong {
font-size:11px;
    line-height:1.3;
    color:var(--teal-dark);
}

.global-patients {
margin:6px 18px 22px;
    display:grid;
    grid-template-columns:1fr;
    border-radius:var(--radius);
    overflow:hidden;
    background:linear-gradient(135deg,#ECFAFA,#F7F1FF);
    box-shadow:var(--shadow);
}

.global-copy {
padding:22px 20px;
}

.global-copy>span {
font-size:14px;
    font-weight:600;
    color:var(--text-soft);
}

.global-copy>strong {
display:block;
    color:var(--teal);
    font-size:38px;
    line-height:1.05;
    font-weight:800;
}

.global-copy h2 {
font-size:18px;
    line-height:1.3;
    margin:6px 0 10px;
    font-weight:800;
}

.global-copy p {
font-size:13.5px;
    line-height:1.6;
    color:var(--text);
    margin:0 0 16px;
}

.country-note {
display:flex;
    gap:8px;
    align-items:center;
    color:var(--teal);
    font-size:13px;
    font-weight:600;
}

.country-note b {
color:var(--navy);
    font-size:12px;
    line-height:1.4;
    font-weight:700;
}

.map-panel {
position:relative;
    overflow:hidden;
    min-height:200px;
}

.map-panel img {
width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.map-note {
position:absolute;
    right:16px;
    bottom:18px;
    color:var(--teal);
    font-style:italic;
    font-size:15px;
    line-height:1.35;
    font-weight:600;
}

.section-soft {
background:linear-gradient(180deg,#FBFDFF,#F5F9FC);
}

.pink-mark,.heart-mark,.support-mark {
color:var(--pink);
}

.plane-mark,.package-mark {
color:var(--purple);
}

.home-why-grid {
display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

.home-why-grid article {
border:1px solid var(--line);
    border-radius:var(--radius-sm);
    min-height:165px;
    padding:16px 12px;
    text-align:center;
    box-shadow:var(--shadow-soft);
    display:flex;
    flex-direction:column;
    align-items:center;
    transition:transform .18s ease, box-shadow .18s ease;
}

.home-why-grid article:hover {
transform:translateY(-2px);
    box-shadow:var(--shadow);
}

.home-why-grid img {
width:60px;
    height:60px;
    margin:0 auto 6px
}

.home-why-grid h3 {
font-size:13px;
    line-height:1.3;
    margin:0 0 6px;
    font-weight:700;
}

.home-why-grid p {
font-size:12px;
    line-height:1.5;
    color:var(--text);
    margin:0;
}

.treatment-heading {
align-items:flex-end;
}

.not-sure {
font-size:12px;
    color:#768198;
    text-align:right;
    line-height:1.5;
}

.not-sure a {
margin-left:8px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 12px;
    border:1px solid var(--purple);
    border-radius:8px;
    color:var(--purple);
    font-weight:700;
    background:#fff;
    font-size:12px;
}

.not-sure a:hover {
background:var(--purple-soft);
}

.home-treatment-grid {
display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
    padding-bottom:6px;
}

.treatment-card {
min-height:180px;
    border:1px solid var(--line);
    border-radius:var(--radius-sm);
    padding:18px 12px 34px;
    text-align:center;
    box-shadow:var(--shadow-soft);
    position:relative;
    background:#fff;
    display:flex;
    flex-direction:column;
    align-items:center;
    transition:transform .18s ease, box-shadow .18s ease;
}

.treatment-card:hover {
transform:translateY(-2px);
    box-shadow:var(--shadow);
}

.treatment-card img {
width:68px;
    height:68px;
    margin:0 auto 8px
}

.treatment-card h3 {
font-size:14px;
    margin:0 0 4px;
    font-weight:700;
}

.treatment-card p {
font-size:12px;
    line-height:1.45;
    color:var(--text);
    margin:0;
}

.card-arrow {
position:absolute;
    bottom:10px;
    left:50%;
    transform:translateX(-50%);
    width:46px;
    height:26px;
    border-radius:50%;
    background:#F2F7FF;
    color:#3B82F6;
    display:grid;
    place-items:center;
    font-weight:800;
    font-size:13px;
}

.journey-line {
display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    position:relative;
}

.journey-line article {
text-align:center;
    position:relative;
    z-index:1;
    border:1px solid var(--line);
    border-radius:var(--radius-sm);
    padding:16px 12px;
    background:#fff;
    box-shadow:var(--shadow-soft);
    display:flex;
    flex-direction:column;
    align-items:center;
}

main .step-no {
width:30px;
    height:30px;
    border-radius:50%;
    display:grid;
    place-items:center;
    color:#fff;
    font-size:12px;
    font-weight:800;
    margin:0 auto 8px;
}

.journey-line img {
width:66px;
    height:66px;
    background:#fff;
    margin-bottom:6px;
}

.journey-line h3 {
font-size:13.5px;
    line-height:1.3;
    margin:0 0 4px;
    font-weight:700;
}

.journey-line p {
font-size:12px;
    line-height:1.5;
    color:var(--text);
    margin:0;
}

.journey-arrow {
display:none;
}

.home-package-grid {
display:grid;
    grid-template-columns:1fr;
    gap:16px;
}

.home-package-card {
position:relative;
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto auto 1fr auto;
    border:1px solid var(--line);
    border-radius:var(--radius);
    overflow:hidden;
    box-shadow:var(--shadow-soft);
    background:#fff;
}

.home-package-card>img {
display:block;
    width:100%;
    height:auto;
    aspect-ratio:16 / 10;
    object-fit:cover;
    order:2;
    grid-row:2;
}

.package-copy {
grid-row:1;
    padding:18px 16px 4px;
}

.package-copy h3 {
font-size:16px;
    color:var(--teal);
    margin:0 0 10px;
    font-weight:800;
}

.package-copy ul {
list-style:none;
    padding:0;
    margin:0;
    color:var(--text);
    font-size:13px;
    line-height:1.7;
}

.package-copy li {
position:relative;
    padding-left:20px;
}

.package-copy li:before {
content:"✓";
    position:absolute;
    left:0;
    top:0;
    color:var(--teal);
    font-weight:800;
}

.hpprice {
margin-top:12px;
    display:flex;
    align-items:baseline;
    gap:6px;
}

.hpprice small {
font-size:12px;
    color:var(--text-soft);
}

.hpprice strong {
color:var(--teal);
    font-size:24px;
    font-weight:800;
    line-height:1;
}

.home-package-card>a {
grid-row:4;
    margin:0 16px 18px;
    border:1.5px solid var(--teal);
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--teal);
    font-size:13px;
    font-weight:700;
    padding:12px;
    transition:background .15s ease;
    align-self:end;
    margin-top: 8px
}

.home-package-card>a:hover {
background:var(--teal-soft);
}

.support-title {
margin-bottom:16px;
}

.support-grid {
display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

.support-grid a {
min-height:150px;
    border:1px solid var(--line);
    border-radius:var(--radius-sm);
    text-align:center;
    padding:16px 12px;
    box-shadow:var(--shadow-soft);
    display:flex;
    flex-direction:column;
    align-items:center;
    transition:transform .18s ease, box-shadow .18s ease;
}

.support-grid a:hover {
transform:translateY(-2px);
    box-shadow:var(--shadow);
}

.support-grid img {
width:68px;
    height:68px;
    margin-bottom:6px
}

.support-grid h3 {
font-size:13px;
    line-height:1.3;
    margin:0 0 6px;
    font-weight:700;
}

.support-grid p {
font-size:12px;
    line-height:1.5;
    color:var(--text);
    margin:0;
}

.patient-story {
margin:12px 18px 24px;
    border-radius:var(--radius);
    overflow:hidden;
    display:grid;
    grid-template-columns:1fr;
    background:linear-gradient(135deg,#EAF8FA,#E9F4F8);
    box-shadow:var(--shadow);
}

.story-quote {
padding:24px 20px 18px;
    position:relative;
}

.story-quote:before {
content:"“";
    position:absolute;
    left:10px;
    top:6px;
    color:#3878F5;
    font-size:44px;
    font-weight:800;
    line-height:1;
}

.story-quote blockquote {
font-size:13.5px;
    line-height:1.65;
    color:var(--text);
    margin:0 0 8px;
    padding-left:18px;
}

.story-quote p {
font-size:12px;
    color:var(--text-soft);
    margin:0;
    padding-left:18px;
    font-weight:600;
}

.final-note {
color:var(--teal);
    font-style:italic;
    font-size:14px;
    line-height:1.3;
    text-align:center;
    font-weight:600;
}

@media (min-width:640px) {
.hand-note {
left:10px;
    top:40px;
    font-size:16px;
}
}

@media (min-width:640px) {
.hhero-bubble {
right:16px;
    bottom:24px;
}
}

@media (min-width:640px) {
.hhero-bubble strong {
font-size:11.5px;
}
}

@media (min-width:640px) {
.global-patients {
grid-template-columns:42% 58%;
    min-height:260px;
    margin:10px 24px 28px;
}
}

@media (min-width:640px) {
.global-copy {
padding:28px 22px 24px 26px;
}
}

@media (min-width:640px) {
.global-copy>strong {
font-size:42px;
}
}

@media (min-width:640px) {
.global-copy h2 {
font-size:19px;
}
}

@media (min-width:640px) {
.global-copy p {
font-size:13.5px;
}
}

@media (min-width:640px) {
.home-why-grid {
grid-template-columns:repeat(3,1fr);
}
}

@media (min-width:640px) {
.home-treatment-grid {
grid-template-columns:repeat(3,1fr);
}
}

@media (min-width:640px) {
.home-package-grid {
grid-template-columns:repeat(2,1fr);
    gap:18px;
}
}

@media (min-width:640px) {
.home-package-card>img {
aspect-ratio:16 / 9;
}
}

@media (min-width:640px) {
.support-grid {
grid-template-columns:repeat(3,1fr);
}
}

@media (min-width:640px) {
.journey-line {
grid-template-columns:repeat(5,1fr);
    gap:10px;
}
}

@media (min-width:640px) {
.journey-line article {
padding:14px 8px;
}
}

@media (min-width:640px) {
.journey-line h3 {
font-size:12px;
}
}

@media (min-width:640px) {
.journey-line p {
font-size:11px;
}
}

@media (min-width:640px) {
.step-no {
width:28px;
    height:28px;
    font-size:11px;
}
}

@media (min-width:640px) {
.patient-story {
grid-template-columns:44% 56%;
    margin:14px 24px 30px;
}
}

@media (min-width:640px) {
.final-note {
text-align:left;
}
}

@media (min-width:900px) {
.hand-note {
left:18px;
    top:70px;
    font-size:20px;
}
}

@media (min-width:900px) {
.hhero-bubble {
right:26px;
    bottom:80px;
    padding:10px 20px 10px 12px;
}
}

@media (min-width:900px) {
.hhero-bubble img {
width:60px;
    height:60px;
}
}

@media (min-width:900px) {
.hhero-bubble strong {
font-size:13px;
}
}

@media (min-width:900px) {
.hhero-media:before {
background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.55) 20%,transparent 55%);
}
}

@media (min-width:900px) {
.global-patients {
margin:16px 56px 40px;
    grid-template-columns:32% 68%;
    min-height:300px;
}
}

@media (min-width:900px) {
.global-copy {
padding:38px 24px 28px 36px;
}
}

@media (min-width:900px) {
.global-copy>span {
font-size:17px;
}
}

@media (min-width:900px) {
.global-copy>strong {
font-size:52px;
}
}

@media (min-width:900px) {
.global-copy h2 {
font-size:22px;
}
}

@media (min-width:900px) {
.global-copy p {
font-size:14px;
    max-width:300px;
}
}

@media (min-width:900px) {
.country-note {
font-size:16px;
}
}

@media (min-width:900px) {
.country-note b {
font-size:13px;
}
}

@media (min-width:900px) {
.map-note {
font-size:20px;
    right:34px;
    bottom:38px;
}
}

@media (min-width:900px) {
.home-why-grid {
grid-template-columns:repeat(5,1fr)!important;
    gap:16px;
}
}

@media (min-width:900px) {
.home-why-grid article {
min-height:200px;
    padding:22px 14px;
}
}

@media (min-width:900px) {
.home-why-grid img {
width:68px;
    height:68px;
}
}

@media (min-width:900px) {
.home-why-grid h3 {
font-size:14.5px;
}
}

@media (min-width:900px) {
.home-why-grid p {
font-size:13px;
}
}

@media (min-width:900px) {
.not-sure {
font-size:13px;
}
}

@media (min-width:900px) {
.not-sure a {
padding:10px 16px;
    font-size:13px;
}
}

@media (min-width:900px) {
.home-treatment-grid {
grid-template-columns:repeat(7,1fr);
    gap:14px;
}
}

@media (min-width:900px) {
.treatment-card {
min-height:210px;
    padding:22px 10px 40px;
}
}
@media (min-width:900px) {
.treatment-card h3 {
font-size:14px;
}
}

@media (min-width:900px) {
.treatment-card p {
font-size:12.5px;
}
}

@media (min-width:900px) {
.card-arrow {
width:44px;
    height:26px;
    border-radius:14px;
    font-size:14px;
}
}

@media (min-width:900px) {
.journey-line {
display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:0;
    position:relative;
}
}

@media (min-width:900px) {
.journey-line:before {
content:"";
    position:absolute;
    left:8%;
    right:8%;
    top:34px;
    border-top:2px dashed #CFE1F1;
    z-index:0;
}
}

@media (min-width:900px) {
.journey-line article {
width:17%;
    border:0;
    box-shadow:none;
    background:transparent;
    padding:0;
    min-width:0;
}
}

@media (min-width:900px) {
.step-no {
width:32px;
    height:32px;
    font-size:12px;
    margin-bottom:6px;
}
}

@media (min-width:900px) {
.journey-line img {
    background:#fff;
    margin-bottom:8px;
}
}

@media (min-width:900px) {
.journey-line h3 {
font-size:13.5px;
}
}

@media (min-width:900px) {
.journey-line p {
font-size:12px;
}
}

@media (min-width:900px) {
.journey-arrow {
display:block;
    color:#66AEE1;
    font-size:26px;
    padding-top:52px;
    font-weight:700;
    line-height:1;
}
}

@media (min-width:900px) {
.home-package-grid {
grid-template-columns:repeat(3,1fr);
    gap:22px;
}
}

@media (min-width:900px) {
.home-package-card {
grid-template-columns:1.15fr 0.85fr;
    grid-template-rows:1fr auto;
    min-height:330px;
}
}

@media (min-width:900px) {
.package-copy {
grid-column:1;
    grid-row:1;
    padding:22px 18px 10px;
    display:flex;
    flex-direction:column;
}
}

@media (min-width:900px) {
.home-package-card>img {
grid-column:2;
    grid-row:1 / span 2;
    width:100%;
    height:100%;
    aspect-ratio:auto;
    object-fit:cover;
}
}

@media (min-width:900px) {
.home-package-card>a {
grid-column:1;
    grid-row:2;
    margin:8px 18px 20px;
}
}

@media (min-width:900px) {
.support-grid {
grid-template-columns:repeat(6,1fr);
    gap:16px;
}
}

@media (min-width:900px) {
.support-grid a {
min-height:180px;
    padding:22px 12px;
}
}

@media (min-width:900px) {
.support-grid h3 {
font-size:13.5px;
}
}

@media (min-width:900px) {
.support-grid p {
font-size:12px;
}
}

@media (min-width:900px) {
.patient-story {
margin:20px 56px 40px;
    min-height:250px;
    grid-template-columns:44% 56%;
}
}

@media (min-width:900px) {
.story-quote {
padding:48px 40px 24px;
}
}

@media (min-width:900px) {
.story-quote:before {
font-size:56px;
    left:16px;
    top:14px;
}
}

@media (min-width:900px) {
.story-quote blockquote {
font-size:15px;
    padding-left:22px;
}
}

@media (min-width:900px) {
.story-quote p {
font-size:13px;
    padding-left:22px;
}
}

@media (min-width:900px) {
.final-note {
font-size:20px;
    text-align:center;
}
}

@media (min-width:1200px) {
.home-why-grid article {
min-height:215px;
}
}

@media (min-width:1200px) {
.home-why-grid h3 {
font-size:15px;
}
}

@media (min-width:1200px) {
.home-why-grid p {
font-size:13.5px;
}
}

@media (min-width:1200px) {
.treatment-card h3 {
font-size:15px;
}
}

@media (min-width:1200px) {
.treatment-card p {
font-size:13px;
}
}

@media (min-width:1200px) {
.home-package-card {
min-height:350px;
}
}

@media (min-width:1200px) {
.package-copy {
padding:26px 20px 12px;
}
}

@media (min-width:1200px) {
.package-copy h3 {
font-size:18px;
}
}

@media (min-width:1200px) {
.package-copy ul {
font-size:14px;
    line-height:1.8;
}
}

@media (min-width:1200px) {
.hpprice strong {
font-size:28px;
}
}

@media (min-width:1200px) {
.home-package-card>a {
font-size:14px;
    padding:14px;
}
}

@media (min-width:1200px) {
.support-grid h3 {
font-size:14px;
}
}

@media (min-width:1200px) {
.support-grid p {
font-size:12.5px;
}
}

.step-no {
width:26px;
    height:26px;
    display:grid;
    place-items:center;
    margin:0 auto 8px;
    border-radius:50%;
    color:#fff;
    font-size:12px;
    font-weight:800;
}

.step-no.teal {
background:var(--teal);
}

.step-no.purple {
background:var(--purple);
}

.step-no.pink {
background:var(--pink);
}

.support-grid {
display:grid;
    gap:12px;
    width:100%;
}

.support-grid article {
border:1px solid var(--line);
    border-radius:var(--radius-md);
    text-align:center;
    padding:18px 14px;
    box-shadow:var(--shadow-sm);
    background:#fff;
}

.support-grid img {
width:68px;
    height:68px;
    margin:0 auto
}

.support-grid h3 {
font-size:15px;
    margin:8px 0 6px;
    font-weight:800;
}

.support-grid p {
font-size:13px;
    line-height:1.55;
    color:var(--text);
    margin:0;
}

.journey-arrow {
color:#abb5c5;
    font-size:20px;
    padding-top:22px;
}

main .price {
color:var(--teal);
    font-size:26px;
    font-weight:800;
    line-height:1.2;
    margin:4px 0 12px;
}

@media(min-width:900px) {
main .price {
font-size:32px;
    margin:6px 0 14px;
}
}

.support-grid {
display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:6px;
    margin-bottom:8px;
}

.support-grid a {
min-height:91px;
    background:#fff;
    border:1px solid var(--line);
    border-radius:7px;
    text-align:center;
    padding:7px 3px;
}

.support-grid img {
width:68px;
    height:68px
}

.support-grid span {
display:block;
    font-size:7.9px;
    line-height:1.15;
    font-weight:700;
    margin-top:3px;
}

.final-note {
position:absolute;
    right:13px;
    bottom:48px;
    color:var(--teal);
    font-style:italic;
    font-size:11px;
    line-height:1.35;
}

@media(min-width:900px) {
.support-grid {
grid-template-columns:repeat(6,1fr);
    gap:5px;
}
}

@media(min-width:900px) {
.support-grid a {
min-height:95px;
}
}
@media(min-width:900px) {
.support-grid span {
font-size:7.7px;
}
}

@media(min-width:900px) {
.final-note {
position:static;
    grid-column:4;
    font-size:11px;
    padding-left:4px;
}
}
