:root {
  --ty-ink: #26332d;
  --ty-muted: #70786f;
  --ty-green: #426b5a;
  --ty-green-soft: #d8ddd5;
  --ty-paper: #ffffff;
  --ty-card: #fffdf8;
  --ty-line: #ddd6c9;
  --ty-shadow: 0 16px 44px rgba(38, 51, 45, 0.1);
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0 !important;
  background: var(--ty-paper) !important;
  color: var(--ty-ink) !important;
  font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif !important;
  line-height: 1.75;
}

.dusk-header,
.hamburger,
.footer-wrap,
.wsite-footer,
#wsite-menus,
.wsite-menu-wrap {
  display: none !important;
}

.main-wrap {
  padding: 38px 0 76px !important;
  background: var(--ty-paper) !important;
}

.container,
.wsite-section-content {
  width: min(1180px, calc(100% - 36px)) !important;
  max-width: none !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

.wsite-section-wrap,
.wsite-section,
.wsite-body-section,
.wsite-section-content,
.wsite-section-elements {
  background: transparent !important;
  min-height: 0 !important;
}

#wsite-content {
  color: var(--ty-ink);
}

#wsite-content h1,
#wsite-content h2,
#wsite-content h3,
#wsite-content h4,
.wsite-content-title {
  color: var(--ty-ink) !important;
  font-family: inherit !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  line-height: 1.25 !important;
}

#wsite-content h2,
.wsite-content-title {
  margin: 20px 0 12px !important;
  font-size: clamp(25px, 3vw, 42px) !important;
}

#wsite-content p,
#wsite-content .paragraph {
  color: var(--ty-muted) !important;
  font-family: inherit !important;
  font-size: 16px !important;
  line-height: 1.85 !important;
}

#wsite-content a {
  color: var(--ty-green) !important;
  font-weight: 700;
  text-underline-offset: 3px;
}

#wsite-content .wsite-button,
#wsite-content .wsite-button-inner,
#wsite-content input[type="submit"],
#wsite-content button {
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--ty-green) !important;
  color: #fff !important;
  font-family: inherit !important;
  font-weight: 800 !important;
  box-shadow: none !important;
}

.wsite-multicol-table-wrap {
  margin: 18px -10px 34px !important;
}

.wsite-multicol-table,
.wsite-multicol-tbody,
.wsite-multicol-tr {
  width: 100% !important;
}

.wsite-multicol-col {
  padding: 10px !important;
  vertical-align: top !important;
}

.wsite-image,
.galleryImageHolder,
.galleryImageBorder,
.cell {
  border-color: var(--ty-line) !important;
  border-radius: 20px !important;
  background: var(--ty-card) !important;
  box-shadow: none !important;
}

.wsite-image,
.galleryImageHolder {
  overflow: hidden !important;
}

#wsite-content img {
  max-width: 100% !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 18px !important;
}

.galleryImage,
.wsite-image {
  transition: transform 0.22s ease, box-shadow 0.22s ease;
}

.galleryImage:hover,
.wsite-image:hover {
  transform: translateY(-3px);
  box-shadow: var(--ty-shadow) !important;
}

.styled-hr,
hr {
  border: 0 !important;
  border-top: 1px solid var(--ty-line) !important;
}

.wsite-spacer {
  height: 22px !important;
}

.ty-pagebar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: min(1180px, calc(100% - 36px));
  margin: 22px auto 0;
  padding: 12px 16px;
  border: 1px solid var(--ty-line);
  border-radius: 16px;
  background: var(--ty-card);
  color: var(--ty-muted);
  font-size: 14px;
}

.ty-pagebar a {
  color: var(--ty-green) !important;
  font-weight: 800;
  text-decoration: none;
}

.ty-pagebar strong {
  color: var(--ty-ink);
  letter-spacing: 0.12em;
}

.wrapper,
.cell {
  color: var(--ty-ink) !important;
  font-family: inherit !important;
}

.cell {
  padding: 14px !important;
}

@media (max-width: 820px) {
  .main-wrap {
    padding: 24px 0 52px !important;
  }

  .wsite-multicol-table,
  .wsite-multicol-tbody,
  .wsite-multicol-tr {
    display: block !important;
  }

  .wsite-multicol-col {
    display: block !important;
    width: 100% !important;
    padding: 8px 0 !important;
  }

  #wsite-content h2,
  .wsite-content-title {
    font-size: 28px !important;
  }

  #wsite-content p,
  #wsite-content .paragraph {
    font-size: 15px !important;
  }

  .ty-pagebar {
    margin-top: 14px;
    padding: 10px 12px;
  }

  .ty-pagebar span {
    display: none;
  }
}

@media (max-width: 540px) {
  .container,
  .wsite-section-content,
  .ty-pagebar {
    width: min(100% - 28px, 1180px) !important;
  }

  .wsite-spacer {
    height: 12px !important;
  }
}

