service.css 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251
  1. @charset "UTF-8";
  2. /* =========================
  3. Service Pages – Shared Styles
  4. ========================= */
  5. /* Design tokens */
  6. :root {
  7. --brand: #ea5413;
  8. --brand-dark: #c43e00;
  9. --brand-light: #fff3ed;
  10. --gray-border: #e5e7eb;
  11. --text-dark: #0b1120;
  12. --text-secondary: #555;
  13. }
  14. /* Base */
  15. body {
  16. font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans TC", "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  17. color: #0b1120;
  18. background-color: #fff;
  19. }
  20. a {
  21. color: #ea5413;
  22. text-decoration: none;
  23. }
  24. a:hover {
  25. color: #c43e00;
  26. }
  27. /* Utilities */
  28. .text-primary {
  29. color: #ea5413 !important;
  30. }
  31. .shadow-soft {
  32. box-shadow: 0 8px 30px rgba(234, 84, 19, 0.15);
  33. }
  34. .kicker {
  35. letter-spacing: 0.12em;
  36. text-transform: uppercase;
  37. font-weight: 700;
  38. color: #c43e00;
  39. }
  40. .hero {
  41. background: radial-gradient(1200px 520px at 15% -10%, rgba(234, 84, 19, 0.18), transparent), radial-gradient(800px 420px at 100% 0%, rgba(234, 84, 19, 0.1), transparent), linear-gradient(180deg, #fffdfc, #fff7f3);
  42. border-bottom: 1px solid #e5e7eb;
  43. }
  44. .line {
  45. border-bottom: 2px solid #fff3ed;
  46. padding-bottom: 5rem;
  47. margin-bottom: 5rem;
  48. }
  49. .link-btn {
  50. display: inline-flex;
  51. align-items: center;
  52. gap: 0.5rem;
  53. background: #ea5413;
  54. color: #fff;
  55. padding: 0.9rem 1.2rem;
  56. border-radius: 0.8rem;
  57. text-decoration: none;
  58. transition: all 0.2s ease-in-out;
  59. font-weight: 600;
  60. box-shadow: 0 3px 8px rgba(234, 84, 19, 0.2);
  61. }
  62. .link-btn:hover {
  63. background: #c43e00;
  64. color: #fff;
  65. transform: translateY(-1px);
  66. box-shadow: 0 6px 14px rgba(196, 62, 0, 0.25);
  67. }
  68. .outline-btn {
  69. display: inline-flex;
  70. align-items: center;
  71. gap: 0.5rem;
  72. border: 2px solid #ea5413;
  73. color: #ea5413;
  74. padding: 0.8rem 1.2rem;
  75. border-radius: 0.8rem;
  76. font-weight: 600;
  77. background: transparent;
  78. text-decoration: none;
  79. transition: all 0.2s ease-in-out;
  80. }
  81. .outline-btn:hover {
  82. background: #ea5413;
  83. color: #fff;
  84. transform: translateY(-1px);
  85. }
  86. .badge-soft {
  87. background: rgba(234, 84, 19, 0.1);
  88. color: #ea5413;
  89. border: 1px solid rgba(234, 84, 19, 0.2);
  90. font-weight: 600;
  91. }
  92. .feature-card {
  93. border: 1px solid #e5e7eb;
  94. border-radius: 16px;
  95. padding: 20px;
  96. background: #fff;
  97. height: 100%;
  98. transition: all 0.25s ease;
  99. overflow: hidden;
  100. /* 防止內容超出邊框 */
  101. }
  102. .feature-card:hover {
  103. border-color: #ea5413;
  104. box-shadow: 0 6px 20px rgba(234, 84, 19, 0.15);
  105. }
  106. .feature-card h5 {
  107. background: #fff3ed;
  108. color: #c43e00;
  109. text-align: center;
  110. padding: 0.75rem;
  111. border-radius: 10px;
  112. font-weight: 700;
  113. font-size: 1.1rem;
  114. margin-bottom: 1rem;
  115. line-height: 1.5;
  116. }
  117. .feature-card h5 i {
  118. color: #ea5413;
  119. }
  120. .feature-card img.demo-img {
  121. max-width: 100%;
  122. height: auto;
  123. -o-object-fit: contain;
  124. object-fit: contain;
  125. display: block;
  126. border-radius: 12px;
  127. }
  128. @media (min-width: 992px) {
  129. .feature-card img.demo-img {
  130. max-width: 45%;
  131. }
  132. }
  133. .media-card img,
  134. .media-card video {
  135. border-radius: 14px;
  136. width: 100%;
  137. height: auto;
  138. }
  139. .accordion-button {
  140. color: #c43e00;
  141. background-color: #fff;
  142. font-weight: 600;
  143. }
  144. .accordion-button:not(.collapsed) {
  145. color: #ea5413;
  146. background-color: #fff3ed;
  147. box-shadow: inset 0 -1px 0 rgba(234, 84, 19, 0.1);
  148. }
  149. .accordion-button:not(.collapsed)::after {
  150. /* 若要跟隨品牌色動態變更,可改成以 SCSS 產圖或使用 mask + background-color 技法。
  151. 這裡先沿用原本 data-uri(#ea5413)。*/
  152. background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ea5413'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
  153. }
  154. .accordion-button:focus {
  155. box-shadow: 0 0 0 0.2rem rgba(234, 84, 19, 0.25);
  156. }
  157. .ratio iframe {
  158. border: 1px solid #e5e7eb;
  159. border-radius: 12px;
  160. }
  161. table {
  162. width: 100%;
  163. border-collapse: separate;
  164. border-spacing: 0;
  165. }
  166. table th,
  167. table td {
  168. border: 1px solid #e5e7eb;
  169. padding: 1rem;
  170. vertical-align: top;
  171. }
  172. table thead th {
  173. background: #fff3ed;
  174. color: #0b1120;
  175. font-weight: 700;
  176. text-align: center;
  177. border-bottom: none;
  178. }
  179. table tbody td p {
  180. margin-bottom: 0.5rem;
  181. }
  182. table tbody ul {
  183. padding-left: 1.1rem;
  184. margin-bottom: 0;
  185. }
  186. .case-block {
  187. position: relative;
  188. padding-left: 0.25rem;
  189. }
  190. @media (min-width: 992px) {
  191. .case-block {
  192. padding-left: 0.75rem;
  193. }
  194. .case-block::before {
  195. content: "";
  196. position: absolute;
  197. left: -2px;
  198. top: 8px;
  199. bottom: 8px;
  200. width: 4px;
  201. background: linear-gradient(180deg, #ea5413, #c43e00);
  202. border-radius: 4px;
  203. opacity: 0.15;
  204. }
  205. }
  206. .case-block .media-card {
  207. border-radius: 14px;
  208. }
  209. .case-block .media-card img {
  210. display: block;
  211. width: 100%;
  212. height: auto;
  213. border-radius: 12px;
  214. }
  215. .case-block .outline-btn {
  216. margin-top: 0.25rem;
  217. }
  218. .case-meta .badge {
  219. background: #fff3ed !important;
  220. color: #c43e00 !important;
  221. border: 1px solid rgba(234, 84, 19, 0.25) !important;
  222. font-weight: 600;
  223. }
  224. .title {
  225. border-bottom: 2px solid #fff3ed;
  226. }
  227. .cta-band {
  228. background: linear-gradient(135deg, #ea5413, #c43e00);
  229. color: #fff;
  230. border-radius: 20px;
  231. box-shadow: 0 8px 25px rgba(234, 84, 19, 0.25);
  232. }/*# sourceMappingURL=service.css.map */