/* Swell PH shared design system: "Ube at Pandan".
   Loaded by every page (static <head> and <helmet>). Plain CSS, no build step.
   Tokens, layout, contained components (panels, cards, steps, tiles, accordions),
   the sticky translucent header, and reduced-motion rules live here. */

:root{
  --sw-ivory:#FBFAFF; --sw-white:#FFFFFF; --sw-ink:#2B1E4A;
  --sw-ink-88:rgba(43,30,74,.88); --sw-ink-80:rgba(43,30,74,.8); --sw-ink-72:rgba(43,30,74,.72);
  --sw-ink-60:rgba(43,30,74,.6); --sw-ink-50:rgba(43,30,74,.5);
  --sw-ube:#6B44B8; --sw-ube-dark:#4F3391; --sw-ube-tint:#EFE9FB; --sw-ube-pale:#F4F1FB; --sw-ube-soft:#D9CDF3;
  --sw-pandan:#3A9A5F; --sw-pandan-dark:#256B42; --sw-pandan-tint:#E4F4EA;
  --sw-mango:#F2B524; --sw-mango-dark:#7A5A0C; --sw-mango-tint:#FDF3D6;
  --sw-coral:#EE6A4F; --sw-coral-dark:#A83E27; --sw-coral-tint:#FDE9E4;
  --sw-line:rgba(43,30,74,.08); --sw-line-strong:rgba(43,30,74,.14);
  --sw-r-xl:32px; --sw-r-lg:28px; --sw-r-md:24px; --sw-r-sm:20px; --sw-r-xs:16px;
  --sw-shadow:0 1px 2px rgba(43,30,74,.04),0 12px 32px -24px rgba(43,30,74,.22);
  --sw-shadow-lift:0 2px 6px rgba(43,30,74,.05),0 24px 48px -24px rgba(107,68,184,.38);
  --sw-shadow-float:0 24px 60px -28px rgba(43,30,74,.45),0 0 0 1px rgba(43,30,74,.06);
  --sw-gutter:clamp(20px,5vw,64px);
  --sw-sect:clamp(56px,8vw,96px);
  --sw-gap:clamp(16px,2vw,24px);
  --sw-head:'Plus Jakarta Sans',sans-serif;
  --sw-body:'DM Sans',system-ui,sans-serif;
  --sw-ease:cubic-bezier(.2,.7,.2,1);
  --sw-pride:linear-gradient(90deg,#E63946 0 16.6%,#F4A261 16.6% 33.3%,#E9C46A 33.3% 50%,#2A9D8F 50% 66.6%,#3D6BB3 66.6% 83.3%,#8E5BB5 83.3% 100%);
}

/* ---------- Base ---------- */
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--sw-ivory);color:var(--sw-ink);font-family:var(--sw-body);-webkit-font-smoothing:antialiased;text-wrap:pretty}
a{color:var(--sw-ube)}a:hover{color:var(--sw-ube-dark)}
*,*::before,*::after{box-sizing:border-box}
.sw-page{min-height:100vh;background:var(--sw-ivory)}
.sw-main{display:flex;flex-direction:column;gap:clamp(20px,3vw,32px);padding:clamp(16px,2.5vw,28px) 0 clamp(40px,6vw,72px)}
.sw-main > *{min-width:0;width:100%}
.sw-page{overflow-x:clip}

/* Bilingual copy: every text node is an EN/TL pair, the page root chooses. */
[lang="tl"]{display:none !important}
[data-lang="tl"] [lang="tl"]{display:revert !important}
[data-lang="tl"] [lang="en"]{display:none !important}
@media (max-width:700px){[data-hide-narrow]{display:none !important}}

