/* Group-fare-only integration with the approved legacy homepage shell. */
body:has(.group-fare-site) { background:#f3f5f2; }
body:has(.group-fare-site) > .bottom-tab-bar,
body:has(.group-fare-site) > .bottom-tab-spacer { display:none!important; }
.group-fare-site { --gf-ink:#182622;--gf-green:#14352d;--gf-orange:#e8792e;--gf-paper:#fff;--gf-cloud:#f3f5f2;--gf-muted:#5f6d68;--gf-line:rgba(24,38,34,.14); color:var(--gf-ink);font:500 16px/1.65 "Noto Sans TC","PingFang TC","Microsoft JhengHei",system-ui,sans-serif;min-height:100vh; }
.group-fare-site *, .group-fare-site *::before, .group-fare-site *::after { box-sizing:border-box; }
.group-fare-site a { color:inherit; }
.group-fare-site a:focus-visible,.group-fare-site button:focus-visible { outline:3px solid #a94b0d;outline-offset:4px; }
.group-fare-site .gf-site-top,.group-fare-site .gf-site-bottom { display:contents; }
.group-fare-site .main-nav { position:static;inset:auto;width:auto;height:auto;z-index:auto;padding:0;border:0;background:transparent;backdrop-filter:none;box-shadow:none; }
.group-fare-site .site-header { position:sticky;top:0;height:72px;z-index:80; }
.group-fare-site .header-cta { background:transparent;border:1px solid var(--gf-line);color:var(--gf-green);font-size:13px;min-height:44px;display:inline-flex;align-items:center;text-decoration:none; }
.group-fare-site .mobile-bottom { top:auto;transform:none;border-bottom:0; }
.group-fare-site .site-footer { margin-top:clamp(64px,8vw,112px);font-family:inherit; }
.group-fare-site .footer-main { max-width:1180px; }
.group-fare-site .footer-bottom { font-family:inherit;letter-spacing:normal; }
.group-fare-site .gf-skip { position:absolute;top:8px;left:12px;z-index:300;transform:translateY(-180%);background:#fff;padding:10px 16px; }
.group-fare-site .gf-skip:focus { transform:none; }
.group-fare-site .gf-main { display:block; }
.group-fare-site .gf-wrap { width:min(1180px,calc(100% - 48px));margin-inline:auto; }
.group-fare-site .gf-breadcrumb { display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:24px 0;font-size:12px;color:var(--gf-muted); }
.group-fare-site .gf-breadcrumb a { text-decoration:none;min-height:24px;display:inline-flex;align-items:center; }
.group-fare-site .gf-breadcrumb a:hover { text-decoration:underline; }
.group-fare-site .gf-hero { padding:48px 52px;background:var(--gf-green);border-radius:12px;color:#fff;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,.8fr);gap:64px;align-items:center; }
.group-fare-site .gf-kicker { font:700 12px/1.5 "Barlow Condensed","Noto Sans TC",sans-serif;letter-spacing:.12em;color:#75563f;text-transform:uppercase;margin:0 0 12px; }
.group-fare-site .gf-hero .gf-kicker { color:#e5c3a8; }
.group-fare-site .gf-hero h1 { font:800 clamp(36px,4vw,58px)/1.18 "Noto Sans TC","PingFang TC",sans-serif;letter-spacing:-.04em;color:#fff;margin:0 0 22px; }
.group-fare-site .gf-lead { max-width:560px;color:#e1ebe7;line-height:1.9;margin:0;font-size:16px; }
.group-fare-site .gf-actions { display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:30px; }
.group-fare-site .gf-button { display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:12px 22px;border:1px solid transparent;border-radius:7px;font:750 15px/1.5 inherit;text-decoration:none;transition:background .18s,color .18s; }
.group-fare-site .gf-button-primary { background:var(--gf-orange);color:#17261f;font-weight:800; }
.group-fare-site .gf-button-primary:hover { background:#f18b45; }
.group-fare-site .gf-text-link { display:inline-flex;align-items:center;gap:14px;min-height:44px;font-size:14px;color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.5); }
.group-fare-site .gf-hero-note { font-size:12px;color:#c2d4cc;margin:22px 0 0;line-height:1.8;max-width:450px; }
.group-fare-site .gf-flight-note { padding:24px 28px 28px;border:1px solid #bdcdc5;border-radius:7px;background:#f3f5f2;color:var(--gf-ink);transform:rotate(1.3deg); }
.group-fare-site .gf-flight-note-head { display:flex;justify-content:space-between;align-items:center;font:700 11px/1.5 "Barlow Condensed",sans-serif;letter-spacing:.12em;border-bottom:1px solid var(--gf-line);padding-bottom:15px; }
.group-fare-site .gf-flight-note-head>span:last-child { font-size:24px;line-height:1; }
.group-fare-site .gf-flight-note h2 { font-size:26px;font-weight:750;line-height:1.45;margin:22px 0;letter-spacing:-.03em; }
.group-fare-site .gf-flight-note dl { margin:0; }
.group-fare-site .gf-flight-note dl>div { display:grid;grid-template-columns:44px 1fr;gap:10px;border-bottom:1px solid var(--gf-line);padding:12px 0; }
.group-fare-site .gf-flight-note dt { font-size:11px;color:var(--gf-muted);align-self:center; }
.group-fare-site .gf-flight-note dd { margin:0;font-size:14px;font-weight:700; }
.group-fare-site .gf-flight-note>p { color:var(--gf-muted);font-size:12px;line-height:1.8;margin:18px 0 0; }
.group-fare-site .gf-assurance { display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:22px 0;border-bottom:1px solid var(--gf-line);font-size:12px;color:var(--gf-muted); }
.group-fare-site .gf-assurance span+span:before { content:"";display:inline-block;width:4px;height:4px;background:#74877d;border-radius:50%;vertical-align:middle;margin-right:20px; }
.group-fare-site .gf-section { padding:80px 0; }
.group-fare-site .gf-section-heading { display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:30px; }
.group-fare-site .gf-section-heading h2 { font-size:clamp(25px,3vw,36px);font-weight:750;line-height:1.4;letter-spacing:-.035em;margin:0; }
.group-fare-site .gf-section-heading>p { font-size:14px;line-height:1.8;color:var(--gf-muted);margin:0; }
.group-fare-site .gf-audiences { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px; }
.group-fare-site .gf-audiences article { padding:24px 0 0;border-top:2px solid #aebfb5; }
.group-fare-site .gf-audiences article>span { font-size:12px;font-weight:700;color:#536d5f; }
.group-fare-site .gf-audiences h3 { font-size:20px;line-height:1.5;font-weight:700;margin:15px 0 10px; }
.group-fare-site .gf-audiences p { font-size:14px;color:var(--gf-muted);line-height:1.8;margin:0;max-width:34ch; }
.group-fare-site .gf-process-band { padding:64px 0;background:#dfe7e1; }
.group-fare-site .gf-process { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;gap:48px;margin:32px 0 0;padding:0; }
.group-fare-site .gf-process li { position:relative;border-top:1px solid #92a99b;padding-top:20px; }
.group-fare-site .gf-process li>span { font:600 28px/1 "Barlow Condensed",sans-serif;color:#587463; }
.group-fare-site .gf-process h3 { font-size:18px;line-height:1.5;margin:18px 0 10px;font-weight:750; }
.group-fare-site .gf-process p { margin:0;font-size:14px;color:#52645a;line-height:1.8; }
.group-fare-site .gf-guides { scroll-margin-top:88px; }
.group-fare-site .gf-draft-note { display:flex;align-items:baseline;gap:12px;padding:13px 16px;background:#edf0ea;border:1px solid #d4dcd2;border-radius:6px;font-size:12px;line-height:1.8;color:#566653;margin:0 0 32px; }
.group-fare-site .gf-draft-note>span { font-weight:800;white-space:nowrap; }
.group-fare-site .gf-guide-group { display:grid;grid-template-columns:240px minmax(0,1fr);gap:40px;padding:30px 0;border-top:1px solid var(--gf-line); }
.group-fare-site .gf-guide-group:last-child { border-bottom:1px solid var(--gf-line); }
.group-fare-site .gf-guide-group-title h3 { font-size:18px;line-height:1.5;margin:0 0 10px;font-weight:750; }
.group-fare-site .gf-guide-group-title p { margin:0;color:var(--gf-muted);font-size:13px;line-height:1.8; }
.group-fare-site .gf-guide-links { display:grid;gap:12px; }
.group-fare-site .gf-guide-link { display:flex;justify-content:space-between;gap:20px;align-items:center;padding:20px 24px;border:1px solid var(--gf-line);border-radius:7px;background:#fff;text-decoration:none;transition:border-color .18s,box-shadow .18s;min-width:0; }
.group-fare-site .gf-guide-link:hover { border-color:#738d7c;box-shadow:0 5px 15px rgba(20,53,45,.06); }
.group-fare-site .gf-guide-link h4 { font-size:17px;line-height:1.6;font-weight:750;margin:0 0 7px; }
.group-fare-site .gf-guide-link p { font-size:13px;color:var(--gf-muted);line-height:1.8;margin:0; }
.group-fare-site .gf-guide-link>span { flex:0 0 auto;font-size:22px;color:#587b66; }
.group-fare-site .gf-contact { display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);gap:60px;padding:42px 48px;background:#fff;border:1px solid #c1cec5;border-radius:10px; }
.group-fare-site .gf-contact h2 { font-size:clamp(25px,3vw,34px);font-weight:750;line-height:1.4;margin:0 0 16px;letter-spacing:-.03em; }
.group-fare-site .gf-contact>div>p:not(.gf-kicker) { max-width:55ch;font-size:14px;color:var(--gf-muted);line-height:1.85;margin:0 0 24px; }
.group-fare-site .gf-contact-note { display:block;font-size:11px;line-height:1.7;color:var(--gf-muted);margin-top:12px; }
.group-fare-site .gf-checklist { margin:0;align-self:center; }
.group-fare-site .gf-checklist>div { padding:18px 0;border-bottom:1px solid var(--gf-line); }
.group-fare-site .gf-checklist>div:first-child { padding-top:0; }
.group-fare-site .gf-checklist dt { font-size:12px;color:var(--gf-muted);margin-bottom:6px; }
.group-fare-site .gf-checklist dd { font-size:16px;font-weight:750;margin:0; }
.group-fare-site .gf-related-note { display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin:26px 0 0;font-size:12px;color:var(--gf-muted); }
.group-fare-site .gf-related-note a { color:var(--gf-green);font-weight:700;text-underline-offset:4px; }
.group-fare-site .gf-reading-width { width:min(760px,calc(100% - 48px));margin-inline:auto; }
.group-fare-site .gf-article-heading { padding:30px 0 0; }
.group-fare-site .gf-back { display:inline-flex;align-items:center;min-height:44px;font-size:13px;color:#486c55;font-weight:700;text-decoration:none;margin-bottom:22px; }
.group-fare-site .gf-back:hover { text-decoration:underline;text-underline-offset:5px; }
.group-fare-site .gf-article-heading h1 { font-family:inherit;font-size:clamp(30px,4vw,46px);line-height:1.4;font-weight:800;letter-spacing:-.035em;margin:0 0 22px;color:var(--gf-ink); }
.group-fare-site .gf-article-description { color:var(--gf-muted);line-height:1.9;font-size:16px;margin:0 0 20px; }
.group-fare-site .gf-article-meta { display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--gf-muted);margin:0 0 24px; }
.group-fare-site .gf-article { padding:0; }
.group-fare-site .gf-article-body { font-size:17px;line-height:1.95;color:#2c3d33;overflow-wrap:break-word; }
.group-fare-site .gf-article-body h2 { font-family:inherit;font-size:25px;font-weight:750;line-height:1.45;color:var(--gf-green);margin:44px 0 20px;padding-top:26px;border-top:1px solid var(--gf-line); }
.group-fare-site .gf-article-body h2:first-child { margin-top:12px; }
.group-fare-site .gf-article-body h3 { font-size:20px;font-weight:750;line-height:1.5;margin:30px 0 12px; }
.group-fare-site .gf-article-body p { margin:0 0 20px; }
.group-fare-site .gf-article-body ul,.group-fare-site .gf-article-body ol { padding-left:24px;margin:16px 0 24px; }
.group-fare-site .gf-article-body li { margin:8px 0; }
.group-fare-site .gf-article-body a { color:#2e6644;text-decoration:underline;text-underline-offset:4px; }
.group-fare-site .gf-article-body table { width:100%;border-collapse:collapse;font-size:14px;line-height:1.7;margin:24px 0;table-layout:fixed;background:#fff; }
.group-fare-site .gf-article-body td,.group-fare-site .gf-article-body th { padding:12px 14px;border:1px solid #cbd5cc;text-align:left;vertical-align:top;overflow-wrap:anywhere; }
.group-fare-site .gf-article-body th { background:#e6ece5;font-weight:750;color:var(--gf-green); }
.group-fare-site .gf-article-body blockquote { margin:26px 0;border-left:3px solid #6c8b77;padding:16px 20px;background:#eaf0e8;color:#47604e; }
.group-fare-site .gf-article-body blockquote p:last-child { margin:0; }
.group-fare-site .gf-article-navigation { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;border-top:1px solid var(--gf-line);padding-top:28px;margin:48px 0 20px; }
.group-fare-site .gf-article-navigation a { display:block;padding:18px;border:1px solid var(--gf-line);border-radius:7px;background:#fff;text-decoration:none; }
.group-fare-site .gf-article-navigation span { display:block;color:var(--gf-muted);font-size:12px;margin-bottom:10px; }
.group-fare-site .gf-article-navigation b { font-size:15px;font-weight:700;line-height:1.6; }
.group-fare-site .gf-article-contact { margin-top:32px; }
@media(max-width:1050px) and (min-width:901px) {
  .group-fare-site .site-header { padding-inline:20px; }
  .group-fare-site .main-nav .nav-trigger,.group-fare-site .main-nav>a { padding-inline:8px;font-size:13px; }
  .group-fare-site .brand-logo { width:148px; }
}
@media(max-width:900px) {
  .group-fare-site { padding-bottom:calc(68px + env(safe-area-inset-bottom)); }
  .group-fare-site .site-header { height:62px; }
  .group-fare-site .main-nav,.group-fare-site .header-cta { display:none; }
  .group-fare-site .mobile-bottom { display:grid;position:fixed;left:0;right:0;bottom:0;z-index:100;grid-template-columns:repeat(4,1fr);height:calc(68px + env(safe-area-inset-bottom));padding:0 0 env(safe-area-inset-bottom);background:#fff; }
  .group-fare-site .mobile-bottom a { min-height:68px; }
  .group-fare-site .mobile-drawer { z-index:95; }
  .group-fare-site .gf-wrap { width:calc(100% - 32px); }
  .group-fare-site .gf-hero { padding:32px;gap:28px;grid-template-columns:1.25fr 1fr; }
  .group-fare-site .gf-hero h1 { font-size:38px; }
  .group-fare-site .gf-flight-note { padding:22px; }
  .group-fare-site .gf-flight-note h2 { font-size:23px; }
  .group-fare-site .gf-lead { font-size:14px; }
  .group-fare-site .gf-actions { gap:16px;margin-top:22px; }
  .group-fare-site .gf-assurance { gap:10px;font-size:11px; }
  .group-fare-site .gf-assurance span+span:before { margin-right:10px; }
  .group-fare-site .gf-guide-group { grid-template-columns:190px minmax(0,1fr);gap:24px; }
  .group-fare-site .gf-contact { gap:30px;padding:30px; }
  .group-fare-site .gf-contact h2 { font-size:27px; }
}
@media(max-width:640px) {
  .group-fare-site .gf-breadcrumb { padding:18px 0;font-size:11px;gap:7px; }
  .group-fare-site .gf-hero { padding:28px 24px;grid-template-columns:1fr;gap:30px; }
  .group-fare-site .gf-hero h1 { font-size:36px;line-height:1.24;margin-bottom:18px; }
  .group-fare-site .gf-kicker { font-size:11px;margin-bottom:12px; }
  .group-fare-site .gf-lead { font-size:14px;line-height:1.85; }
  .group-fare-site .gf-desktop-break { display:none; }
  .group-fare-site .gf-actions { gap:12px 22px; }
  .group-fare-site .gf-button { padding:12px 18px;min-height:48px;font-size:14px; }
  .group-fare-site .gf-hero-note { margin-top:18px;font-size:11px; }
  .group-fare-site .gf-flight-note { transform:none; }
  .group-fare-site .gf-flight-note h2 { font-size:22px; }
  .group-fare-site .gf-flight-note h2 br { display:none; }
  .group-fare-site .gf-flight-note>p br { display:none; }
  .group-fare-site .gf-assurance { display:grid;gap:4px;padding:18px 0; }
  .group-fare-site .gf-assurance span+span:before { display:none; }
  .group-fare-site .gf-section { padding:54px 0; }
  .group-fare-site .gf-section-heading { display:block;margin-bottom:24px; }
  .group-fare-site .gf-section-heading h2 { font-size:26px; }
  .group-fare-site .gf-section-heading>p { font-size:13px;margin-top:12px; }
  .group-fare-site .gf-section-heading>p br { display:none; }
  .group-fare-site .gf-audiences { grid-template-columns:1fr;gap:24px; }
  .group-fare-site .gf-audiences article { padding-top:18px; }
  .group-fare-site .gf-audiences h3 { font-size:19px;margin:10px 0 8px; }
  .group-fare-site .gf-audiences p { max-width:none;font-size:14px; }
  .group-fare-site .gf-process-band { padding:42px 0; }
  .group-fare-site .gf-process { grid-template-columns:1fr;gap:24px;margin-top:24px; }
  .group-fare-site .gf-process li { display:grid;grid-template-columns:38px minmax(0,1fr);gap:4px 14px;padding-top:20px; }
  .group-fare-site .gf-process li>span { grid-row:1/3;font-size:25px; }
  .group-fare-site .gf-process h3 { margin:0 0 4px; }
  .group-fare-site .gf-process p { grid-column:2; }
  .group-fare-site .gf-draft-note { display:block;padding:12px 14px;font-size:11px;margin-bottom:24px; }
  .group-fare-site .gf-draft-note>span { display:block;margin-bottom:3px; }
  .group-fare-site .gf-guide-group { grid-template-columns:1fr;gap:18px;padding:24px 0; }
  .group-fare-site .gf-guide-group-title h3 { margin-bottom:5px; }
  .group-fare-site .gf-guide-link { padding:18px 16px;gap:14px; }
  .group-fare-site .gf-guide-link h4 { font-size:16px;line-height:1.55; }
  .group-fare-site .gf-guide-link p { font-size:12px; }
  .group-fare-site .gf-contact { grid-template-columns:1fr;padding:26px 22px;gap:30px; }
  .group-fare-site .gf-contact h2 { font-size:25px; }
  .group-fare-site .gf-contact>div>p:not(.gf-kicker) { font-size:13px; }
  .group-fare-site .gf-checklist>div { padding:13px 0; }
  .group-fare-site .gf-checklist dd { font-size:15px; }
  .group-fare-site .gf-related-note { justify-content:flex-start;gap:5px;font-size:12px;line-height:1.8; }
  .group-fare-site .gf-reading-width { width:calc(100% - 40px); }
  .group-fare-site .gf-article-heading { padding-top:8px; }
  .group-fare-site .gf-article-heading h1 { font-size:30px;line-height:1.4;margin-bottom:18px; }
  .group-fare-site .gf-article-description { font-size:14px; }
  .group-fare-site .gf-article-meta { font-size:11px;gap:8px; }
  .group-fare-site .gf-back { font-size:12px;margin-bottom:16px; }
  .group-fare-site .gf-article-body { font-size:16px;line-height:1.95; }
  .group-fare-site .gf-article-body h2 { font-size:22px;margin-top:34px;padding-top:22px; }
  .group-fare-site .gf-article-body h3 { font-size:18px; }
  .group-fare-site .gf-article-body table { font-size:12px;line-height:1.65; }
  .group-fare-site .gf-article-body td,.group-fare-site .gf-article-body th { padding:8px 6px; }
  .group-fare-site .gf-article-navigation { gap:10px;margin-top:34px; }
  .group-fare-site .gf-article-navigation a { padding:14px 12px; }
  .group-fare-site .gf-article-navigation b { font-size:13px; }
  .group-fare-site .gf-article-navigation span { font-size:11px; }
  .group-fare-site .gf-article-contact { margin-top:22px; }
}
@media(prefers-reduced-motion:reduce) { .group-fare-site *, .group-fare-site *::before,.group-fare-site *::after { scroll-behavior:auto;transition:none!important; } }
