Skip to content

Commit dbb6d9c

Browse files
committed
feat: updated penn engineering theme
1 parent 8469752 commit dbb6d9c

2 files changed

Lines changed: 236 additions & 19 deletions

File tree

PENN-ENGINEERING-THEME-GUIDE.md

Lines changed: 28 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,12 @@ This Hugo template has been beautifully themed with Penn Engineering's official
1515
- Full grayscale palette for nuanced design
1616

1717
2. **Typography System**
18-
- **TWK Everett** - Primary typeface with sharp, technical details
19-
- **Pitch Sans** - Monospace-inspired secondary font for technical content
18+
- **TWK Everett** - Primary typeface for body text, headlines, navigation
19+
- **Pitch Sans** - Secondary font for:
20+
- Metadata (dates, GitHub links, footer items)
21+
- Technical content (code, buttons, search)
22+
- Annotations and subheadings
23+
- Module dates and schedule headers
2024
- Web fonts loaded directly from Penn Engineering CDN
2125

2226
3. **Visual Motifs**
@@ -294,7 +298,10 @@ Create a new file `static/themes/my-department.css`:
294298
### Typography Enhancements
295299
- **Complete Font Coverage**: TWK Everett and Pitch Sans applied everywhere
296300
- **Override System Fonts**: Replaced Metropolis with Penn fonts throughout
297-
- **Consistent Hierarchy**: Proper font weights and sizes for all elements
301+
- **Brand-Compliant Usage**:
302+
- Everett for main content and navigation
303+
- Pitch Sans for metadata, technical elements (per guidelines)
304+
- **Fixed Header Styling**: White text on blue background, proper logo sizing
298305

299306
### Visual Improvements
300307
- **Module Links**: Clear visual feedback with hover effects
@@ -316,6 +323,22 @@ For questions about the theme:
316323

317324
---
318325

319-
**Theme Version**: 1.1.0
326+
**Theme Version**: 1.2.0
320327
**Last Updated**: January 2025
321-
**Brand Tagline**: "Reinventing Invention"
328+
**Brand Tagline**: "Reinventing Invention"
329+
330+
## Change Log
331+
332+
### Version 1.2.0
333+
- Fixed header title size (now 2rem for proper prominence)
334+
- Restyled tags as small, subtle elements (not buttons)
335+
- Improved metadata display with proper spacing and separators
336+
- Maintained GitHub link at appropriate 0.875rem size
337+
338+
### Version 1.1.0
339+
- Separated Penn branding for easy toggle
340+
- Complete font coverage with brand-compliant usage
341+
- Fixed module link styling
342+
343+
### Version 1.0.0
344+
- Initial Penn Engineering theme implementation

static/themes/penn-engineering.css

Lines changed: 208 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -242,22 +242,30 @@ body {
242242
}
243243

