Changes for page Public Web Site
Last modified by Agnease on 2026/05/30 16:24
Summary
-
Objects (1 modified, 0 added, 0 removed)
Details
- XWiki.StyleSheetExtension[0]
-
- code
-
... ... @@ -900,3 +900,265 @@ 900 900 position: static; 901 901 } 902 902 } 903 +/* ========== Products / Extensions Pages ========== */ 904 + 905 +.product-index-section { 906 + padding: 52px 0 56px; 907 + 908 + h2 { 909 + margin-bottom: 10px; 910 + } 911 +} 912 + 913 +.product-card-grid { 914 + max-width: 840px; 915 + margin: 28px auto 0; 916 + display: grid; 917 + grid-template-columns: 1fr; 918 + grid-gap: 18px; 919 +} 920 + 921 +.product-card { 922 + background: #fff; 923 + border: 1px solid @line; 924 + border-radius: @radius; 925 + box-shadow: @shadow-sm; 926 + padding: 28px; 927 + display: grid; 928 + grid-template-columns: 68px 1fr; 929 + grid-gap: 22px; 930 + align-items: start; 931 + transition: transform .18s ease, box-shadow .18s ease; 932 + 933 + &:hover { 934 + transform: translateY(-2px); 935 + box-shadow: @shadow; 936 + } 937 + 938 + .product-card-icon { 939 + width: 58px; 940 + height: 58px; 941 + border-radius: 50%; 942 + background: fade(@brand, 10%); 943 + border: 1px solid fade(@brand, 20%); 944 + color: @brand; 945 + display: flex; 946 + align-items: center; 947 + justify-content: center; 948 + font-size: 22px; 949 + flex-shrink: 0; 950 + } 951 + 952 + h3 { 953 + margin: 0 0 10px; 954 + color: @text; 955 + font-size: 23px; 956 + line-height: 1.25; 957 + font-weight: 800; 958 + } 959 + 960 + p { 961 + color: @muted; 962 + line-height: 1.6; 963 + } 964 + 965 + .card-link { 966 + margin: 0; 967 + 968 + a { 969 + font-weight: 700; 970 + } 971 + } 972 +} 973 + 974 +.product-card-kicker { 975 + margin-bottom: 10px; 976 + padding: 5px 10px; 977 + font-size: 12px; 978 + text-transform: uppercase; 979 + letter-spacing: .04em; 980 +} 981 + 982 +.product-highlights { 983 + margin: 14px 0 20px; 984 + padding-left: 18px; 985 + color: @muted; 986 + 987 + li { 988 + margin: 6px 0; 989 + line-height: 1.45; 990 + } 991 +} 992 + 993 +/* ========== Individual Product Pages ========== */ 994 + 995 +.product-layout { 996 + display: grid; 997 + grid-template-columns: 1.1fr .9fr; 998 + grid-gap: 36px; 999 + max-width: 1040px; 1000 + margin: 0 auto; 1001 + align-items: start; 1002 +} 1003 + 1004 +.product-summary-card, 1005 +.product-info-card, 1006 +.product-gallery-panel { 1007 + background: #fff; 1008 + border: 1px solid @line; 1009 + border-radius: @radius; 1010 + box-shadow: @shadow-sm; 1011 +} 1012 + 1013 +.product-summary-card { 1014 + padding: 26px; 1015 + 1016 + h2 { 1017 + text-align: left; 1018 + margin-top: 0; 1019 + } 1020 + 1021 + p { 1022 + color: @muted; 1023 + line-height: 1.6; 1024 + } 1025 + 1026 + p:last-child { 1027 + margin-bottom: 0; 1028 + } 1029 +} 1030 + 1031 +.product-info-card { 1032 + padding: 22px; 1033 + 1034 + h3 { 1035 + margin-top: 0; 1036 + margin-bottom: 12px; 1037 + } 1038 + 1039 + ul { 1040 + margin: 0; 1041 + padding-left: 20px; 1042 + color: @muted; 1043 + } 1044 + 1045 + li { 1046 + margin: 8px 0; 1047 + line-height: 1.45; 1048 + } 1049 +} 1050 + 1051 +.product-feature-grid { 1052 + display: grid; 1053 + grid-template-columns: repeat(3, minmax(0, 1fr)); 1054 + grid-gap: 18px; 1055 + max-width: 1040px; 1056 + margin: 26px auto 0; 1057 +} 1058 + 1059 +.product-feature { 1060 + background: #fff; 1061 + border: 1px solid @line; 1062 + border-radius: @radius; 1063 + box-shadow: @shadow-sm; 1064 + padding: 22px; 1065 + transition: transform .18s ease, box-shadow .18s ease; 1066 + 1067 + &:hover { 1068 + transform: translateY(-2px); 1069 + box-shadow: @shadow; 1070 + } 1071 + 1072 + .feature-icon { 1073 + width: 46px; 1074 + height: 46px; 1075 + border-radius: 50%; 1076 + background: fade(@brand, 10%); 1077 + color: @brand; 1078 + display: flex; 1079 + align-items: center; 1080 + justify-content: center; 1081 + margin-bottom: 14px; 1082 + font-size: 18px; 1083 + } 1084 + 1085 + h3 { 1086 + margin: 0 0 8px; 1087 + color: @text; 1088 + font-size: 18px; 1089 + line-height: 1.25; 1090 + } 1091 + 1092 + p { 1093 + margin: 0; 1094 + color: @muted; 1095 + line-height: 1.5; 1096 + } 1097 +} 1098 + 1099 +.product-gallery-panel { 1100 + max-width: 1040px; 1101 + margin: 20px auto 0; 1102 + padding: 26px; 1103 + 1104 + h2 { 1105 + margin-top: 0; 1106 + text-align: center; 1107 + } 1108 + 1109 + .gallery-note { 1110 + max-width: 700px; 1111 + margin: 0 auto 18px; 1112 + color: @muted; 1113 + text-align: center; 1114 + line-height: 1.55; 1115 + } 1116 +} 1117 + 1118 +.product-gallery-placeholder { 1119 + min-height: 260px; 1120 + padding: 28px; 1121 + border: 1px dashed fade(@brand, 40%); 1122 + border-radius: @radius; 1123 + background: fade(@brand, 5%); 1124 + color: @muted; 1125 + text-align: center; 1126 + display: flex; 1127 + align-items: center; 1128 + justify-content: center; 1129 +} 1130 + 1131 +.product-section-muted { 1132 + background: 1133 + radial-gradient(42rem 16rem at 50% 0%, @brand-bg 0%, transparent 65%); 1134 +} 1135 + 1136 +@media (max-width: 980px) { 1137 + .product-layout, 1138 + .product-feature-grid { 1139 + grid-template-columns: 1fr; 1140 + } 1141 + 1142 + .product-summary-card h2 { 1143 + text-align: center; 1144 + } 1145 +} 1146 + 1147 +@media (max-width: 640px) { 1148 + .product-card { 1149 + grid-template-columns: 1fr; 1150 + padding: 22px; 1151 + text-align: left; 1152 + 1153 + .product-card-icon { 1154 + margin-bottom: 2px; 1155 + } 1156 + } 1157 + 1158 + .product-summary-card, 1159 + .product-info-card, 1160 + .product-feature, 1161 + .product-gallery-panel { 1162 + padding: 20px; 1163 + } 1164 +}