/* ---------- Layout ---------- */
.sw-wrap{max-width:1240px;margin:0 auto;padding-left:var(--sw-gutter);padding-right:var(--sw-gutter)}
.sw-wrap--narrow{max-width:900px}
.sw-grid{display:grid;gap:var(--sw-gap)}
.sw-grid--tight{gap:12px}
[data-cols="2-4"]{grid-template-columns:repeat(2,minmax(0,1fr))}
[data-cols="3"]{grid-template-columns:minmax(0,1fr)}
[data-cols="2"]{grid-template-columns:minmax(0,1fr)}
[data-cols="3-6"]{grid-template-columns:repeat(3,minmax(0,1fr))}
[data-cols="2-3"]{grid-template-columns:repeat(2,minmax(0,1fr))}
[data-cols="auto"]{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
[data-cols="auto-lg"]{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
@media (min-width:640px){[data-cols="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1000px){[data-cols="2-4"]{grid-template-columns:repeat(4,minmax(0,1fr))}[data-cols="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}[data-cols="3-6"]{grid-template-columns:repeat(6,minmax(0,1fr))}[data-cols="2-3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1000px){[data-cols="2-4"] > :nth-child(4n+1):last-child{grid-column:1 / -1}}
@media (min-width:561px) and (max-width:999px){[data-cols="2-4"] > :nth-child(odd):last-child{grid-column:1 / -1}}
@media (max-width:560px){[data-cols="2-4"]{grid-template-columns:minmax(0,1fr)}[data-cols="3-6"]{grid-template-columns:repeat(2,minmax(0,1fr))}[data-cols="2-3"]{grid-template-columns:minmax(0,1fr)}}
.sw-split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:clamp(28px,4vw,56px) clamp(28px,5vw,72px);align-items:center}
.sw-split--top{align-items:start}
@media (min-width:900px){.sw-split--side{grid-template-columns:minmax(0,1fr) minmax(0,1.7fr)}.sw-split--main{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}}
.sw-stack{display:flex;flex-direction:column;gap:12px}
.sw-stack--lg{gap:var(--sw-gap)}
.sw-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------- Type ---------- */
.sw-h1,.sw-h2,.sw-h3,.sw-h4{margin:0;font-family:var(--sw-head);color:inherit}
.sw-h1{font-weight:800;font-size:clamp(36px,5vw,64px);line-height:1.03;letter-spacing:-.035em}
.sw-h1--xl{font-size:clamp(40px,5.6vw,76px);line-height:1;letter-spacing:-.04em}
.sw-h2{font-weight:800;font-size:clamp(28px,3.4vw,44px);line-height:1.08;letter-spacing:-.03em}
.sw-h2--sm{font-size:clamp(24px,2.6vw,32px);line-height:1.12;letter-spacing:-.025em}
.sw-h3{font-weight:700;font-size:20px;line-height:1.2;letter-spacing:-.02em}
.sw-h3--lg{font-size:24px;line-height:1.15}
.sw-h4{font-weight:700;font-size:17px;line-height:1.25;letter-spacing:-.015em}
.sw-lede{margin:0;font-size:clamp(16.5px,1.3vw,18px);line-height:1.55;color:var(--sw-ink-80);max-width:56ch}
.sw-body{margin:0;font-size:15.5px;line-height:1.55;color:var(--sw-ink-80)}
.sw-body--lg{font-size:17px;line-height:1.6}
.sw-small{margin:0;font-size:14px;line-height:1.5;color:var(--sw-ink-60)}
.sw-muted{color:var(--sw-ink-60)}
.sw-accent{color:var(--sw-ube)}
.sw-kicker{margin:0;font-family:var(--sw-head);font-weight:700;font-size:19px;line-height:1.4;letter-spacing:-.015em}
.sw-baybayin{font-family:'Noto Sans Tagalog',sans-serif;line-height:1;color:var(--sw-ube)}

/* ---------- Eyebrow labels (bilingual pill with a dot) ---------- */
.sw-eyebrow{display:inline-flex;align-self:flex-start;align-items:center;gap:8px;padding:7px 14px 7px 10px;border-radius:999px;background:var(--sw-ube-tint);color:var(--sw-ube-dark);font-family:var(--sw-body);font-size:13px;font-weight:700;line-height:1;letter-spacing:.005em;white-space:nowrap}
.sw-eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.85;flex:none}
.sw-eyebrow[data-tone="pandan"]{background:var(--sw-pandan-tint);color:var(--sw-pandan-dark)}
.sw-eyebrow[data-tone="mango"]{background:var(--sw-mango-tint);color:var(--sw-mango-dark)}
.sw-eyebrow[data-tone="coral"]{background:var(--sw-coral-tint);color:var(--sw-coral-dark)}
.sw-eyebrow[data-tone="ink"]{background:var(--sw-ink);color:var(--sw-ivory)}
.sw-eyebrow[data-tone="white"]{background:var(--sw-white);color:var(--sw-ube-dark);box-shadow:0 1px 2px rgba(43,30,74,.06)}
.sw-eyebrow[data-tone="white-pandan"]{background:var(--sw-white);color:var(--sw-pandan-dark)}
.sw-eyebrow[data-tone="white-mango"]{background:var(--sw-white);color:var(--sw-mango-dark)}
.sw-eyebrow[data-tone="white-coral"]{background:var(--sw-white);color:var(--sw-coral-dark)}
.sw-eyebrow[data-tone="glass"]{background:rgba(251,250,255,.14);color:#F2B524}
.sw-eyebrow--live::before{background:var(--sw-pandan);opacity:1;animation:sw-pulse 2s infinite}
.sw-eyebrow--nodot::before{display:none}
.sw-pride-dot{width:18px;height:18px;border-radius:50%;background:conic-gradient(#E63946,#F4A261,#E9C46A,#2A9D8F,#3D6BB3,#8E5BB5,#E63946);display:inline-block;flex:none}
@keyframes sw-pulse{0%,100%{box-shadow:0 0 0 0 rgba(58,154,95,.5)}70%{box-shadow:0 0 0 8px rgba(58,154,95,0)}}

/* Section header: eyebrow, heading, lede, contained together. */
.sw-sechead{display:flex;flex-direction:column;align-items:flex-start;gap:14px;max-width:64ch}
.sw-sechead .sw-h2{max-width:22ch}
.sw-sechead--center{align-items:center;text-align:center;margin:0 auto}
.sw-sechead--wide .sw-h2{max-width:none}
.sw-sechead--row{flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;max-width:none;gap:16px 24px}

/* ---------- Panels: large rounded section containers ---------- */
.sw-panel{position:relative;border-radius:var(--sw-r-xl);padding:clamp(24px,4vw,48px);background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow)}
.sw-panel--clip{overflow:hidden}
.sw-panel--soft{background:linear-gradient(160deg,#FFFFFF 0%,#F7F4FD 60%,#FDF6E4 100%)}
.sw-panel--ube{background:var(--sw-ube-pale);border-color:transparent;box-shadow:none}
.sw-panel--ube-tint{background:var(--sw-ube-tint);border-color:transparent;box-shadow:none}
.sw-panel--pandan{background:var(--sw-pandan-tint);border-color:transparent;box-shadow:none}
.sw-panel--mango{background:var(--sw-mango-tint);border-color:transparent;box-shadow:none}
.sw-panel--coral{background:var(--sw-coral-tint);border-color:transparent;box-shadow:none}
.sw-panel--blend{background:linear-gradient(120deg,#EFE9FB 0%,#E4F4EA 50%,#FDE9E4 100%);border-color:transparent;box-shadow:none}
.sw-panel--dark{background:linear-gradient(135deg,#6B44B8,#4F3391);color:var(--sw-ivory);border-color:transparent;box-shadow:0 30px 60px -36px rgba(79,51,145,.7)}
.sw-panel--ink{background:var(--sw-ink);color:var(--sw-ivory);border-color:transparent;box-shadow:0 30px 60px -36px rgba(43,30,74,.7)}
.sw-panel--dark .sw-lede,.sw-panel--dark .sw-body,.sw-panel--dark .sw-small,.sw-panel--ink .sw-lede,.sw-panel--ink .sw-body,.sw-panel--ink .sw-small{color:rgba(251,250,255,.82)}
.sw-panel > .sw-stack--lg,.sw-panel > .sw-grid,.sw-panel > .sw-split{position:relative;z-index:1}
.sw-panel__motif{position:absolute;pointer-events:none;z-index:0}
.sw-panel__bg{position:absolute;inset:0;pointer-events:none;z-index:0}
.sw-panel__stripe{position:absolute;left:0;right:0;top:0;height:7px;background:var(--sw-pride)}
.sw-panel--pride{border-top:0}
.sw-panel > .sw-sechead,.sw-panel > .sw-h2,.sw-panel > .sw-split,.sw-panel > .sw-stack,.sw-panel > .sw-grid,.sw-panel > .sw-row{position:relative;z-index:1}
.sw-panel > * + .sw-grid,.sw-panel > * + .sw-stack--lg,.sw-panel > * + .sw-split,.sw-panel > .sw-sechead + *{margin-top:clamp(22px,3vw,34px)}

/* ---------- Cards ---------- */
.sw-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:24px;border-radius:var(--sw-r-md);background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow);color:var(--sw-ink);text-decoration:none;transition:transform .35s var(--sw-ease),box-shadow .35s var(--sw-ease),border-color .35s}
.sw-card--lg{padding:clamp(24px,3vw,32px);border-radius:var(--sw-r-lg)}
.sw-card--sm{padding:18px 20px;border-radius:var(--sw-r-sm);gap:6px}
.sw-card--flat{box-shadow:none}
.sw-card--ube{background:var(--sw-ube-tint);border-color:transparent}
.sw-card--pale{background:var(--sw-ube-pale);border-color:transparent}
.sw-card--pandan{background:var(--sw-pandan-tint);border-color:transparent}
.sw-card--mango{background:var(--sw-mango-tint);border-color:transparent}
.sw-card--coral{background:var(--sw-coral-tint);border-color:transparent}
.sw-card--ink{background:var(--sw-ink);color:var(--sw-ivory);border-color:transparent}
.sw-card--gradient{background:linear-gradient(135deg,#6B44B8,#4F3391);color:var(--sw-ivory);border-color:transparent}
.sw-card--gradient .sw-body,.sw-card--ink .sw-body{color:rgba(251,250,255,.85)}
a.sw-card:hover,.sw-card--lift:hover{transform:translateY(-3px);box-shadow:var(--sw-shadow-lift);border-color:rgba(107,68,184,.18)}
a.sw-card:focus-visible{outline:3px solid rgba(107,68,184,.35);outline-offset:2px}
.sw-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.sw-card__foot{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.sw-card__corner{position:absolute;right:16px;top:14px;pointer-events:none;opacity:.9}

/* Icon squares and dots (consistent 44px) */
.sw-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:none;background:var(--sw-ube-tint);color:var(--sw-ube)}
.sw-icon[data-tone="pandan"]{background:var(--sw-pandan-tint);color:var(--sw-pandan)}
.sw-icon[data-tone="mango"]{background:var(--sw-mango-tint);color:var(--sw-mango)}
.sw-icon[data-tone="coral"]{background:var(--sw-coral-tint);color:var(--sw-coral)}
.sw-icon[data-tone="pale"]{background:var(--sw-ube-pale)}
.sw-icon[data-tone="white"]{background:var(--sw-white)}
.sw-icon[data-tone="glass"]{background:rgba(251,250,255,.18);color:var(--sw-ivory)}
.sw-icon__dot{width:14px;height:14px;border-radius:50%;background:currentColor}
.sw-icon > ph-motif{width:30px;height:30px}
.sw-icon--lg{width:52px;height:52px;border-radius:16px}
.sw-icon--lg > ph-motif{width:36px;height:36px}

/* Chips: small tags */
.sw-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:700;line-height:1;background:var(--sw-ube-tint);color:var(--sw-ube-dark);white-space:nowrap}
.sw-chip[data-tone="pandan"]{background:var(--sw-pandan-tint);color:var(--sw-pandan-dark)}
.sw-chip[data-tone="mango"]{background:var(--sw-mango-tint);color:var(--sw-mango-dark)}
.sw-chip[data-tone="coral"]{background:var(--sw-coral-tint);color:var(--sw-coral-dark)}
.sw-chip[data-tone="white"]{background:var(--sw-white);color:var(--sw-ink);box-shadow:0 1px 2px rgba(43,30,74,.06)}
.sw-chip--xs{font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px}
.sw-chip--alert{color:var(--sw-coral-dark);background:var(--sw-coral-tint)}
.sw-chip--lg{font-size:14px;font-weight:600;padding:9px 16px}
.sw-card > .sw-chip,.sw-stack > .sw-chip,.sw-tile > .sw-chip{align-self:flex-start}
a.sw-chip{text-decoration:none;transition:filter .25s,transform .25s}
a.sw-chip:hover{filter:brightness(.95);transform:translateY(-1px)}

/* Trust strip: pills inside one contained bar */
.sw-strip{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:14px 16px;border-radius:999px;background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow)}
@media (max-width:640px){.sw-strip{border-radius:var(--sw-r-md)}}

/* ---------- Buttons ---------- */
.sw-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 26px;border-radius:999px;border:0;cursor:pointer;font-family:var(--sw-head);font-weight:700;font-size:16px;line-height:1.1;text-decoration:none;white-space:nowrap;transition:transform .25s var(--sw-ease),background .25s,box-shadow .25s,color .25s}
.sw-btn--primary{background:var(--sw-ube);color:var(--sw-ivory);box-shadow:0 14px 30px -14px rgba(107,68,184,.6)}
.sw-btn--primary:hover{background:var(--sw-ube-dark);color:var(--sw-ivory);transform:translateY(-1px);box-shadow:0 18px 34px -14px rgba(107,68,184,.7)}
.sw-btn--secondary{background:var(--sw-ube-tint);color:var(--sw-ube-dark)}
.sw-btn--secondary:hover{background:#E3DAF7;color:var(--sw-ube-dark);transform:translateY(-1px)}
.sw-btn--dark{background:var(--sw-ink);color:var(--sw-ivory)}
.sw-btn--dark:hover{background:var(--sw-ube-dark);color:var(--sw-ivory);transform:translateY(-1px)}
.sw-btn--light{background:var(--sw-ivory);color:var(--sw-ube-dark)}
.sw-btn--light:hover{background:var(--sw-ube-tint);color:var(--sw-ube-dark);transform:translateY(-1px)}
.sw-btn--ghost{background:transparent;color:var(--sw-ube-dark);box-shadow:inset 0 0 0 1.5px var(--sw-line-strong)}
.sw-btn--ghost:hover{background:var(--sw-ube-tint);color:var(--sw-ube-dark)}
.sw-btn--sm{padding:11px 18px;font-size:14px}
.sw-btn--soon{background:rgba(251,250,255,.14);border:1.5px dashed rgba(251,250,255,.5);color:var(--sw-ivory);cursor:default}
.sw-btn:focus-visible{outline:3px solid rgba(107,68,184,.35);outline-offset:2px}
.sw-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--sw-head);font-weight:700;font-size:15px;color:var(--sw-ube);text-decoration:none}
.sw-link:hover{color:var(--sw-ube-dark);text-decoration:underline;text-underline-offset:3px}
.sw-link--coral{color:var(--sw-coral-dark)}
.sw-link--coral:hover{color:var(--sw-coral-dark)}

/* ---------- Steps (numbered cards) ---------- */
.sw-step{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:start;padding:20px 22px;border-radius:var(--sw-r-md);background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow)}
.sw-step--plain{padding:0;border:0;box-shadow:none;background:transparent}
.sw-step__n{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-family:var(--sw-head);font-weight:800;font-size:17px;color:var(--sw-ivory);background:var(--sw-ube);box-shadow:0 8px 18px -10px rgba(43,30,74,.5)}
.sw-step__n[data-tone="pandan"]{background:var(--sw-pandan)}
.sw-step__n[data-tone="coral"]{background:var(--sw-coral)}
.sw-step__n[data-tone="mango"]{background:var(--sw-mango);color:var(--sw-ink)}
.sw-step__body{display:flex;flex-direction:column;gap:6px;min-width:0}
.sw-step__body .sw-h3{font-size:19px}

/* ---------- Tiles (values, stats, quick facts) ---------- */
.sw-tile{display:flex;flex-direction:column;gap:8px;padding:20px 20px 18px;border-radius:var(--sw-r-sm);background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow);color:var(--sw-ink);text-decoration:none;transition:transform .35s var(--sw-ease),box-shadow .35s var(--sw-ease)}
.sw-tile--lift:hover{transform:translateY(-3px);box-shadow:var(--sw-shadow-lift)}
.sw-tile__label{font-family:var(--sw-head);font-weight:800;font-size:18px;letter-spacing:-.02em;line-height:1.15}
.sw-tile__sub{font-size:13px;font-weight:600;color:var(--sw-ink-60)}
.sw-tile__big{font-family:var(--sw-head);font-weight:800;font-size:clamp(26px,2.6vw,34px);letter-spacing:-.03em;line-height:1}
.sw-tile > ph-motif{width:36px;height:36px}
@media (max-width:560px){.sw-tile{padding:16px 14px 14px}.sw-tile__label{font-size:17px}}

/* ---------- Quote / letter card ---------- */
.sw-quote{position:relative;padding:clamp(26px,4vw,48px);border-radius:var(--sw-r-lg);background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow);font-size:clamp(16.5px,1.3vw,18px);line-height:1.65;color:var(--sw-ink-88)}
.sw-quote::before{content:"\201C";position:absolute;left:clamp(14px,2.4vw,28px);top:-4px;font-family:var(--sw-head);font-weight:800;font-size:clamp(64px,7vw,96px);line-height:1;color:var(--sw-ube-tint);pointer-events:none}
.sw-quote > p{margin:0;position:relative}
.sw-panel > .sw-sechead + .sw-quote{margin-top:clamp(22px,3vw,34px)}
.sw-quote > p + p{margin-top:20px}
.sw-quote__sig{display:flex;align-items:center;gap:14px;margin-top:26px;padding-top:22px;border-top:1px solid var(--sw-line);font-family:var(--sw-head);font-weight:700;font-size:16px;color:var(--sw-ink)}
.sw-quote__sig ph-motif{width:34px;height:34px}

/* ---------- Callouts ---------- */
.sw-callout{display:flex;gap:14px;align-items:flex-start;padding:18px 20px;border-radius:var(--sw-r-sm);background:var(--sw-coral-tint);color:var(--sw-ink);border:1px solid rgba(238,106,79,.18)}
.sw-callout[data-tone="pandan"]{background:var(--sw-pandan-tint);border-color:rgba(58,154,95,.18)}
.sw-callout[data-tone="mango"]{background:var(--sw-mango-tint);border-color:rgba(242,181,36,.25)}
.sw-callout[data-tone="ube"]{background:var(--sw-ube-tint);border-color:rgba(107,68,184,.16)}
.sw-callout[data-tone="white"]{background:var(--sw-white);border-color:var(--sw-line)}
.sw-callout__mark{width:34px;height:34px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--sw-white);color:var(--sw-coral-dark);font-family:var(--sw-head);font-weight:800;font-size:16px}
.sw-callout[data-tone="pandan"] .sw-callout__mark{color:var(--sw-pandan-dark)}
.sw-callout[data-tone="mango"] .sw-callout__mark{color:var(--sw-mango-dark)}
.sw-callout[data-tone="ube"] .sw-callout__mark,.sw-callout[data-tone="white"] .sw-callout__mark{color:var(--sw-ube-dark)}
.sw-callout[data-tone="white"] .sw-callout__mark{background:var(--sw-ube-tint)}
.sw-callout__text{margin:0;font-size:14.5px;line-height:1.5;color:var(--sw-ink-80)}
.sw-callout__text strong{color:var(--sw-ink);font-family:var(--sw-head)}

/* ---------- Lists with colored dots ---------- */
.sw-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.sw-list li{display:flex;gap:10px;font-size:15.5px;line-height:1.5;color:var(--sw-ink-88)}
.sw-list li::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--dot,var(--sw-ube));flex:none;margin-top:8px}
.sw-list--pandan li::before{background:var(--sw-pandan)}
.sw-list--coral li::before{background:var(--sw-coral)}
.sw-list--mango li::before{background:var(--sw-mango)}
.sw-list--check li::before{width:20px;height:20px;border-radius:50%;margin-top:2px;background:var(--sw-pandan-tint);content:"\2713";display:grid;place-items:center;font-size:12px;font-weight:800;color:var(--sw-pandan-dark)}
.sw-list--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px 20px}
.sw-list--grid li{font-weight:500;font-size:15px}
.sw-olist{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;counter-reset:sw}
.sw-olist li{counter-increment:sw;display:grid;grid-template-columns:28px 1fr;gap:12px;align-items:start;font-size:15.5px;line-height:1.5;color:var(--sw-ink-88)}
.sw-olist li::before{content:counter(sw);width:28px;height:28px;border-radius:50%;background:var(--sw-white);color:var(--sw-ink);display:grid;place-items:center;font-family:var(--sw-head);font-weight:800;font-size:13px;box-shadow:0 1px 2px rgba(43,30,74,.08)}