/* Product detail banners */
.ty-product-hero{box-sizing:border-box;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center;overflow:hidden;width:min(1180px,calc(100% - 72px));height:420px;min-height:420px;margin:0 auto 34px;padding:48px 58px;border-radius:22px;background-color:#f6f2e9;background-image:linear-gradient(90deg,#f6f2e9f5 0%,#f6f2e9e8 35%,#f6f2e970 63%,#f6f2e910 100%),var(--ty-product-image);background-position:center,72% center;background-size:cover;background-repeat:no-repeat;color:#26332d}
.ty-product-copy{position:relative;z-index:1;max-width:570px}
.ty-product-eyebrow{margin:0 0 8px;color:#426b5a;font-size:12px;font-weight:900;letter-spacing:.2em}
.ty-product-copy h1{margin:0 0 12px;color:#26332d;font-family:inherit;font-size:36px;font-weight:900;letter-spacing:-.045em;line-height:1.12}
.ty-product-copy p{margin:0;color:#70786f;font-size:15px;line-height:1.65}
.ty-product-specs{display:flex;flex-wrap:wrap;gap:8px;margin:17px 0 18px}
.ty-product-specs span{padding:6px 11px;border:1px solid #ddd6c9;border-radius:999px;background:#fffdf8;color:#426b5a;font-size:12px;font-weight:800}
.ty-product-link{display:inline-flex;align-items:center;gap:8px;padding:10px 17px;border-radius:999px;background:#426b5a;color:#fff!important;font-size:14px;font-weight:900;text-decoration:none!important}
@media(max-width:1100px){.ty-product-hero{gap:16px;padding:36px 34px}.ty-product-copy h1{font-size:32px}}
@media(max-width:700px){.ty-product-hero{grid-template-columns:1fr;gap:4px;width:min(100% - 28px,1180px);height:auto;min-height:590px;margin-bottom:24px;padding:32px 24px 20px;border-radius:20px;background-image:linear-gradient(180deg,#f6f2e9f5 0%,#f6f2e9e8 43%,#f6f2e950 68%,transparent 100%),var(--ty-product-image);background-position:center,right 22%;background-size:cover,auto 76%}.ty-product-copy h1{font-size:30px}.ty-product-copy p{font-size:14px}.ty-product-specs{margin:13px 0}}

/* Diploma model cards */
.ty-diploma-products{width:min(1180px,calc(100% - 72px));margin:0 auto;padding:30px 0 52px;color:#26332d}
.ty-diploma-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.ty-diploma-eyebrow{color:#426b5a;font-size:12px;font-weight:900;letter-spacing:.18em}
.ty-diploma-head h2{margin:3px 0 0;color:#26332d;font-size:30px;line-height:1.2}
.ty-diploma-head p{margin:0;color:#70786f;font-size:14px}
.ty-diploma-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.ty-diploma-card{overflow:hidden;border:1px solid #ddd6c9;border-radius:17px;background:#fffdf8;color:inherit;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}
.ty-diploma-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #26332d18}
.ty-diploma-image{display:grid;place-items:center;height:240px;padding:12px;background:#f6f2e9}
.ty-diploma-image img{display:block;width:100%;height:100%;object-fit:contain}
.ty-diploma-card-info{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 15px}
.ty-diploma-card-info h3{margin:0;color:#26332d;font-size:19px;line-height:1.35}
.ty-diploma-card-info span{color:#70786f;font-size:13px}
@media(max-width:900px){.ty-diploma-head{align-items:flex-start;flex-direction:column;gap:4px}.ty-diploma-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ty-diploma-products{width:min(100% - 28px,1180px);padding:18px 0 36px}.ty-diploma-head h2{font-size:26px}.ty-diploma-grid{gap:12px}.ty-diploma-image{height:190px;padding:8px}.ty-diploma-card-info{align-items:flex-start;flex-direction:column;gap:2px;padding:9px 11px}.ty-diploma-card-info h3{font-size:16px}.ty-diploma-card-info span{font-size:12px}}
/* Diploma card fit and shared product-page footer */
#wsite-content.ty-diploma-products .ty-diploma-head h2{margin:0!important;font-size:32px!important;line-height:1.2!important;font-weight:900!important}
.ty-diploma-image{box-sizing:border-box;display:flex;align-items:center;justify-content:center;height:220px;padding:12px;overflow:hidden;background:#f6f2e9}
#wsite-content.ty-diploma-products .ty-diploma-image img{display:block;box-sizing:border-box;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain}
.ty-diploma-card-info{min-height:54px;background:#fffdf8}
.ty-home-footer{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(1180px,calc(100% - 72px));margin:12px auto 14px;padding:14px 24px;border-radius:20px;background:#26332d;color:#fff}
.ty-home-footer h2{margin:0;color:#fff;font-size:26px;line-height:1.2}
.ty-home-footer p{margin:5px 0 0;color:#cbd2ce;font-size:13px;line-height:1.45}
.ty-home-footer>a{display:inline-flex;align-items:center;padding:9px 16px;border-radius:999px;background:#426b5a;color:#fff!important;font-weight:900;text-decoration:none!important;white-space:nowrap}
.ty-home-footer-bottom{border-top:1px solid #ddd6c9;padding:14px 0 18px;color:#70786f;font-size:12px;line-height:1.5}
.ty-home-footer-inner{box-sizing:border-box;width:min(1180px,calc(100% - 72px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px 24px}
.ty-home-footer-info{display:flex;flex-direction:column;align-items:flex-start;gap:1px;white-space:nowrap;font-size:12px}
.ty-home-footer-info strong{color:#426b5a;font-size:13px}
.ty-home-footer-info small{font-size:11px}
.ty-home-footer-links{height:auto;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px 20px;white-space:nowrap;font-size:13px}
.ty-home-footer-links a{color:#70786f;text-decoration:none}
.ty-home-footer-links a:hover{color:#426b5a}
@media(max-width:900px){.ty-home-footer-inner{flex-wrap:wrap;justify-content:center}.ty-home-footer-info{align-items:center;text-align:center;white-space:normal}.ty-home-footer-links{justify-content:center}}
@media(max-width:820px){.ty-home-footer{width:min(100% - 36px,1180px);align-items:stretch;flex-direction:column}}
@media(max-width:700px){.ty-diploma-image{height:170px;padding:8px}.ty-home-footer{width:min(100% - 28px,1180px);padding:22px 20px}.ty-home-footer h2{font-size:24px}}
@media(max-width:540px){.ty-home-footer-inner{width:calc(100% - 28px);flex-direction:column}.ty-home-footer-info{font-size:11px}.ty-home-footer-links{gap:6px 12px;white-space:normal;justify-content:center}}
.ty-diploma-viewer{box-sizing:border-box;width:min(1120px,calc(100vw - 40px));height:min(860px,calc(100dvh - 40px));max-width:none;max-height:none;margin:auto;padding:0;overflow:hidden;border:1px solid #ddd6c9;border-radius:20px;background:#fffdf8;color:#26332d;box-shadow:0 24px 80px #10171355}
.ty-diploma-viewer::backdrop{background:#111916d9;backdrop-filter:blur(4px)}
.ty-diploma-viewer-head{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:16px;height:76px;padding:14px 22px;border-bottom:1px solid #e5dfd4;background:#fffdf8}
.ty-diploma-viewer-head span{color:#426b5a;font-size:10px;font-weight:900;letter-spacing:.16em}
.ty-diploma-viewer-head h2{margin:2px 0 0;color:#26332d;font-size:24px;line-height:1.2}
.ty-diploma-viewer-close{display:grid;place-items:center;width:42px;height:42px;border:1px solid #ddd6c9;border-radius:50%;background:#f6f2e9;color:#26332d;font-size:30px;line-height:1;cursor:pointer}
.ty-diploma-viewer-stage{box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;height:calc(100% - 198px);min-height:0;padding:18px 64px;background:#f6f2e9}
.ty-diploma-viewer-stage img{display:block;width:100%;height:100%;object-fit:contain}
.ty-diploma-viewer-stage button{position:absolute;top:50%;z-index:1;display:grid;place-items:center;width:44px;height:44px;transform:translateY(-50%);border:1px solid #ddd6c9;border-radius:50%;background:#fffdf8;color:#26332d;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 4px 14px #26332d18}
.ty-diploma-viewer-prev{left:12px}.ty-diploma-viewer-next{right:12px}
.ty-diploma-viewer-thumbs{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:8px;height:70px;padding:8px 14px;border-top:1px solid #e5dfd4;background:#fffdf8}
.ty-diploma-viewer-thumb{box-sizing:border-box;display:grid;place-items:center;flex:1 1 0;min-width:0;max-width:160px;height:52px;padding:3px;border:1px solid #ddd6c9;border-radius:8px;background:#f6f2e9;cursor:pointer;opacity:.68;transition:opacity .15s,border-color .15s,transform .15s}
.ty-diploma-viewer-thumb:hover{opacity:1;transform:translateY(-1px)}
.ty-diploma-viewer-thumb.is-active{border:2px solid #426b5a;opacity:1}
.ty-diploma-viewer-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.ty-diploma-viewer-foot{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:12px;height:52px;padding:0 22px;color:#426b5a;font-size:13px;font-weight:800}
.ty-diploma-viewer-foot small{color:#70786f;font-size:11px;font-weight:500}
@media(max-width:600px){.ty-diploma-viewer{width:calc(100vw - 20px);height:calc(100dvh - 20px);border-radius:14px}.ty-diploma-viewer-head{height:66px;padding:10px 14px}.ty-diploma-viewer-head h2{font-size:20px}.ty-diploma-viewer-stage{height:calc(100% - 168px);padding:12px 46px}.ty-diploma-viewer-stage button{width:36px;height:36px;font-size:25px}.ty-diploma-viewer-prev{left:6px}.ty-diploma-viewer-next{right:6px}.ty-diploma-viewer-thumbs{height:56px;justify-content:flex-start;gap:5px;padding:6px}.ty-diploma-viewer-thumb{flex:0 0 54px;height:42px}.ty-diploma-viewer-foot{height:46px;padding:0 14px}.ty-diploma-viewer-foot small{display:none}}
.wsite-page-diploma .main-wrap{padding-bottom:0!important}
.wsite-page-diploma #wsite-content.ty-diploma-products{padding-bottom:12px!important}
.wsite-page-diploma .ty-home-footer{margin-top:0}
.wsite-page-calendar-07 .ty-product-copy{z-index:2;max-width:540px}
.wsite-page-calendar-07 .ty-product-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:16px}
.wsite-page-calendar-07 .ty-calendar07-action{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border:1px solid #ddd6c9;border-radius:999px;background:#fffdf8;color:#426b5a!important;font-size:11px;font-weight:800;line-height:1.25;text-decoration:none!important;transition:background .15s,color .15s}
.wsite-page-calendar-07 .ty-calendar07-action:hover{border-color:#426b5a;background:#426b5a;color:#fff!important}
.wsite-page-calendar-07 table.ty-calendar07-products{display:block;width:100%;border-collapse:separate!important;border-spacing:0!important}
.wsite-page-calendar-07 table.ty-calendar07-products tbody{display:block;width:100%}
.wsite-page-calendar-07 table.ty-calendar07-products tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:100%}
.wsite-page-calendar-07 table.ty-calendar07-products td{box-sizing:border-box;display:flex;flex-direction:column;width:auto!important;padding:12px!important;overflow:hidden;border:1px solid #ddd6c9;border-radius:18px;background:#fffdf8;box-shadow:0 4px 14px #26332d0a}
.wsite-page-calendar-07 table.ty-calendar07-products td h2{order:2;margin:10px 2px 0!important;color:#26332d!important;font-family:inherit!important;font-size:18px!important;font-weight:850!important;line-height:1.25!important;text-align:left!important}
.wsite-page-calendar-07 table.ty-calendar07-products td .wsite-image{order:1;box-sizing:border-box;display:flex;align-items:center;justify-content:center;height:270px;margin:0!important;padding:12px!important;overflow:hidden;border-radius:12px;background:#f6f2e9}
.wsite-page-calendar-07 table.ty-calendar07-products td .wsite-image a{display:flex;width:100%;height:100%;align-items:center;justify-content:center}
.wsite-page-calendar-07 table.ty-calendar07-products td .wsite-image img{display:block;width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain}
@media(max-width:700px){.wsite-page-calendar-07 .ty-product-copy{align-self:start}.wsite-page-calendar-07 .ty-product-actions{gap:7px}.wsite-page-calendar-07 table.ty-calendar07-products tr{grid-template-columns:1fr;gap:12px}.wsite-page-calendar-07 table.ty-calendar07-products td .wsite-image{height:250px}}
.wsite-page-calendar-2026-13 .ty-product-actions{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:16px}
.wsite-page-calendar-2026-13 .ty-calendar07-action{display:inline-flex;align-items:center;justify-content:center;padding:4px 10px;border:1px solid #ddd6c9;border-radius:999px;background:#fffdf8;color:#426b5a!important;font-size:11px;font-weight:800;line-height:1.25;text-decoration:none!important;transition:background .15s,color .15s}
.wsite-page-calendar-2026-13 .ty-calendar07-action:hover{border-color:#426b5a;background:#426b5a;color:#fff!important}
.wsite-page-calendar-2026-13 .ty-monthly-13-head{margin:4px auto 18px;text-align:center;color:#26332d}
.wsite-page-calendar-2026-13 .ty-monthly-13-head h2{margin:2px 0 4px;color:#26332d;font-size:28px;font-weight:900;line-height:1.2}
.wsite-page-calendar-2026-13 .ty-monthly-13-head p{margin:0;color:#70786f;font-size:14px}
.wsite-page-calendar-2026-13 .ty-monthly-13-products{display:flex;justify-content:center;width:min(1180px,calc(100% - 72px));margin:0 auto 38px}
.wsite-page-calendar-2026-13 .ty-monthly-13-card{display:flex;flex-direction:column;width:min(420px,100%);padding:10px;border:1px solid #ddd6c9;border-radius:18px;background:#fffdf8;box-shadow:0 4px 14px #26332d0a;color:#26332d;text-align:left;cursor:pointer;transition:transform .18s,box-shadow .18s}
.wsite-page-calendar-2026-13 .ty-monthly-13-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px #26332d18}
.wsite-page-calendar-2026-13 .ty-monthly-13-card-image{display:flex;align-items:center;justify-content:center;height:250px;overflow:hidden;border-radius:12px;background:#f6f2e9}
.wsite-page-calendar-2026-13 .ty-monthly-13-card-image img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain}
.wsite-page-calendar-2026-13 .ty-monthly-13-card-info{display:grid;grid-template-columns:1fr auto;gap:4px 10px;padding:13px 5px 5px;align-items:center}
.wsite-page-calendar-2026-13 .ty-monthly-13-card-info strong{font-size:18px;font-weight:900}
.wsite-page-calendar-2026-13 .ty-monthly-13-card-info small{grid-column:1;color:#70786f;font-size:12px}
.wsite-page-calendar-2026-13 .ty-monthly-13-card-info>span{grid-column:2;grid-row:1/3;color:#426b5a;font-size:12px;font-weight:800;white-space:nowrap}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:18px;background:#19221fd9}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery.is-open{display:flex}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-panel{box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;width:min(1120px,100%);max-height:calc(100vh - 36px);padding:16px;border:1px solid #ddd6c9;border-radius:18px;background:#fffdf8;box-shadow:0 22px 70px #0005;overflow:hidden}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 12px;color:#26332d}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-head span{color:#426b5a;font-size:10px;font-weight:900;letter-spacing:.18em}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-head h2{margin:3px 0 0;color:#26332d;font-size:22px;font-weight:900}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-head button{width:36px;height:36px;border:1px solid #ddd6c9;border-radius:50%;background:#fff;color:#26332d;font-size:25px;line-height:1;cursor:pointer}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-stage{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:8px;min-height:0}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-stage>button{width:40px;height:40px;border:1px solid #ddd6c9;border-radius:50%;background:#fff;color:#426b5a;font-size:29px;line-height:1;cursor:pointer}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-stage figure{display:flex;align-items:center;justify-content:center;min-width:0;height:100%;margin:0;padding:8px;overflow:hidden;border-radius:12px;background:#f6f2e9}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-stage figure img{display:block;width:auto;height:auto;max-width:100%;max-height:min(62vh,680px);object-fit:contain}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-thumbs{display:flex;gap:8px;margin-top:12px;padding:4px 2px 8px;overflow-x:auto;overscroll-behavior-x:contain}
.wsite-page-calendar-2026-13 .ty-monthly-13-thumb{position:relative;flex:0 0 88px;height:62px;padding:2px;border:1px solid #ddd6c9;border-radius:8px;background:#f6f2e9;cursor:pointer}
.wsite-page-calendar-2026-13 .ty-monthly-13-thumb.is-active{border:2px solid #426b5a}
.wsite-page-calendar-2026-13 .ty-monthly-13-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.wsite-page-calendar-2026-13 .ty-monthly-13-thumb span{position:absolute;right:3px;bottom:2px;padding:1px 4px;border-radius:5px;background:#26332dcc;color:#fff;font-size:10px}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-foot{display:flex;justify-content:space-between;gap:12px;padding:4px 3px 0;color:#70786f;font-size:12px}
.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-foot span:first-child{color:#426b5a;font-weight:900}
body.wsite-page-calendar-2026-13.ty-monthly-gallery-open{overflow:hidden}
@media(max-width:700px){.wsite-page-calendar-2026-13 .ty-product-actions{gap:7px}.wsite-page-calendar-2026-13 .ty-monthly-13-products{width:calc(100% - 28px)}.wsite-page-calendar-2026-13 .ty-monthly-13-card-image{height:220px}.wsite-page-calendar-2026-13 .ty-monthly-13-gallery{padding:8px}.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-panel{height:calc(100vh - 16px);max-height:none;padding:10px;border-radius:14px}.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-stage{grid-template-columns:34px minmax(0,1fr) 34px;gap:4px}.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-stage>button{width:32px;height:32px;font-size:24px}.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-stage figure{padding:4px}.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-stage figure img{max-height:55vh}.wsite-page-calendar-2026-13 .ty-monthly-13-thumb{flex-basis:72px;height:50px}.wsite-page-calendar-2026-13 .ty-monthly-13-gallery-foot{font-size:10px}}
/* Board case gallery */
.wsite-page-board .ty-board-projects-head{margin:8px auto 24px;text-align:center}
.wsite-page-board .ty-board-projects-head h2{margin:3px 0 5px!important;color:#26332d!important;font-size:clamp(28px,3vw,40px)!important;font-weight:900!important}
.wsite-page-board .ty-board-projects-head p{margin:0;color:#70786f;font-size:15px}
.wsite-page-board #wsite-content .wsite-background-152{display:none!important}
.wsite-page-board #wsite-content .wsite-background-153 .wsite-multicol-table{display:block!important;width:100%!important;border-collapse:separate!important;border-spacing:0!important}
.wsite-page-board #wsite-content .wsite-background-153 .wsite-multicol-tbody{display:block!important;width:100%!important}
.wsite-page-board #wsite-content .wsite-background-153 .wsite-multicol-tr{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;width:100%!important}
.wsite-page-board #wsite-content .wsite-background-153 .wsite-multicol-col{display:contents!important}
.wsite-page-board #wsite-content .wsite-background-153 .wsite-multicol-col>div{box-sizing:border-box;min-width:0;padding:10px;border:1px solid #ddd6c9;border-radius:18px;background:#fffdf8;box-shadow:0 4px 14px #26332d0a}
.wsite-page-board #wsite-content .wsite-background-153 .wsite-image{display:flex;align-items:center;justify-content:center;height:230px;margin:0!important;padding:8px!important;overflow:hidden;border-radius:12px;background:#f6f2e9}
.wsite-page-board #wsite-content .wsite-background-153 .wsite-image a{display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.wsite-page-board #wsite-content .wsite-background-153 .wsite-image img{display:block;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover}
/* Restore the featured single-month product tile from global button styling. */
#wsite-content .ty-monthly-13-card{appearance:none;box-sizing:border-box;display:flex!important;flex-direction:column;width:min(520px,100%)!important;padding:10px!important;border:1px solid #ddd6c9!important;border-radius:18px!important;background:#fffdf8!important;color:#26332d!important;text-align:left!important;box-shadow:0 4px 14px #26332d0a!important}
#wsite-content .ty-monthly-13-card:hover{background:#fffdf8!important;color:#26332d!important}
#wsite-content .ty-monthly-13-card-image{width:100%;height:250px;background:#f6f2e9}
#wsite-content .ty-monthly-13-card-info{width:100%;box-sizing:border-box}
#wsite-content .ty-monthly-13-card-info strong{color:#26332d}
@media(max-width:820px){.wsite-page-board #wsite-content .wsite-background-153 .wsite-multicol-tr{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}.wsite-page-board #wsite-content .wsite-background-153 .wsite-image{height:210px}}
@media(max-width:540px){.wsite-page-board #wsite-content .wsite-background-153 .wsite-multicol-tr{grid-template-columns:1fr!important}.wsite-page-board #wsite-content .wsite-background-153 .wsite-image{height:240px}#wsite-content .ty-monthly-13-card-image{height:220px}}
.wsite-page-calendar-07 .ty-calendar07-head{margin:4px auto 18px;text-align:center;color:#26332d}
.wsite-page-calendar-07 .ty-calendar07-head h2{margin:2px 0 0!important;color:#26332d!important;font-size:clamp(28px,3vw,40px)!important;font-weight:900!important;line-height:1.2!important}
.ty-return-products-bottom{box-sizing:border-box;display:flex;justify-content:flex-start;width:min(1180px,calc(100% - 72px));margin:18px auto 22px}
.ty-return-products-bottom a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:190px;padding:12px 22px;border:1px solid #ddd6c9;border-radius:999px;background:#fffdf8;color:#426b5a!important;font-size:14px;font-weight:900;line-height:1.3;text-decoration:none!important;transition:background .16s,color .16s,border-color .16s}
.ty-return-products-bottom a:hover{border-color:#426b5a;background:#426b5a;color:#fff!important}
@media(max-width:700px){.ty-return-products-bottom{width:calc(100% - 28px);margin:14px auto 18px}.ty-return-products-bottom a{width:100%;max-width:420px;padding:12px 18px}}
.ty-pagebar{position:relative;justify-content:flex-end}
.ty-pagebar>a:first-child{display:none!important}
.ty-pagebar>strong{position:absolute;left:50%;transform:translateX(-50%)}

/* Shared product-detail typography and vertical rhythm */
body.wsite-page-calendar-07 .main-wrap,
body.wsite-page-calendar-2026-13 .main-wrap,
body.wsite-page-calendar-fra .main-wrap,
body.wsite-page-diploma .main-wrap,
body.wsite-page-board .main-wrap{padding:32px 0 48px!important}
body.wsite-page-calendar-1218.wsite-theme-light .main-wrap{padding:32px 0 48px!important}
body.wsite-page-calendar-07 .ty-product-hero,
body.wsite-page-calendar-2026-13 .ty-product-hero,
body.wsite-page-calendar-fra .ty-product-hero,
body.wsite-page-diploma .ty-product-hero,
body.wsite-page-board .ty-product-hero,
body.wsite-page-calendar-1218 .ty-calendar-hero{margin-bottom:32px!important}
body.wsite-page-calendar-07 #wsite-content>.wsite-section-wrap:first-child .wsite-section-content,
body.wsite-page-calendar-2026-13 #wsite-content>.wsite-section-wrap:first-child .wsite-section-content,
body.wsite-page-calendar-fra #wsite-content>.wsite-section-wrap:first-child .wsite-section-content,
body.wsite-page-board #wsite-content>.wsite-section-wrap:first-child .wsite-section-content{padding-top:0!important}
body.wsite-page-calendar-1218 .ty-calendar-products{margin-top:0!important;margin-bottom:40px!important}
body.wsite-page-diploma #wsite-content.ty-diploma-products{padding-top:0!important;padding-bottom:40px!important}
body.wsite-page-calendar-1218 .ty-calendar-section-head,
body.wsite-page-calendar-07 .ty-calendar07-head,
body.wsite-page-calendar-2026-13 .ty-monthly-13-head,
body.wsite-page-diploma .ty-diploma-head,
body.wsite-page-board .ty-board-projects-head{display:block!important;box-sizing:border-box;width:min(1180px,100%);margin:0 auto 18px!important;text-align:center!important}
body.wsite-page-calendar-1218 .ty-calendar-section-head h2,
body.wsite-page-calendar-07 .ty-calendar07-head h2,
body.wsite-page-calendar-2026-13 .ty-monthly-13-head h2,
body.wsite-page-diploma .ty-diploma-head h2,
body.wsite-page-board .ty-board-projects-head h2{margin:3px 0 0!important;color:#26332d!important;font-family:inherit!important;font-size:32px!important;font-weight:900!important;line-height:1.2!important;letter-spacing:-.025em!important}
body.wsite-page-calendar-1218 .ty-calendar-section-head .eyebrow,
body.wsite-page-calendar-07 .ty-calendar07-head .ty-product-eyebrow,
body.wsite-page-calendar-2026-13 .ty-monthly-13-head .ty-product-eyebrow,
body.wsite-page-diploma .ty-diploma-head .ty-diploma-eyebrow,
body.wsite-page-board .ty-board-projects-head .ty-product-eyebrow{display:block;margin:0 0 3px!important;color:#426b5a!important;font-size:11px!important;font-weight:900!important;line-height:1.4!important;letter-spacing:.18em!important}
body.wsite-page-calendar-1218 .ty-calendar-section-head p,
body.wsite-page-calendar-2026-13 .ty-monthly-13-head p,
body.wsite-page-diploma .ty-diploma-head p,
body.wsite-page-board .ty-board-projects-head p{max-width:760px!important;margin:8px auto 0!important;color:#70786f!important;font-family:inherit!important;font-size:14px!important;font-weight:400!important;line-height:1.65!important;text-align:center!important}
body.wsite-page-calendar-07 .ty-calendar07-head{padding:0!important}
body.wsite-page-calendar-fra #wsite-content>.wsite-section-wrap:first-child .wsite-section-elements>h2.wsite-content-title:nth-of-type(1){margin:0 0 3px!important;color:#26332d!important;font-family:inherit!important;font-size:32px!important;font-weight:900!important;line-height:1.2!important;letter-spacing:-.025em!important;text-align:center!important}
body.wsite-page-calendar-fra #wsite-content>.wsite-section-wrap:first-child .wsite-section-elements>h2.wsite-content-title:nth-of-type(1)::before{content:"FEATURED COLLECTION";display:block;margin:0 0 3px;color:#426b5a;font-family:inherit;font-size:11px;font-weight:900;line-height:1.4;letter-spacing:.18em}
body.wsite-page-calendar-fra #wsite-content>.wsite-section-wrap:first-child .wsite-section-elements>h2.wsite-content-title:nth-of-type(2){max-width:760px;margin:8px auto 18px!important;color:#70786f!important;font-family:inherit!important;font-size:14px!important;font-weight:400!important;line-height:1.65!important;text-align:center!important}
@media(max-width:700px){body.wsite-page-calendar-07 .main-wrap,body.wsite-page-calendar-2026-13 .main-wrap,body.wsite-page-calendar-fra .main-wrap,body.wsite-page-diploma .main-wrap,body.wsite-page-board .main-wrap,body.wsite-page-calendar-1218.wsite-theme-light .main-wrap{padding:24px 0 36px!important}body.wsite-page-calendar-07 .ty-product-hero,body.wsite-page-calendar-2026-13 .ty-product-hero,body.wsite-page-calendar-fra .ty-product-hero,body.wsite-page-diploma .ty-product-hero,body.wsite-page-board .ty-product-hero,body.wsite-page-calendar-1218 .ty-calendar-hero{margin-bottom:24px!important}body.wsite-page-calendar-1218 .ty-calendar-section-head h2,body.wsite-page-calendar-07 .ty-calendar07-head h2,body.wsite-page-calendar-2026-13 .ty-monthly-13-head h2,body.wsite-page-diploma .ty-diploma-head h2,body.wsite-page-board .ty-board-projects-head h2,body.wsite-page-calendar-fra #wsite-content>.wsite-section-wrap:first-child .wsite-section-elements>h2.wsite-content-title:nth-of-type(1){font-size:26px!important}}
/* Calendar product labels follow the same compact type scale as sibling product pages. */
.wsite-page-calendar-07 table.ty-calendar07-products h2.wsite-content-title{margin:10px 0 8px!important;color:#26332d!important;font-family:inherit!important;font-size:18px!important;font-weight:900!important;line-height:1.25!important;text-align:center!important}
.wsite-page-calendar-07 table.ty-calendar07-products h2.wsite-content-title font{color:inherit!important;font-size:inherit!important}
@media(max-width:700px){.wsite-page-calendar-07 table.ty-calendar07-products h2.wsite-content-title{margin:8px 0 6px!important;font-size:16px!important}}
.wsite-page-calendar-07 .ty-product-actions,.wsite-page-calendar-2026-13 .ty-product-actions{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
.wsite-page-calendar-07 .ty-product-actions>a:not(:first-child),.wsite-page-calendar-2026-13 .ty-product-actions>a:not(:first-child){margin-left:0!important}
.ty-service-page{margin:0;color:#26332d;background:#fff;font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;line-height:1.65}
.ty-service-shell{width:min(1180px,calc(100% - 72px));margin-left:auto;margin-right:auto}
.ty-service-nav{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:52px;margin:18px auto 22px;padding:10px 16px;border:1px solid #ddd6c9;border-radius:15px;background:#fffdf8;color:#70786f;font-size:12px}
.ty-service-nav strong{position:absolute;left:50%;transform:translateX(-50%);color:#26332d;letter-spacing:.16em}.ty-service-nav span:first-child{color:#426b5a;font-weight:800}
.ty-service-hero{display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:30px;min-height:420px;padding:42px 52px;border-radius:24px;background:linear-gradient(100deg,#f6f2e9 0%,#f6f2e9ed 42%,#f6f2e92a 100%);overflow:hidden}
.ty-service-eyebrow{color:#426b5a;font-size:11px;font-weight:900;letter-spacing:.18em}.ty-service-hero h1{margin:8px 0 12px;font-size:clamp(32px,4vw,46px);font-weight:900;line-height:1.2;letter-spacing:-.03em}.ty-service-hero p,.ty-service-title p{margin:0;color:#70786f;font-size:14px;line-height:1.7}
.ty-service-tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}.ty-service-tags span{padding:5px 11px;border:1px solid #ddd6c9;border-radius:999px;background:#fffdf8;color:#426b5a;font-size:12px;font-weight:800}.ty-service-button{display:inline-flex;padding:10px 17px;border-radius:999px;background:#426b5a;color:#fff!important;font-size:13px;font-weight:900;text-decoration:none!important}
.ty-service-visual{display:flex;align-items:center;justify-content:center;min-height:300px;padding:12px;border-radius:18px;background:#fffdf8aa}.ty-service-visual img{max-width:100%;max-height:340px;object-fit:contain}
.ty-service-content{padding:44px 0 48px}.ty-service-title{margin-bottom:20px;text-align:center}.ty-service-title h2{margin:3px 0 0;font-size:32px;font-weight:900;line-height:1.2;letter-spacing:-.025em}.ty-service-title p{max-width:760px;margin:8px auto 0}
.ty-service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ty-service-card{padding:21px;border:1px solid #ddd6c9;border-radius:16px;background:#fffdf8}.ty-service-card strong{font-size:17px}.ty-service-card p{margin:6px 0 0;color:#70786f;font-size:13px;line-height:1.7}
.ty-service-contact{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:8px auto 24px;padding:22px 25px;border-radius:18px;background:#26332d;color:#fff}.ty-service-contact h2{margin:0 0 4px;font-size:22px}.ty-service-contact p{margin:0;color:#cbd2ce;font-size:13px}
@media(max-width:700px){.ty-service-shell{width:calc(100% - 28px)}.ty-service-nav{margin:12px auto 16px;padding:9px 11px}.ty-service-nav span:last-child{display:none}.ty-service-hero{grid-template-columns:1fr;gap:14px;min-height:0;padding:28px 22px}.ty-service-hero h1{font-size:30px}.ty-service-visual{min-height:220px}.ty-service-visual img{max-height:240px}.ty-service-content{padding:30px 0 34px}.ty-service-title h2{font-size:26px}.ty-service-cards{grid-template-columns:1fr;gap:10px}.ty-service-card{padding:17px}.ty-service-contact{align-items:flex-start;flex-direction:column;margin:6px auto 18px;padding:20px}}
/* Service contact panels match the shared dark footer dimensions. */
.ty-service-contact{box-sizing:border-box;gap:20px;width:min(1180px,calc(100% - 72px));margin:12px auto 14px;padding:14px 24px;border-radius:20px}
.ty-service-contact h2{margin:0;font-size:26px;line-height:1.2}
.ty-service-contact p{margin:5px 0 0;font-size:13px;line-height:1.45}
.ty-service-contact .ty-service-button{padding:9px 16px}
@media(max-width:820px){.ty-service-contact{width:min(100% - 36px,1180px);align-items:stretch;flex-direction:column}}
@media(max-width:700px){.ty-service-contact{width:min(100% - 28px,1180px);margin:12px auto 14px;padding:22px 20px}.ty-service-contact h2{font-size:24px}}
.ty-pagebar:not(.ty-pagebar-bottom){display:none!important}
.ty-pagebar.ty-pagebar-bottom{display:flex!important;justify-content:space-between!important;margin:18px auto 22px!important}
.ty-pagebar.ty-pagebar-bottom>a:first-child{display:inline-flex!important;align-items:center;color:#426b5a!important;font-weight:800;text-decoration:none}
.ty-pagebar.ty-pagebar-bottom>strong{position:absolute;left:50%;transform:translateX(-50%)}
@media(max-width:700px){.ty-pagebar.ty-pagebar-bottom{width:calc(100% - 28px);margin:14px auto 18px!important;padding:10px 12px}.ty-pagebar.ty-pagebar-bottom>a:first-child{font-size:12px}.ty-pagebar.ty-pagebar-bottom span{display:none!important}}

/* Product hero-to-collection spacing: remove legacy nested top insets. */
body:is(.wsite-page-calendar-07,.wsite-page-calendar-2026-13,.wsite-page-calendar-fra,.wsite-page-board) .main-wrap > #wsite-content {
  display:flow-root;
  margin-top:0!important;
  padding-top:0!important;
}
body:is(.wsite-page-calendar-07,.wsite-page-calendar-2026-13,.wsite-page-calendar-fra,.wsite-page-board) #wsite-content > .wsite-section-wrap:first-child,
body:is(.wsite-page-calendar-07,.wsite-page-calendar-2026-13,.wsite-page-calendar-fra,.wsite-page-board) #wsite-content > .wsite-section-wrap:first-child > .wsite-section,
body:is(.wsite-page-calendar-07,.wsite-page-calendar-2026-13,.wsite-page-calendar-fra,.wsite-page-board) #wsite-content > .wsite-section-wrap:first-child > .wsite-section > .wsite-section-content,
body:is(.wsite-page-calendar-07,.wsite-page-calendar-2026-13,.wsite-page-calendar-fra,.wsite-page-board) #wsite-content > .wsite-section-wrap:first-child > .wsite-section > .wsite-section-content > .container,
body:is(.wsite-page-calendar-07,.wsite-page-calendar-2026-13,.wsite-page-calendar-fra,.wsite-page-board) #wsite-content > .wsite-section-wrap:first-child > .wsite-section > .wsite-section-content > .container > .wsite-section-elements {
  margin-top:0!important;
  padding-top:0!important;
}/* Keep collection headings anchored while legacy reveal scripts initialize. */
body.wsite-page-calendar-07 .ty-calendar07-head,
body.wsite-page-calendar-2026-13 .ty-monthly-13-head,
body.wsite-page-calendar-fra #wsite-content > .wsite-section-wrap:first-child .wsite-section-elements > h2.wsite-content-title:first-of-type {
  transform:none!important;
  opacity:1!important;
  visibility:visible!important;
  transition:none!important;
}
/* Calendar hero actions share one row and equal button dimensions. */
body:is(.wsite-page-calendar-1218,.wsite-page-calendar-07,.wsite-page-calendar-2026-13) .main-wrap .ty-calendar-hero-actions {
  display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;
  align-items:center!important;gap:10px!important;margin-top:16px!important;
}
body:is(.wsite-page-calendar-1218,.wsite-page-calendar-07) .main-wrap .ty-calendar-hero-actions > div {
  display:contents!important;
}
body:is(.wsite-page-calendar-1218,.wsite-page-calendar-07,.wsite-page-calendar-2026-13) .main-wrap .ty-calendar-hero-actions a {
  display:inline-flex!important;box-sizing:border-box!important;align-items:center!important;justify-content:center!important;
  flex:0 0 136px!important;width:136px!important;height:46px!important;min-height:46px!important;
  margin:0!important;padding:10px 12px!important;border:1px solid #ddd6c9!important;border-radius:999px!important;
  font-size:14px!important;font-weight:900!important;line-height:1.35!important;white-space:nowrap;gap:6px!important;
  text-decoration:none!important;background:#fffdf8;color:#426b5a!important;
}
body:is(.wsite-page-calendar-1218,.wsite-page-calendar-07,.wsite-page-calendar-2026-13) .main-wrap .ty-calendar-hero-actions a:is(.ty-product-link,.ty-calendar-button) {
  border-color:#426b5a!important;background:#426b5a!important;color:#fff!important;
}
@media(max-width:700px){
 body:is(.wsite-page-calendar-1218,.wsite-page-calendar-07,.wsite-page-calendar-2026-13) .main-wrap .ty-calendar-hero-actions{gap:6px!important;width:100%}
 body:is(.wsite-page-calendar-1218,.wsite-page-calendar-07,.wsite-page-calendar-2026-13) .main-wrap .ty-calendar-hero-actions a{flex:1 1 0!important;width:auto!important;min-width:0;padding:10px 6px!important;font-size:clamp(10px,3vw,12px)!important}
 body:is(.wsite-page-calendar-1218,.wsite-page-calendar-07,.wsite-page-calendar-2026-13) .main-wrap .ty-calendar-hero-actions a > span[aria-hidden]{display:none}
}