/* ===== Local font: BodyFont only (one family for the whole page) ===== */
@font-face{font-family:'BodyFont';src:url('../fonts/body-400.woff') format('woff');font-weight:400;font-display:swap;}
@font-face{font-family:'BodyFont';src:url('../fonts/body-500.woff') format('woff');font-weight:500;font-display:swap;}
@font-face{font-family:'BodyFont';src:url('../fonts/body-600.woff') format('woff');font-weight:600;font-display:swap;}
@font-face{font-family:'BodyFont';src:url('../fonts/body-700.woff') format('woff');font-weight:700;font-display:swap;}

/* ===== Reset ===== */
*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --cream:#EDECE6;
  --dark:#0F1015;
  --white:#FFFFFF;
  --overlay-text:#FDFBF7;
  --pink:#D29AA5;
  --ink:#222222;
}
html,body{background:var(--cream);}
body{
  font-family:'BodyFont',sans-serif;
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* ===== Page column ===== */
.page{
  max-width:520px;
  margin:0 auto;
  background:transparent;
  padding:34px 22px 0;
  min-height:100vh;
}

/* ===== Profile header ===== */
.profile{text-align:center;margin-bottom:22px;}
.avatar{
  width:96px;height:96px;border-radius:50%;object-fit:cover;
  display:block;margin:0 auto 14px;
}
.profile-title{
  font-family:'BodyFont',sans-serif;font-weight:600;
  font-size:27px;line-height:1.3;color:#000;margin-bottom:4px;
}
.profile-sub{
  font-family:'BodyFont',sans-serif;font-weight:400;
  font-size:16px;color:#000;margin-bottom:12px;
}
.profile-tag{
  font-family:'BodyFont',sans-serif;font-weight:400;
  font-size:14px;line-height:1.5;color:#000;
}

/* ===== LINE lead-magnet card ===== */
.line-card{
  background:var(--white);
  border-radius:16px;
  padding:20px 20px 22px;
  box-shadow:0 6px 20px rgba(0,0,0,.06);
  margin-bottom:26px;
}
.line-top{display:flex;align-items:center;gap:16px;margin-bottom:18px;}
.line-logo{width:54px;height:54px;border-radius:14px;object-fit:contain;flex-shrink:0;}
.line-text{flex:1;}
.line-head{
  font-family:'BodyFont',sans-serif;font-weight:500;
  font-size:19px;line-height:1.35;color:#000;margin-bottom:4px;
}
.line-sub{
  font-family:'BodyFont',sans-serif;font-weight:400;
  font-size:15px;color:#000;
}
.line-btn{
  display:block;width:100%;text-align:center;text-decoration:none;
  background:var(--dark);color:#fff;
  font-family:'BodyFont',sans-serif;font-weight:500;font-size:15px;
  padding:15px 12px;border-radius:12px;
}

/* ===== Section heading (pink) ===== */
.section-head{
  font-family:'BodyFont',sans-serif;font-weight:600;
  font-size:23px;line-height:1.25;color:#111;
  text-align:center;margin-bottom:2px;
}
.section-sub{
  font-family:'BodyFont',sans-serif;font-weight:600;
  font-size:21px;color:var(--pink);
  text-align:center;margin-bottom:16px;
}

/* ===== Image cards ===== */
.card{
  position:relative;
  border-radius:16px;overflow:hidden;
  margin-bottom:12px;
  aspect-ratio:799/446;
}
.card-img{width:100%;height:100%;object-fit:cover;display:block;}
.card-overlay{
  position:absolute;inset:0;
  display:flex;align-items:flex-end;justify-content:space-between;
  gap:10px;padding:16px 16px 16px 18px;
  background:linear-gradient(to top,rgba(0,0,0,.55) 0%,rgba(0,0,0,.12) 45%,rgba(0,0,0,0) 70%);
}
.card-titles{min-width:0;}
.card-th{
  font-family:'BodyFont',sans-serif;font-weight:700;
  font-size:19px;line-height:1.2;color:var(--overlay-text);
}
.card-en{
  font-family:'BodyFont',sans-serif;font-weight:700;
  font-size:19px;line-height:1.2;color:var(--overlay-text);
}
.book-now{
  flex-shrink:0;align-self:flex-end;
  background:var(--white);color:#000;
  font-family:'BodyFont',sans-serif;font-weight:600;font-size:14px;
  padding:9px 16px;border-radius:999px;white-space:nowrap;
}

/* ===== Divider ===== */
.divider{
  background:#F4CDD0;
  color:var(--ink);
  font-family:'BodyFont',sans-serif;font-weight:600;font-size:15px;
  text-align:center;
  padding:13px 14px;border-radius:12px;
  margin:14px 0 14px;
}

/* ===== Button card (link w/ selectable bg) ===== */
.btn-card{
  display:block;
  text-align:center;
  font-weight:700;font-size:15px;
  border-radius:12px;
  padding:13px 12px;
  margin:14px 0 14px;
  text-decoration:none;
}

/* icon rows w/ custom bg inherit tinted text color */
.list-btn.tinted .list-th,
.list-btn.tinted .list-en,
.list-btn.tinted .ic { color: inherit; }
.btn-img{width:26px;height:26px;object-fit:cover;border-radius:6px;flex-shrink:0;}
.btn-img.is-m{width:36px;height:36px;}
.btn-img.is-l{width:48px;height:48px;}
.btn-card .btn-sub{font-size:13px;font-weight:400;opacity:.85;margin-top:2px;}

/* ===== List buttons ===== */
.list-btn{
  display:flex;align-items:center;gap:14px;
  background:var(--white);text-decoration:none;
  border-radius:14px;
  padding:16px 18px;margin-bottom:10px;
  box-shadow:0 4px 14px rgba(0,0,0,.05);
  color:var(--ink);
}
.ic{width:26px;height:26px;flex-shrink:0;color:var(--ink);}
.list-emoji{font-size:22px;flex-shrink:0;width:26px;text-align:center;}
.list-txt{display:flex;flex-direction:column;gap:2px;}
.list-th{
  font-family:'BodyFont',sans-serif;font-weight:500;
  font-size:18px;line-height:1.3;color:var(--ink);
}
.list-th--solo{font-size:18px;}
.list-en{
  font-family:'BodyFont',sans-serif;font-weight:400;
  font-size:13px;line-height:1.3;color:var(--ink);
}

/* ===== Footer ===== */
.footer{
  background:var(--dark);
  color:#fff;text-align:center;
  padding:24px 20px;margin:18px -22px 0;
}
.footer p{
  font-family:'BodyFont',sans-serif;font-weight:600;
  font-size:15px;line-height:1.6;
}

/* ===== Evalyn Canva replica blocks ===== */
.ev-hero{margin:-34px -22px 18px;}
.ev-hero-img{display:block;width:100%;height:auto;}
.ev-banner{margin:0 0 14px;}
.ev-banner-img{display:block;width:100%;height:auto;border-radius:14px;}
.ev-ig{background:#fff;border:1px solid #2a3342;border-radius:10px;padding:14px 14px 16px;position:relative;margin:0 0 14px;overflow:visible;}
.ev-ig-img{float:left;width:32%;max-width:150px;height:auto;border-radius:8px;margin:0 10px 6px 0;}
.ev-ig:after{content:"";display:block;clear:both;}
.ev-ig-tx h3{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:700;font-size:21px;color:#141c2b;margin:2px 0 6px;}
.ev-ig-tx p{font-size:14px;line-height:1.55;color:#141c2b;}
.ev-ig-tx p b{color:#b91c1c;}
.ev-click{display:inline-block;margin-top:10px;border:1px solid #141c2b;border-radius:999px;padding:6px 18px;font-size:13px;font-weight:700;color:#141c2b;text-decoration:none;}
.ev-tiles{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:0 0 10px;}
.ev-tile{background:#fff;border:1px solid #e5e1d8;border-radius:12px;overflow:hidden;text-align:center;text-decoration:none;color:#141c2b;display:block;padding:0;}
.ev-tile img{display:block;width:100%;height:auto;}
.ev-tile>img{width:100%;height:auto;border-radius:8px;margin-bottom:6px;}
.ev-tile b{display:block;font-size:12px;font-weight:700;}
.ev-tile span{display:block;font-size:11px;margin-top:2px;}
.ev-tile i{display:block;font-size:10px;font-style:normal;margin-top:2px;color:#444;}
.ev-pol{display:flex;justify-content:center;gap:4px;margin-top:6px;}
.ev-pol img{width:46%;height:auto;border:3px solid #fff;box-shadow:0 1px 4px rgba(0,0,0,.18);}
.ev-pol img:first-child{transform:rotate(-6deg);}
.ev-pol img:last-child{transform:rotate(6deg);}
.ev-dots{display:grid;grid-template-columns:repeat(5,1fr);gap:4px 2px;margin-top:8px;}
.ev-dot{font-size:7px;font-weight:700;color:#333;display:flex;flex-direction:column;align-items:center;gap:2px;}
.ev-dot i{width:20px;height:20px;border-radius:50%;display:block;border:1px solid rgba(0,0,0,.12);}
.ev-menubar{background:#0a0a0a;border-radius:6px;display:flex;align-items:center;justify-content:center;gap:8px;padding:9px;color:#fff;font-size:14px;margin:0 0 12px;}
.ev-menubar svg{width:18px;height:18px;}
.ev-cta{display:flex;align-items:center;justify-content:center;gap:10px;background:#313b4a;color:#fff;border-radius:999px;padding:13px 18px;font-size:15px;font-weight:700;text-decoration:none;margin:0 0 18px;}
.ev-cta svg{width:26px;height:26px;flex-shrink:0;}
.ev-sep{width:1px;align-self:stretch;background:rgba(255,255,255,.45);}