/* ---------- Accordion (FAQ) ---------- */
.sw-faq{border-radius:var(--sw-r-sm);background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow);transition:border-color .3s,box-shadow .3s}
.sw-faq[open]{border-color:rgba(107,68,184,.22);box-shadow:var(--sw-shadow-lift)}
.sw-faq > summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;font-family:var(--sw-head);font-weight:700;font-size:17px;line-height:1.3;color:var(--sw-ink)}
.sw-faq > summary::-webkit-details-marker{display:none}
.sw-faq > summary::after{content:"+";flex:none;width:30px;height:30px;border-radius:50%;background:var(--sw-ube-tint);color:var(--sw-ube-dark);display:grid;place-items:center;font-weight:700;font-size:18px;line-height:1;transition:transform .3s var(--sw-ease),background .3s}
.sw-faq[open] > summary::after{transform:rotate(45deg);background:var(--sw-ube);color:var(--sw-ivory)}
.sw-faq > summary:focus-visible{outline:3px solid rgba(107,68,184,.35);outline-offset:-3px;border-radius:var(--sw-r-sm)}
.sw-faq__a{margin:0;padding:0 20px 20px;font-size:15.5px;line-height:1.55;color:var(--sw-ink-80)}
.sw-faq__a a{font-weight:600}

