Visual Guide: Responsive Design Enhancements
This guide provides a visual understanding of the proposed Genesis Ontological Design System enhancements for responsive design.
π± Current Challenges
Challenge 1: Mixed Paradigms
β CURRENT (Bootstrap + Genesis)
<div class="col-lg-7 mb-5 mb-lg-0"> β Bootstrap utility classes
<div class="contact-form"> β Genesis semantic class
β
PROPOSED (Pure Genesis)
<div class="contact-form-section"> β Semantic only
<div class="contact-form">
Challenge 2: Inline Styles
β CURRENT
<iframe style="border:0;" width="100%" height="450">
β
PROPOSED
<iframe> <!-- All styling via SCSS -->
.map-container {
@include genesis-media('embed-responsive');
}
Challenge 3: No Mobile Navigation Pattern
β CURRENT
.main-nav {
@media (max-width: 767px) {
// Custom hamburger menu code
// Custom drawer positioning
// Custom touch targets
}
}
β
PROPOSED
.main-nav {
@include genesis-environment('navigation-primary');
// Automatic mobile drawer, hamburger, touch optimization
}
π― Viewport Breakpoints Strategy
Proposed responsive behavior across all enhancements:
π± Mobile Small 375px β Single column, generous spacing, 44px touch targets
π± Mobile Medium 390px β
π± Mobile Large 428px β
βββββββββββββββββββββββββββββ
π± Tablet Portrait 768px β 2 columns, moderate spacing, 42px targets
π» Tablet Landscape 1024px β 2-3 columns, balanced spacing
βββββββββββββββββββββββββββββ
π» Desktop Small 1280px β 3-4 columns, compact spacing, 40px targets
π» Desktop Medium 1440px β
π» Desktop Large 1920px β
βββββββββββββββββββββββββββββ
π» Ultrawide 2560px β Capped at 4 columns, centered max-width
π Typography Scaling
Proposal #4: Responsive by Default
// Before (fixed sizes)
.hero-title {
@include genesis-cognition('axiom');
// Same size everywhere: 56px
}
// After (responsive)
.hero-title {
@include genesis-cognition('axiom');
// Mobile: 32px (readable, no overflow)
// Tablet: 40px (balanced)
// Desktop: 56px (impactful)
}
Visual Impact:
Mobile π± Tablet π» Desktop π₯οΈ
βββββββββββββββββββββββββββββββββββββββββββββ
32px 40px 56px
H1 Title H1 Title H1 Title
16px 17px 18px
Body text that Body text that Body text that
wraps nicely on wraps nicely on wraps nicely on
mobile screens tablet screens desktop screens
π¨ Grid & Card Layouts
Proposal #7: Adaptive Grid Behavior
// Before (manual)
.team-grid {
@include genesis-environment('distributed');
@media (max-width: 767px) { grid-template-columns: 1fr; }
@media (min-width: 768px) { grid-template-columns: repeat(2, 1fr); }
@media (min-width: 1024px) { grid-template-columns: repeat(3, 1fr); }
}
// After (automatic)
.team-grid {
@include genesis-environment('distributed');
// Automatic responsive columns!
}
Visual Layout:
Mobile π± Tablet π» Desktop π₯οΈ
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
[ Card 1 ] [ Card 1 ][ Card 2 ] [ C1 ][ C2 ][ C3 ][ C4 ]
[ Card 2 ] [ Card 3 ][ Card 4 ] [ C5 ][ C6 ][ C7 ][ C8 ]
[ Card 3 ] [ Card 5 ][ Card 6 ]
[ Card 4 ]
1 column 2 columns 4 columns
Gap: 1.5rem Gap: 1.75rem Gap: 2rem
π Touch Target Sizing
Proposal #6: WCAG-Compliant Interactions
// Before (too small on mobile)
.social-icon {
@include genesis-synapse('social');
// 32px Γ 32px (fails WCAG)
}
// After (responsive sizing)
.social-icon {
@include genesis-synapse('social');
// Mobile: 44px Γ 44px β
// Desktop: 36px Γ 36px β
}
Visual Comparison:
Mobile π± Desktop π₯οΈ
βββββββββββββββββββββββββββββββββββββ
ββββββββββββββ ββββββββββ
β 44Γ44 β β 36Γ36 β
β π β β π±οΈ β
β WCAG β
β β Click β
ββββββββββββββ ββββββββββ
Easy to tap Space-efficient
π¦ Content Density
Proposal #3: Viewport-Aware Spacing
.hero-section {
@include genesis-atmosphere('spacious-mobile');
// Mobile: 3rem padding (generous)
// Desktop: 2rem padding (efficient)
}
.dashboard {
@include genesis-atmosphere('dense-desktop');
// Mobile: Minimal items, focus mode
// Desktop: High information density
}
Visual Comparison:
MOBILE (spacious) DESKTOP (dense)
βββββββββββββββββ βββββββββββββββββββββββββββββββ
β β β ββββββββββββββββ β
β [Content] β β β ββ ββ ββ β β
β β β ββββββββββββββββ β
β β β ββββββββββββββββ β
β [Content] β β β ββ ββ ββ β β
β β β ββββββββββββββββ β
β β β ββββββββββββββββ β
β [Content] β β β ββ ββ ββ β β
β β β ββββββββββββββββ β
βββββββββββββββββ βββββββββββββββββββββββββββββββ
Breathing room Maximum information
πΊοΈ Media Responsiveness
Proposal #5: Semantic Embeds
// Before (inline styles)
<iframe style="border:0;" width="100%" height="450">
// After (semantic)
.map-container {
@include genesis-media('embed-responsive');
// Automatic aspect ratio preservation
// Responsive to viewport width
// No inline styles
}
Visual Behavior:
Mobile π± (375px wide) Desktop π₯οΈ (1440px wide)
βββββββββββββββββββββ βββββββββββββββββββββββββββββββ
βββββββββββββββββββββ βββββββββββββββββββββββββββββββ
β β β β
β Map at 16:9 β β Map at 16:9 β
β Height: 211px β β Height: 810px β
β β β β
βββββββββββββββββββββ βββββββββββββββββββββββββββββββ
Scales proportionally Maintains aspect ratio
π§ Navigation Patterns
Proposal #1: Mobile Menu
.main-nav {
@include genesis-environment('navigation-primary');
}
Desktop Behavior:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Logo Home About Contact Resources CTA β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Horizontal layout, inline menu items
Mobile Behavior:
ββββββββββββββββββββ
β Logo β° β β Hamburger toggle (44Γ44px)
ββββββββββββββββββββ
When toggled:
ββββββββββββββββββββ
β Logo β β
β βββββββββββββββββ
β β Home ββ
β β About ββ β Off-canvas drawer
β β Contact ββ Slides in from left
β β Resources ββ Full-screen overlay
β β CTA ββ Touch-optimized
β βββββββββββββββββ
ββββββββββββββββββββ
π Form Layouts
Proposal #2: Responsive Forms
.contact-form-fields {
@include genesis-environment('interaction-form');
}
Desktop Layout:
ββββββββββββββββββββββββββββββββββββββββ
β Name Field Email Field β β 2 columns
ββββββββββββββββββββββββββββββββββββββββ€
β Subject Field β β Full width
ββββββββββββββββββββββββββββββββββββββββ€
β Message Field β
β (textarea) β
ββββββββββββββββββββββββββββββββββββββββ
Mobile Layout:
ββββββββββββββββββ
β Name Field β β Single column
ββββββββββββββββββ€
β Email Field β β Stacked vertically
ββββββββββββββββββ€
β Subject Field β β Larger touch targets
ββββββββββββββββββ€
β Message β β 16px font (no zoom)
β Field β
ββββββββββββββββββ
π Implementation Priority
Phase 1: Universal (High Impact)
β
Typography Scaling β Affects all text elements
β
Touch Targets β Affects all buttons/links
β
Grid Breakpoints β Affects all card layouts
Phase 2: Common Patterns (Medium Impact)
π Navigation β Every site has nav
π Content Density β Improves mobile UX
π Media Responsive β Common for images/embeds
Phase 3: Specific Use Cases (Lower Impact)
β³ Form Environment β Form-heavy pages
β³ Viewport Awareness β Hero sections, scroll effects
π― Success Criteria
Before Enhancement
β Custom @media queries in subdomain SCSS
β Bootstrap utility classes in HTML
β Inline styles for responsive behavior
β Touch targets < 44px on mobile
β Fixed typography across viewports
β Inconsistent responsive patterns
After Enhancement
β
Zero @media queries in subdomain SCSS
β
Pure semantic class names in HTML
β
All styling via Genesis mixins
β
WCAG 2.1 compliant touch targets
β
Automatically scaling typography
β
Consistent responsive behavior
π Expected Improvements
Performance
π½ Page Weight β Responsive images, smaller payloads
πΌ Lighthouse Score β Better mobile UX
πΌ FCP β Optimized viewport, less CSS
Accessibility
πΌ Touch Target Score β 44Γ44px minimum
πΌ Typography β 16px minimum on mobile
πΌ Keyboard Nav β Responsive across viewports
Developer Experience
πΌ Code Simplicity β No custom breakpoint logic
πΌ Consistency β Same patterns across subdomains
πΌ Maintainability β Changes in theme, not subdomains
User Experience
πΌ Mobile Usability β Touch-friendly, readable, efficient
πΌ Tablet Balance β Optimal spacing and columns
πΌ Desktop Richness β High information density
π Migration Example
Before (Bootstrap + Genesis)
<div class="col-lg-7 mb-5 mb-lg-0">
<div class="contact-form">
<input class="form-control" type="text">
</div>
</div>
.contact-form {
@include genesis-entity('primary');
// Bootstrap handles responsive
}
After (Pure Genesis)
<div class="contact-form-section">
<div class="contact-form">
<input class="form-input" type="text">
</div>
</div>
.contact-form-section {
@include genesis-environment('interaction-form');
}
.contact-form {
@include genesis-entity('primary');
}
.form-input {
@include genesis-synapse('input-primary');
}
Result:
- β No utility classes
- β Fully responsive
- β Touch-optimized
- β Semantic purity
π Documentation Structure
theme-pr-ontology-enhancements/
β
βββ README.md β Start here
β βββ Overview of package
β βββ How to use for theme PR
β βββ Success criteria
β
βββ EXECUTIVE_SUMMARY.md β Quick overview
β βββ What was done
β βββ Key findings
β βββ Next steps
β
βββ RESPONSIVE_DESIGN_ANALYSIS.md β Full analysis
β βββ Current state review
β βββ 8 challenge categories
β βββ Code quality issues
β βββ Recommendations
β
βββ ONTOLOGICAL_PROPOSITIONS.md β Detailed proposals
β βββ 8 enhancement proposals
β βββ Implementation suggestions
β βββ Semantic purity checklist
β βββ Testing strategy
β
βββ IMPLEMENTATION_EXAMPLES.md β Before/after code
βββ 8 real-world examples
βββ Migration checklist
βββ Performance impact
π Next Actions
For Theme Repository
- β Review documentation package
- β Prioritize proposals
- β
Implement in theme
_sass/ontology/ - β Update INTEGRATION-GUIDE.md
- β Record in GENOME.md
For www.asisaga.com
- β³ Wait for theme PR merge
- β³ Update theme version
- β³ Refactor SCSS
- β³ Test responsiveness
- β³ Deploy improvements
This visual guide complements the detailed technical documentation in the other files.