:root{--paper: #FAF4E8;--ink: #1A1A1A;--white: #FFFFFF;--ink2: #5C5043;--ink3: #9A8F84;--paper2: #F0E8D4;--paper3: #E4D9C4;--orange: #FF8B47;--orange-dark: #E06A20;--yellow: #FFD23F;--yellow-dark: #D4A800;--mint: #A8D8B9;--mint-dark: #6AAE84;--pink: #FFB5C0;--pink-dark: #E07888;--blue: #A8C8E8;--blue-dark: #6A9EC0;--orange-light: #FFE8D4;--mint-light: #D8F2E6;--yellow-light: #FFF6C8;--pink-light: #FFE3EC;--blue-light: #D8E8F8;--border-w: 2.5px;--radius: 22px;--radius-sm: 16px;--radius-lg: 28px;--shadow-card: 6px 6px 0 var(--ink);--shadow-card-sm: 4px 4px 0 var(--ink);--shadow-btn: 4px 4px 0 var(--orange-dark);--maxw: 1140px;--font-display: "Fraunces", "Noto Sans TC", "Noto Sans SC", serif;--font-body: "Nunito", "Noto Sans TC", "Noto Sans SC", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);background-color:var(--paper);color:var(--ink);line-height:1.6;font-size:17px;font-weight:600;background-image:radial-gradient(var(--paper3) 1px,transparent 1px);background-size:22px 22px;overflow-x:hidden}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul{list-style:none}button{font-family:inherit;cursor:pointer}h1,h2,h3,h4{font-family:var(--font-display);font-weight:800;line-height:1.08;color:var(--ink);letter-spacing:-.01em}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 24px}section{padding:88px 0;position:relative}.section-head{text-align:center;max-width:720px;margin:0 auto 56px}.section-head h2{font-size:clamp(2rem,4.5vw,3rem);margin-bottom:16px}.section-head p{color:var(--ink2);font-size:1.1rem}.eyebrow{display:inline-block;font-family:var(--font-body);font-weight:800;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--orange-dark);margin-bottom:14px}.badge{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:var(--border-w) solid var(--ink);border-radius:999px;font-weight:800;font-size:.9rem;background:var(--white);box-shadow:3px 3px 0 var(--ink);white-space:nowrap}.badge--yellow{background:var(--yellow)}.badge--mint{background:var(--mint)}.badge--pink{background:var(--pink)}.badge--blue{background:var(--blue)}.badge--orange{background:var(--orange)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 30px;border:var(--border-w) solid var(--ink);border-radius:999px;font-family:var(--font-body);font-weight:800;font-size:1.02rem;background:var(--white);color:var(--ink);box-shadow:var(--shadow-card-sm);transition:transform .08s ease,box-shadow .08s ease}.btn:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.btn:active{transform:translate(4px,4px);box-shadow:0 0 0 var(--ink)}.btn--primary{background:var(--orange);color:var(--ink);box-shadow:var(--shadow-btn)}.btn--primary:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--orange-dark)}.btn--primary:active{transform:translate(4px,4px);box-shadow:0 0 0 var(--orange-dark)}.btn--sm{padding:10px 20px;font-size:.92rem}.btn--lg{padding:18px 38px;font-size:1.12rem}.nav{position:sticky;top:0;z-index:100;background:var(--paper);border-bottom:var(--border-w) solid var(--ink)}.nav__inner{display:flex;align-items:center;gap:18px;height:72px;max-width:var(--maxw);margin:0 auto;padding:0 24px}.nav__brand{font-family:var(--font-display);font-weight:900;font-size:1.6rem;letter-spacing:-.02em;margin-right:auto;display:flex;align-items:center;gap:8px}.nav__brand .dot{width:14px;height:14px;background:var(--orange);border:2px solid var(--ink);border-radius:50%}.nav__links{display:flex;gap:26px;align-items:center}.nav__links a{font-weight:700;font-size:.98rem;color:var(--ink2)}.nav__links a:hover{color:var(--ink)}.nav__hamburger{display:none;flex-direction:column;gap:4px;width:44px;height:44px;align-items:center;justify-content:center;background:var(--white);border:var(--border-w) solid var(--ink);border-radius:12px;box-shadow:2px 2px 0 var(--ink)}.nav__hamburger span{width:20px;height:2.5px;background:var(--ink);border-radius:2px}.lang-switch{position:relative}.lang-switch__btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:var(--white);border:var(--border-w) solid var(--ink);border-radius:999px;box-shadow:2px 2px 0 var(--ink);font-weight:800;font-size:.9rem;color:var(--ink)}.lang-switch__btn:hover{transform:translate(1px,1px);box-shadow:1px 1px 0 var(--ink)}.lang-switch__chevron{transition:transform .2s ease}.lang-switch__menu{display:none;position:absolute;top:calc(100% + 10px);right:0;min-width:150px;background:var(--white);border:var(--border-w) solid var(--ink);border-radius:var(--radius-sm);box-shadow:var(--shadow-card-sm);padding:6px;z-index:120}.lang-switch__menu.open{display:block}.lang-switch__opt{display:block;width:100%;text-align:left;padding:9px 12px;background:transparent;border:none;border-radius:10px;font-weight:700;font-size:.92rem;color:var(--ink2)}.lang-switch__opt:hover{background:var(--orange-light);color:var(--ink)}.lang-switch__opt.is-active{background:var(--orange);color:var(--ink);font-weight:800}.nav__mobile{display:none;flex-direction:column;gap:4px;padding:16px 24px 24px;border-bottom:var(--border-w) solid var(--ink);background:var(--paper)}.nav__mobile.open{display:flex}.nav__mobile a{padding:12px 0;font-weight:700;color:var(--ink2);border-bottom:1.5px dashed var(--paper3)}.nav__mobile a.btn{border:var(--border-w) solid var(--ink);color:var(--ink);margin-top:10px;justify-content:center}.nav__mobile-lang{display:flex;gap:8px;margin-top:14px}.nav__mobile-lang button{flex:1;padding:10px;background:var(--white);border:var(--border-w) solid var(--ink);border-radius:12px;font-weight:700;font-size:.85rem}.nav__mobile-lang button.is-active{background:var(--orange)}.hero{padding:72px 0 96px;overflow:hidden}.hero__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}.hero h1{font-size:clamp(2.6rem,6vw,4.4rem);margin:18px 0 22px}.hero__sub{font-size:1.18rem;color:var(--ink2);max-width:520px;margin-bottom:30px}.hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px}.hero__fine{font-size:.92rem;color:var(--ink3);font-weight:700}.underline-wave{position:relative;display:inline-block;white-space:nowrap}.underline-wave:after{content:"";position:absolute;left:-2%;right:-2%;bottom:-.14em;height:.36em;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='14' viewBox='0 0 120 14' fill='none'%3E%3Cpath d='M2 9C18 3 30 3 46 8s30 5 46-1 24-3 24-3' stroke='%23FF8B47' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat center / 100% 100%;z-index:-1}.mockup{background:var(--white);border:var(--border-w) solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:24px;max-width:360px;margin-left:auto;position:relative;transform:rotate(1.4deg)}.mockup:before{content:"★";position:absolute;top:-22px;left:-16px;width:44px;height:44px;display:grid;place-items:center;background:var(--yellow);border:var(--border-w) solid var(--ink);border-radius:12px;box-shadow:3px 3px 0 var(--ink);font-size:1.2rem;transform:rotate(-10deg)}.mockup__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.mockup__date{font-size:.82rem;font-weight:800;color:var(--ink3);letter-spacing:.08em;text-transform:uppercase}.mockup__label{font-size:.92rem;font-weight:800;color:var(--orange-dark);margin-bottom:6px}.mockup__title{font-family:var(--font-display);font-weight:900;font-size:1.85rem;margin-bottom:18px}.mockup__pills{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.mockup__art{height:132px;background:var(--mint-light);border:var(--border-w) solid var(--ink);border-radius:var(--radius-sm);margin-bottom:20px;display:grid;place-items:center;font-size:3.4rem}.mockup .btn{width:100%}.stats{padding:0;margin-top:-20px}.stats__inner{background:var(--ink);color:var(--paper);border-radius:var(--radius);border:var(--border-w) solid var(--ink);box-shadow:var(--shadow-card);display:grid;grid-template-columns:repeat(4,1fr);padding:28px 12px}.stat{text-align:center;padding:8px 12px}.stat__num{font-family:var(--font-display);font-weight:900;font-size:2rem;color:var(--yellow)}.stat__label{font-size:.88rem;font-weight:700;color:var(--paper2);opacity:.85;margin-top:4px}.stat+.stat{border-left:2px dashed rgba(250,244,232,.25)}.value{padding:96px 0}.value__inner{background:var(--orange-light);border:var(--border-w) solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:56px 40px;text-align:center;position:relative}.value__inner h2{font-size:clamp(1.8rem,4vw,2.8rem);max-width:760px;margin:0 auto}.value__deco{position:absolute;font-size:2.2rem}.value__deco--1{top:18px;left:28px;transform:rotate(-12deg)}.value__deco--2{bottom:18px;right:28px;transform:rotate(10deg)}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}.card{background:var(--white);border:var(--border-w) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:30px;transition:transform .1s ease,box-shadow .1s ease}.card:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}.card__icon{width:60px;height:60px;display:grid;place-items:center;border:var(--border-w) solid var(--ink);border-radius:16px;font-size:1.8rem;margin-bottom:18px;box-shadow:3px 3px 0 var(--ink)}.card h3{font-size:1.4rem;margin-bottom:10px}.card p{color:var(--ink2);font-size:1rem}.card--mint .card__icon{background:var(--mint)}.card--yellow .card__icon{background:var(--yellow)}.card--pink .card__icon{background:var(--pink)}.card--blue .card__icon{background:var(--blue)}.cat{border:var(--border-w) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:30px}.cat__tag{display:inline-block;padding:5px 14px;background:var(--white);border:2px solid var(--ink);border-radius:999px;font-weight:800;font-size:.82rem;margin-bottom:14px}.cat h3{font-size:1.5rem;margin-bottom:8px}.cat p{color:var(--ink);font-weight:700;opacity:.78}.cat__emoji{font-size:2.4rem;margin-bottom:14px}.cat--mint{background:var(--mint-light)}.cat--yellow{background:var(--yellow-light)}.cat--pink{background:var(--pink-light)}.cat--blue{background:var(--blue-light)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.step{background:var(--white);border:var(--border-w) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:32px 26px;text-align:center;position:relative}.step__num{width:52px;height:52px;margin:0 auto 18px;display:grid;place-items:center;background:var(--orange);border:var(--border-w) solid var(--ink);border-radius:50%;box-shadow:3px 3px 0 var(--orange-dark);font-family:var(--font-display);font-weight:900;font-size:1.5rem}.step h3{font-size:1.25rem;margin-bottom:8px}.step p{color:var(--ink2);font-size:.98rem}.plans{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;max-width:880px;margin:0 auto}.plan{background:var(--white);border:var(--border-w) solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:36px 32px;position:relative}.plan--featured{background:var(--orange-light)}.plan__ribbon{position:absolute;top:-16px;right:28px;padding:7px 16px;background:var(--orange);border:var(--border-w) solid var(--ink);border-radius:999px;box-shadow:3px 3px 0 var(--ink);font-weight:800;font-size:.82rem}.plan__name{font-family:var(--font-display);font-weight:900;font-size:1.5rem;margin-bottom:8px}.plan__price{font-family:var(--font-display);font-weight:900;font-size:2.6rem;margin-bottom:4px}.plan__price small{font-family:var(--font-body);font-size:1rem;font-weight:700;color:var(--ink2)}.plan__note{font-size:.9rem;color:var(--ink2);margin-bottom:22px;font-weight:700}.plan__list{display:flex;flex-direction:column;gap:12px;margin-bottom:26px}.plan__list li{display:flex;gap:10px;align-items:flex-start;font-weight:700;color:var(--ink2)}.plan__list li:before{content:"✓";font-weight:900;color:var(--mint-dark);flex-shrink:0}.plan .btn{width:100%}.testi{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.quote{background:var(--white);border:var(--border-w) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-card);padding:28px}.quote__stars{color:var(--yellow-dark);font-size:1.1rem;margin-bottom:12px;letter-spacing:2px}.quote__text{font-size:1.04rem;margin-bottom:18px}.quote__who{display:flex;align-items:center;gap:12px}.quote__avatar{width:44px;height:44px;display:grid;place-items:center;border:var(--border-w) solid var(--ink);border-radius:50%;font-size:1.3rem}.quote__name{font-weight:800;font-size:.95rem}.quote__role{font-weight:700;font-size:.82rem;color:var(--ink3)}.final{padding:96px 0}.final__inner{background:var(--mint);border:var(--border-w) solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:64px 40px;text-align:center}.final__inner h2{font-size:clamp(2rem,4.5vw,3rem);margin-bottom:16px}.final__inner p{color:var(--ink2);font-size:1.15rem;max-width:540px;margin:0 auto 28px}.final__cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.footer{border-top:var(--border-w) solid var(--ink);padding:56px 0 40px}.footer__grid{display:grid;grid-template-columns:1.4fr repeat(2,1fr) 1.2fr;gap:40px;margin-bottom:40px}.footer__brand{font-family:var(--font-display);font-weight:900;font-size:1.5rem;display:flex;align-items:center;gap:8px;margin-bottom:12px}.footer__tagline{color:var(--ink2);font-weight:700;max-width:280px}.footer__col h4{font-family:var(--font-body);font-size:.82rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3);margin-bottom:14px}.footer__col a{display:block;padding:6px 0;font-weight:700;color:var(--ink2)}.footer__col a:hover{color:var(--ink)}.footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:24px;border-top:2px dashed var(--paper3);color:var(--ink3);font-weight:700;font-size:.9rem;flex-wrap:wrap}@media (max-width: 900px){.nav__links{display:none}.nav__hamburger{display:flex}.hero__grid{grid-template-columns:1fr;gap:44px}.mockup{margin:0 auto;transform:rotate(0)}.stats__inner{grid-template-columns:repeat(2,1fr);gap:8px}.stat:nth-child(3){border-left:none}.stat:nth-child(odd){border-left:none}.footer__grid{grid-template-columns:1fr 1fr;gap:28px}}@media (max-width: 640px){section{padding:64px 0}body{font-size:16px}.cards,.steps,.plans,.testi{grid-template-columns:1fr}.stats__inner{grid-template-columns:1fr 1fr}.value__inner,.final__inner{padding:40px 24px}.footer__grid{grid-template-columns:1fr}.hero__cta{flex-direction:column;align-items:stretch}.hero__cta .btn{width:100%}}