/* ---------- Photos ---------- */
.sw-photo{position:relative;overflow:hidden;border-radius:999px;background:var(--sw-ube-tint)}
.sw-photo--round{border-radius:50%;aspect-ratio:1}
.sw-photo--card{border-radius:var(--sw-r-xl)}
.sw-photo > image-slot{display:block;width:100%;height:100%}
.sw-collage{position:relative;isolation:isolate;display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;align-items:center}
.sw-collage__sun{position:absolute;z-index:-1;left:16%;top:50%;width:68%;aspect-ratio:1;transform:translateY(-52%);opacity:.32;pointer-events:none}
.sw-float{position:absolute;left:50%;bottom:-10px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:18px;background:var(--sw-ivory);box-shadow:var(--sw-shadow-float);white-space:nowrap}
.sw-float__badge{width:38px;height:38px;border-radius:50%;background:var(--sw-pandan-tint);color:var(--sw-pandan-dark);display:grid;place-items:center;font-family:var(--sw-head);font-weight:700;font-size:13px;flex:none}
.sw-float__t{display:block;font-family:var(--sw-head);font-weight:700;font-size:14px;line-height:1.2}
.sw-float__s{display:block;font-size:13px;color:var(--sw-pandan-dark);line-height:1.3}

/* Phone mockup */
.sw-phone{width:min(100%,290px);aspect-ratio:9/18.5;background:var(--sw-ink);border-radius:44px;padding:12px;box-shadow:0 40px 80px -40px rgba(43,30,74,.6);position:relative;margin:0 auto}
.sw-phone__notch{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:100px;height:26px;background:var(--sw-ink);border-radius:0 0 16px 16px;z-index:2}
.sw-phone__screen{position:relative;height:100%;border-radius:34px;overflow:hidden;background:#1a1230}
.sw-phone__screen > image-slot{display:block;width:100%;height:100%}
.sw-phone__pill{position:absolute;left:14px;top:48px;background:rgba(251,250,255,.92);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;color:var(--sw-ink);font-family:var(--sw-head);display:flex;align-items:center;gap:6px;pointer-events:none}
.sw-phone__bar{position:absolute;left:14px;right:14px;bottom:18px;background:rgba(251,250,255,.94);border-radius:20px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none}
.sw-phone__bar b{display:block;font-family:var(--sw-head);font-weight:700;font-size:14px;color:var(--sw-ink)}
.sw-phone__bar small{display:block;font-size:12px;color:var(--sw-pandan-dark)}
.sw-phone__end{width:38px;height:38px;border-radius:50%;background:var(--sw-coral);display:block}

/* ---------- Greeting card ("Kumusta") ---------- */
.sw-greet{display:inline-flex;align-items:center;gap:12px;padding:10px 18px 10px 10px;border-radius:999px;background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow);max-width:100%}
.sw-greet > ph-motif{width:40px;height:40px;flex:none}
.sw-greet__t{display:block;font-family:var(--sw-head);font-weight:800;font-size:15px;line-height:1.2;letter-spacing:-.01em}
.sw-greet__s{display:block;font-size:13px;line-height:1.35;color:var(--sw-ink-60);margin-top:2px}
@media (max-width:640px){.sw-greet{border-radius:20px;align-items:flex-start;white-space:normal}.sw-greet__t,.sw-greet__s{white-space:normal}}