244244
/* Headings - TWK Everett Bold */
245-
h1, h2, h3, h4, h5, h6,
246-
.gdoc-header__title,
247-
.gdoc-brand__title {
248-
font-family: var(--penn-font-primary) !important;
245+
h1, h2, h3, h4, h5, h6 {
246+
font-family: var(--penn-font-primary);
249247
font-weight: var(--penn-font-bold);
250248
line-height: 1.2;
251249
color: var(--penn-blue);
252250
}
253251

252+
/* Brand title in header needs special treatment */
253+
.gdoc-header .gdoc-brand__title,
254+
.gdoc-header__title {
255+
font-family: var(--penn-font-primary);
256+
font-weight: var(--penn-font-bold);
257+
line-height: 1.2;
258+
color: var(--penn-white); /* White text in header */
259+
font-size: 2rem; /* Ensure it's large */
260+
}
261+
254262
/* Ensure navigation uses Penn fonts */
255263
.gdoc-nav,
256264
.gdoc-nav__entry,
257265
.gdoc-page__header,
258266
.gdoc-page__footer,
259267
.gdoc-footer {
260-
font-family: var(--penn-font-primary) !important;
268+
font-family: var(--penn-font-primary);
261269
}
262270

263271
:root[color-theme="dark"] h1,
@@ -280,18 +288,24 @@ h1 {
280288
color: var(--penn-electric-blue);
281289
}
282290

283-
/* Subheadings and Metadata - Pitch Sans */
291+
/* Subheadings and Metadata - Pitch Sans (per brand guidelines) */
284292
.gdoc-page__header time,
285293
.gdoc-page__header .gdoc-page__meta,
294+
.gdoc-page__footer,
295+
.gdoc-footer__item,
286296
.announcement-meta,
287297
.module dt,
288298
.schedule-header,
289299
.staffer-meta dt,
300+
.gdoc-search__input,
301+
.gdoc-search__list,
302+
.gdoc-toc,
303+
.gdoc-button,
290304
code,
291305
pre,
292306
kbd,
293307
samp {
294-
font-family: var(--penn-font-secondary);
308+
font-family: var(--penn-font-secondary) !important;
295309
}
296310

297311
/* Technical Annotations */
@@ -327,11 +341,56 @@ blockquote {
327341
font-weight: var(--penn-font-bold);
328342
letter-spacing: 0.02em;
329343
text-transform: uppercase;
330-
font-size: 1.25rem;
344+
font-size: 2rem; /* Much larger title */
345+
color: var(--penn-white);
346+
line-height: 1.2;
347+
}
348+
349+
/* Make sure brand title is also large */
350+
.gdoc-brand__title {
351+
font-size: 2rem;
331352
}
332353

333-
/* Penn Engineering Shield Logo - Removed as we now use geekdocLogo parameter */
334-
/* Logo is now configured via config/_default/params.yaml */
354+
/* Fix logo sizing to maintain aspect ratio */
355+
.gdoc-brand__img {
356+
height: 50px; /* Slightly larger to match title */
357+
width: auto !important;
358+
max-width: none !important;
359+
object-fit: contain;
360+
display: inline-block;
361+
vertical-align: middle;
362+
}
363+
364+
/* Ensure proper spacing between logo and title */
365+
.gdoc-brand {
366+
display: flex;
367+
align-items: center;
368+
gap: var(--penn-spacing-md);
369+
}
370+
371+
.gdoc-brand__link {
372+
display: flex;
373+
align-items: center;
374+
text-decoration: none;
375+
transition: opacity var(--penn-transition-fast);
376+
}
377+
378+
.gdoc-brand__link:hover {
379+
opacity: 0.9;
380+
}
381+
382+
/* GitHub and other header links - use Pitch Sans for metadata/technical elements */
383+
.gdoc-header__link {
384+
font-family: var(--penn-font-secondary);
385+
font-weight: var(--penn-font-medium);
386+
font-size: 0.875rem; /* Keep small for metadata */
387+
color: var(--penn-white);
388+
transition: color var(--penn-transition-fast);
389+
}
390+
391+
.gdoc-header__link:hover {
392+
color: var(--penn-electric-blue);
393+
}
335394

336395
/* =========================================================================
337396
Navigation Enhancements
@@ -709,6 +768,126 @@ blockquote {
709768
color: var(--penn-white);
710769
}
711770

771+
/* =========================================================================
772+
Tags Styling - Override button appearance completely
773+
========================================================================= */
774+
775+
/* Target the actual tag structure from the template */
776+
.gdoc-post__tag.gdoc-button {
777+
/* Complete reset of button styling */
778+
all: revert;
779+
/* Apply minimal tag styling */
780+
display: inline-block;
781+
padding: 2px 6px;
782+
margin: 0 3px;
783+
font-size: 0.65rem;
784+
line-height: 1.2;
785+
border: none;
786+
background: transparent;
787+
box-shadow: none;
788+
}
789+
790+
.gdoc-post__tag.gdoc-button .gdoc-button__link {
791+
/* Style the link inside */
792+
all: revert;
793+
font-family: var(--penn-font-secondary);
794+
font-size: 0.65rem;
795+
font-weight: 400;
796+
color: var(--penn-gray-600);
797+
background: var(--penn-gray-100);
798+
padding: 2px 8px;
799+
border-radius: 10px;
800+
text-decoration: none;
801+
display: inline-block;
802+
transition: all 0.2s ease;
803+
text-transform: none;
804+
letter-spacing: normal;
805+
line-height: 1.3;
806+
border: 1px solid var(--penn-gray-200);
807+
}
808+
809+
.gdoc-post__tag.gdoc-button .gdoc-button__link:hover,
810+
.gdoc-post__tag.gdoc-button .gdoc-button__link:focus,
811+
.gdoc-post__tag.gdoc-button .gdoc-button__link:active {
812+
background: var(--penn-blue);
813+
color: var(--penn-white) !important; /* Force white text for readability */
814+
border-color: var(--penn-blue);
815+
transform: none;
816+
}
817+
818+
/* Also target if they appear in headers/metadata */
819+
.gdoc-post__meta .gdoc-post__tag.gdoc-button,
820+
.gdoc-page__meta .gdoc-post__tag.gdoc-button {
821+
display: inline-block;
822+
margin: 0 2px;
823+
}
824+
825+
/* Dark mode */
826+
:root[color-theme="dark"] .gdoc-post__tag.gdoc-button .gdoc-button__link {
827+
color: var(--penn-gray-400);
828+
background: var(--penn-gray-800);
829+
border-color: var(--penn-gray-700);
830+
}
831+
832+
:root[color-theme="dark"] .gdoc-post__tag.gdoc-button .gdoc-button__link:hover {
833+
background: var(--penn-electric-blue);
834+
color: var(--penn-white); /* Ensure white text for readability */
835+
border-color: var(--penn-electric-blue);
836+
}
837+
838+
/* =========================================================================
839+
Post/Page Metadata Styling
840+
========================================================================= */
841+
842+
.gdoc-page__header {
843+
margin-bottom: var(--penn-spacing-xl);
844+
padding-bottom: var(--penn-spacing-lg);
845+
border-bottom: 2px solid var(--penn-light-gray);
846+
}
847+
848+
.gdoc-page__meta {
849+
font-family: var(--penn-font-secondary) !important;
850+
font-size: 0.875rem;
851+
color: var(--penn-medium-gray);
852+
display: flex;
853+
flex-wrap: wrap;
854+
gap: var(--penn-spacing-lg); /* Better spacing between metadata items */
855+
align-items: center;
856+
margin-top: var(--penn-spacing-md);
857+
}
858+
859+
.gdoc-page__meta > span {
860+
display: flex;
861+
align-items: center;
862+
gap: var(--penn-spacing-xs);
863+
}
864+
865+
/* Add separators between metadata items */
866+
.gdoc-page__meta > span:not(:last-child)::after {
867+
content: "•";
868+
margin-left: var(--penn-spacing-lg);
869+
color: var(--penn-gray-400);
870+
}
871+
872+
/* Reading time and date styling */
873+
.gdoc-page__meta time {
874+
font-weight: var(--penn-font-semibold);
875+
color: var(--penn-blue);
876+
}
877+
878+
/* Dark mode metadata */
879+
:root[color-theme="dark"] .gdoc-page__header {
880+
border-bottom-color: var(--penn-gray-700);
881+
}
882+
883+
:root[color-theme="dark"] .gdoc-page__meta {
884+
color: var(--penn-gray-400);
885+
}
886+
887+
:root[color-theme="dark"] .gdoc-page__meta time {
888+
color: var(--penn-electric-blue);
889+
}
890+
712891
/* =========================================================================
713892
Footer (Penn Engineering)
714893
========================================================================= */
@@ -775,12 +954,16 @@ blockquote {
775954

776955
@media (max-width: 768px) {
777956
h1 {
778-
font-size: 2rem;
957+
font-size: 1.75rem;
779958
}
780959

781-
.gdoc-header__title::before {
782-
width: 30px;
783-
height: 36px;
960+
/* Adjust header title for mobile */
961+
.gdoc-header__title {
962+
font-size: 1.5rem !important;
963+
}
964+
965+
.gdoc-brand__img {
966+
height: 40px;
784967
}
785968

786969
.gdoc-page::before {
@@ -791,6 +974,17 @@ blockquote {
791974
.announcement::before {
792975
font-size: 80px;
793976
}
977+
978+
/* Stack metadata on mobile */
979+
.gdoc-page__meta {
980+
flex-direction: column;
981+
align-items: flex-start;
982+
gap: var(--penn-spacing-sm);
983+
}
984+
985+
.gdoc-page__meta > span:not(:last-child)::after {
986+
display: none; /* Remove separators on mobile */
987+
}
794988
}
795989

796990
/* =========================================================================

0 commit comments

Comments
 (0)