/* ---------- Hero ---------- */
.sw-hero{position:relative;overflow:hidden;border-radius:var(--sw-r-xl);padding:clamp(28px,4.5vw,64px) clamp(22px,4vw,56px);background:radial-gradient(120% 90% at 100% 0%,#EFE9FB 0%,rgba(239,233,251,0) 55%),radial-gradient(90% 90% at 0% 100%,#FDF3D6 0%,rgba(253,243,214,0) 60%),#FFFFFF;border:1px solid var(--sw-line);box-shadow:var(--sw-shadow)}
.sw-hero--coral{background:radial-gradient(120% 90% at 100% 0%,#FDE9E4 0%,rgba(253,233,228,0) 60%),radial-gradient(80% 90% at 0% 100%,#FDF3D6 0%,rgba(253,243,214,0) 60%),#FFFFFF}
.sw-hero--pandan{background:radial-gradient(120% 90% at 100% 0%,#E4F4EA 0%,rgba(228,244,234,0) 60%),radial-gradient(80% 90% at 0% 100%,#EFE9FB 0%,rgba(239,233,251,0) 60%),#FFFFFF}
.sw-hero--pride{background:radial-gradient(120% 90% at 100% 0%,#EFE9FB 0%,rgba(239,233,251,0) 55%),radial-gradient(90% 90% at 0% 100%,#E4F4EA 0%,rgba(228,244,234,0) 60%),#FFFFFF}
.sw-hero--mango{background:radial-gradient(120% 90% at 100% 0%,#FDF3D6 0%,rgba(253,243,214,0) 60%),radial-gradient(80% 90% at 0% 100%,#EFE9FB 0%,rgba(239,233,251,0) 60%),#FFFFFF}
.sw-hero__petals{position:absolute;inset:0;pointer-events:none;opacity:.7;z-index:0}
.sw-hero > .sw-split,.sw-hero > .sw-stack{position:relative;z-index:1}
.sw-hero__copy{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.sw-hero__copy .sw-h1{max-width:18ch}
.sw-hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.sw-hero__note{display:inline-flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:16px;background:rgba(251,250,255,.8);border:1px solid var(--sw-line);font-size:14px;line-height:1.45;color:var(--sw-ink-72);max-width:56ch}
.sw-hero__note::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sw-coral);flex:none;margin-top:6px}
.sw-hero__note[data-tone="pandan"]::before{background:var(--sw-pandan)}
.sw-hero__note[data-tone="mango"]::before{background:var(--sw-mango)}
.sw-hero__note[data-tone="ube"]::before{background:var(--sw-ube)}
@keyframes sw-rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.sw-rise{animation:sw-rise .7s var(--sw-ease) both}
.sw-rise--late{animation-delay:.15s}

/* ---------- CTA band ---------- */
.sw-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:clamp(32px,5vw,56px)}
.sw-cta__copy{display:flex;flex-direction:column;gap:10px;max-width:60ch}
.sw-cta > .sw-sechead + *{margin-top:0}
.sw-cta > .sw-sechead{max-width:60ch}

/* ---------- Header (sticky, translucent) ---------- */
.sc-host[data-sc-name="SiteNav"]{position:sticky;top:0;z-index:60}
.sw-header{position:relative;background:rgba(251,250,255,.84);-webkit-backdrop-filter:saturate(1.4) blur(14px);backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--sw-line);font-family:var(--sw-body);color:var(--sw-ink)}
.sw-header__in{display:flex;align-items:center;gap:12px 20px;padding:12px var(--sw-gutter);max-width:1240px;margin:0 auto;min-height:72px}
.sw-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--sw-ink);margin-right:auto;flex:none}
.sw-brand > ph-motif{width:34px;height:34px;flex:none}
.sw-wordmark{display:inline-flex;align-items:baseline;font-family:var(--sw-head);font-weight:800;font-size:22px;letter-spacing:-.03em;line-height:1}
.sw-wordmark > span{color:var(--sw-pandan);font-weight:700;font-size:15px;letter-spacing:.06em;margin-left:3px}
.sw-nav{display:flex;flex-wrap:wrap;gap:2px;font-size:14px;font-weight:600}
.sw-nav a{text-decoration:none;color:var(--sw-ink);padding:8px 12px;border-radius:999px;transition:background .25s,color .25s}
.sw-nav a:hover{background:var(--sw-ube-tint);color:var(--sw-ube-dark)}
.sw-header__tools{display:flex;align-items:center;gap:10px;flex:none}
.sw-toggle{display:inline-flex;padding:3px;border:0;border-radius:999px;background:var(--sw-ube-tint);cursor:pointer;font:inherit;font-size:12px;font-weight:700;color:var(--sw-ube)}
.sw-toggle > span{display:inline-flex}
.sw-toggle i{font-style:normal;padding:6px 11px;border-radius:999px;line-height:1}
.sw-toggle i.on{background:var(--sw-ube);color:var(--sw-ivory)}
.sw-menu{position:relative;display:none}
.sw-menu > summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:var(--sw-white);border:1px solid var(--sw-line);font-family:var(--sw-head);font-weight:700;font-size:14px;color:var(--sw-ink)}
.sw-menu > summary::-webkit-details-marker{display:none}
.sw-menu > summary::before{content:"";width:16px;height:2px;background:currentColor;border-radius:2px;box-shadow:0 5px 0 currentColor,0 -5px 0 currentColor}
.sw-menu[open] > summary{background:var(--sw-ube-tint);color:var(--sw-ube-dark)}
.sw-menu__panel{position:absolute;right:0;top:calc(100% + 10px);min-width:min(320px,calc(100vw - 40px));padding:10px;border-radius:var(--sw-r-md);background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow-float);z-index:70}
.sw-menu__panel .sw-nav{flex-direction:column;gap:2px}
.sw-menu__panel .sw-nav a{display:block;padding:12px 14px;font-size:15px}
.sw-menu__panel .sw-menu__cta{margin-top:8px;text-align:center;background:var(--sw-ube);color:var(--sw-ivory);font-family:var(--sw-head)}
.sw-menu__panel .sw-menu__cta:hover{background:var(--sw-ube-dark);color:var(--sw-ivory)}
@media (max-width:980px){
  .sw-nav[data-hide-menu]{display:none}
  .sw-menu{display:block}
  .sw-header__tools > .sw-btn{display:none}
}
@media (max-width:420px){.sw-header__in{gap:8px}.sw-menu > summary{padding:10px 12px}}

/* ---------- Footer (contained) ---------- */
.sw-footer{font-family:var(--sw-body);color:var(--sw-ink);padding:0 0 clamp(24px,4vw,40px)}
.sw-footer__weave{display:block;width:100%;height:12px}
.sw-footer__panel{margin-top:clamp(20px,3vw,32px);padding:clamp(28px,4vw,44px);border-radius:var(--sw-r-xl);background:var(--sw-white);border:1px solid var(--sw-line);box-shadow:var(--sw-shadow);display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:28px;font-size:14px}
.sw-footer__brand{display:flex;flex-direction:column;gap:12px;grid-column:1 / -1}
@media (min-width:900px){.sw-footer__panel{grid-template-columns:1.9fr 1fr 1fr 1fr}.sw-footer__brand{grid-column:auto;max-width:440px}}
.sw-footer__col{display:flex;flex-direction:column;gap:6px}
.sw-footer__col a{text-decoration:none;color:var(--sw-ink);padding:4px 0;border-radius:6px}
.sw-footer__col a:hover{color:var(--sw-ube-dark)}
.sw-footer__head{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:12px;color:var(--sw-ink-50);margin-bottom:4px}
.sw-footer__motifs{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.sw-footer__bottom{margin-top:var(--sw-gap);display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;font-size:13px;color:var(--sw-ink-60)}

/* ---------- Search input ---------- */
.sw-input{flex:1 1 280px;max-width:520px;font:inherit;font-size:16px;padding:14px 18px;border-radius:999px;border:1.5px solid var(--sw-line-strong);background:var(--sw-white);color:var(--sw-ink);outline:none;transition:border-color .25s,box-shadow .25s}
.sw-input:focus{border-color:var(--sw-ube);box-shadow:0 0 0 3px rgba(107,68,184,.15)}
.sw-filter{font:inherit;font-size:13px;font-weight:600;padding:8px 14px;border-radius:999px;border:1.5px solid var(--sw-line-strong);background:var(--sw-white);color:var(--sw-ink);cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:background .25s,color .25s,border-color .25s}
.sw-filter:hover{border-color:rgba(107,68,184,.4)}

/* ---------- Motion ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .sw-card,.sw-tile,.sw-btn,.sw-faq,.sw-faq > summary::after,.sw-nav a,.sw-input,.sw-filter{transition:none}
  a.sw-card:hover,.sw-card--lift:hover,.sw-tile--lift:hover,.sw-btn:hover{transform:none}
  .sw-rise{animation:none}
  .sw-eyebrow--live::before{animation:none}
}
