/* Jamie Clinic Brand Style Sheet v2.8 */ /* For HTML documents, reports, and presentations */ /* Updated: 2025-12-09 - Added Video/Motion and Print color systems */ :root { /* ===================================== */ /* DIGITAL/WEB COLORS (Primary) */ /* ===================================== */ /* Primary Brand Colors */ --jamie-main-green: #6d7856; --jamie-green: #79A233; --jamie-light-green: #AFCC6D; --jamie-black: #000000; --jamie-white: #FFFFFF; /* Background Colors */ --jamie-bg: #f1f4eb; --jamie-bg-warm-1: #f8f4ef; --jamie-bg-warm-2: #f7f5f4; --jamie-bg-warm-3: #f6f5f1; --jamie-bg-warm-4: #f7eee0; --jamie-gray: #f5f5f5; --jamie-dark-gray: #333333; /* ===================================== */ /* VIDEO/MOTION COLORS */ /* ===================================== */ /* Video Backgrounds */ --jamie-video-bg-light: #E8E6E2; --jamie-video-bg-warm: #EEECE8; --jamie-video-bg-dark: #2D2D2D; --jamie-video-bg-charcoal: #333333; /* Video Gold Accents */ --jamie-video-gold: #B5A040; --jamie-video-gold-light: #C0AB45; --jamie-video-gold-dark: #C9B347; --jamie-video-cta: #C0A940; /* Decorative Circles */ --jamie-circle-dark: #3D4A3D; --jamie-circle-charcoal: #4A5A4A; --jamie-circle-sage: #8FA87A; --jamie-circle-sage-light: #9CB88A; --jamie-circle-pale: #C5D4B8; --jamie-circle-mist: #D5E0C8; /* Video Text Colors */ --jamie-video-text-dark: #333333; --jamie-video-text-medium: #3D3D3D; --jamie-video-text-light: #FFFFFF; /* ===================================== */ /* PRINT COLORS */ /* ===================================== */ /* Print Backgrounds */ --jamie-print-bg-mint: #E8F5E8; --jamie-print-bg-soft: #F0F8F0; --jamie-print-bg-blue: #D0DDE8; --jamie-print-bg-blue-light: #E0E8F0; /* Print Primary */ --jamie-print-green: #79A233; --jamie-print-green-dark: #6D9040; --jamie-print-gray: #888888; /* Print Process/Steps */ --jamie-step-light: #C5E0C5; --jamie-step-medium: #79A233; --jamie-step-arrow: #79A233; --jamie-step-text: #333333; /* ===================================== */ /* TYPOGRAPHY */ /* ===================================== */ /* Korean Fonts */ --font-primary-kr: 'Pretendard', 'Noto Sans KR', 'Apple SD Gothic Neo', sans-serif; --font-round-kr: 'NanumSquareRound', 'Pretendard', sans-serif; /* English Fonts */ --font-primary-en: 'Inter', 'Poppins', sans-serif; /* Aliases */ --font-primary: var(--font-primary-kr); --font-heading: var(--font-primary-kr); --font-title-round: var(--font-round-kr); /* Font Sizes */ --font-size-base: 16px; --font-size-sm: 14px; --font-size-lg: 18px; --font-size-xl: 24px; --font-size-2xl: 32px; --font-size-3xl: 48px; --font-size-4xl: 60px; /* Line Heights */ --line-height-tight: 1.2; --line-height-normal: 1.6; --line-height-relaxed: 1.8; /* Letter Spacing */ --letter-spacing-tight: -0.03em; --letter-spacing-normal: 0; /* ===================================== */ /* SPACING */ /* ===================================== */ --spacing-xs: 4px; --spacing-sm: 8px; --spacing-md: 16px; --spacing-lg: 24px; --spacing-xl: 32px; --spacing-2xl: 48px; --spacing-3xl: 64px; /* Print Margins (A4) */ --print-margin-top: 25mm; --print-margin-bottom: 20mm; --print-margin-left: 20mm; --print-margin-right: 20mm; } /* ===================================== */ /* BASE RESET */ /* ===================================== */ * { margin: 0; padding: 0; box-sizing: border-box; } body { font-family: var(--font-primary); font-size: var(--font-size-base); line-height: var(--line-height-normal); color: var(--jamie-dark-gray); background-color: var(--jamie-white); letter-spacing: var(--letter-spacing-tight); } /* ===================================== */ /* TYPOGRAPHY */ /* ===================================== */ h1, h2, h3, h4, h5, h6 { font-family: var(--font-heading); font-weight: 700; line-height: var(--line-height-tight); margin-bottom: var(--spacing-md); color: var(--jamie-black); letter-spacing: var(--letter-spacing-tight); } h1 { font-size: var(--font-size-3xl); } h2 { font-size: var(--font-size-2xl); } h3 { font-size: var(--font-size-xl); } h4 { font-size: var(--font-size-lg); } p { margin-bottom: var(--spacing-md); } /* Video Title Style */ .jamie-title-video { font-family: var(--font-title-round); font-weight: 800; color: var(--jamie-video-gold); } .jamie-title-video-dark { color: var(--jamie-video-gold-dark); } /* ===================================== */ /* BRAND ACCENTS */ /* ===================================== */ .jamie-accent { color: var(--jamie-green); } .jamie-accent-gold { color: var(--jamie-video-gold); } .jamie-highlight { background-color: var(--jamie-light-green); padding: var(--spacing-xs) var(--spacing-sm); border-radius: 4px; } /* ===================================== */ /* DOCUMENT CONTAINER */ /* ===================================== */ .jamie-document { max-width: 800px; margin: 0 auto; padding: var(--spacing-2xl); } .jamie-document-wide { max-width: 1200px; } /* ===================================== */ /* HEADER */ /* ===================================== */ .jamie-header { display: flex; align-items: center; justify-content: space-between; padding: var(--spacing-lg) 0; border-bottom: 2px solid var(--jamie-green); margin-bottom: var(--spacing-2xl); } .jamie-logo { height: 48px; width: auto; } .jamie-header-text { text-align: right; } .jamie-header-title { font-size: var(--font-size-sm); color: var(--jamie-main-green); text-transform: uppercase; letter-spacing: 1px; } /* ===================================== */ /* COVER PAGE */ /* ===================================== */ .jamie-cover { min-height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; background: linear-gradient(135deg, var(--jamie-black) 0%, #1a1a1a 100%); color: var(--jamie-white); padding: var(--spacing-3xl); } .jamie-cover-logo { width: 120px; margin-bottom: var(--spacing-2xl); } .jamie-cover h1 { color: var(--jamie-white); font-size: var(--font-size-3xl); margin-bottom: var(--spacing-md); } .jamie-cover .subtitle { font-size: var(--font-size-lg); color: var(--jamie-light-green); margin-bottom: var(--spacing-2xl); } .jamie-cover .meta { font-size: var(--font-size-sm); color: var(--jamie-main-green); } /* Video-style Cover (Light) */ .jamie-cover-video { background: var(--jamie-video-bg-light); color: var(--jamie-video-text-dark); } .jamie-cover-video h1 { color: var(--jamie-video-gold); font-family: var(--font-title-round); } .jamie-cover-video .subtitle { color: var(--jamie-video-text-dark); } /* ===================================== */ /* DECORATIVE CIRCLES (Video Style) */ /* ===================================== */ .jamie-circle { position: absolute; border-radius: 50%; pointer-events: none; } .jamie-circle-lg { width: 180px; height: 180px; } .jamie-circle-md { width: 100px; height: 100px; } .jamie-circle-sm { width: 40px; height: 40px; } .jamie-circle-dark { background-color: var(--jamie-circle-dark); } .jamie-circle-charcoal { background-color: var(--jamie-circle-charcoal); } .jamie-circle-sage { background-color: var(--jamie-circle-sage); } .jamie-circle-sage-light { background-color: var(--jamie-circle-sage-light); } .jamie-circle-pale { background-color: var(--jamie-circle-pale); } .jamie-circle-mist { background-color: var(--jamie-circle-mist); } .jamie-circle-gold { background-color: var(--jamie-video-cta); } /* ===================================== */ /* SECTION */ /* ===================================== */ .jamie-section { margin-bottom: var(--spacing-3xl); page-break-inside: avoid; } .jamie-section-header { display: flex; align-items: center; margin-bottom: var(--spacing-lg); padding-bottom: var(--spacing-sm); border-bottom: 1px solid var(--jamie-gray); } .jamie-section-number { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; background-color: var(--jamie-green); color: var(--jamie-white); font-weight: 700; border-radius: 50%; margin-right: var(--spacing-md); font-size: var(--font-size-sm); } /* ===================================== */ /* CARDS */ /* ===================================== */ .jamie-card { background: var(--jamie-white); border: 1px solid var(--jamie-gray); border-radius: 8px; padding: var(--spacing-lg); margin-bottom: var(--spacing-md); box-shadow: 0 2px 4px rgba(0,0,0,0.05); } .jamie-card-accent { border-left: 4px solid var(--jamie-green); } .jamie-card-highlight { background: linear-gradient(135deg, var(--jamie-green) 0%, var(--jamie-light-green) 100%); color: var(--jamie-white); } .jamie-card-highlight h3, .jamie-card-highlight h4 { color: var(--jamie-white); } /* Video-style Card */ .jamie-card-video { background: var(--jamie-video-bg-light); border: none; border-radius: 12px; } .jamie-card-video-dark { background: var(--jamie-video-bg-dark); color: var(--jamie-video-text-light); } /* Print-style Card */ .jamie-card-print { background: var(--jamie-print-bg-mint); border: none; } /* ===================================== */ /* TABLES */ /* ===================================== */ .jamie-table { width: 100%; border-collapse: collapse; margin-bottom: var(--spacing-lg); font-size: var(--font-size-sm); } .jamie-table th { background-color: var(--jamie-green); color: var(--jamie-white); padding: var(--spacing-sm) var(--spacing-md); text-align: left; font-weight: 600; } .jamie-table td { padding: var(--spacing-sm) var(--spacing-md); border-bottom: 1px solid var(--jamie-gray); } .jamie-table tr:hover { background-color: var(--jamie-gray); } /* Video-style Table */ .jamie-table-video th { background-color: var(--jamie-video-gold); } /* ===================================== */ /* LISTS */ /* ===================================== */ .jamie-list { list-style: none; padding-left: 0; } .jamie-list li { position: relative; padding-left: var(--spacing-lg); margin-bottom: var(--spacing-sm); } .jamie-list li::before { content: ''; position: absolute; left: 0; top: 8px; width: 8px; height: 8px; background-color: var(--jamie-green); border-radius: 50%; } /* Checklist */ .jamie-checklist li::before { content: '✓'; background: none; color: var(--jamie-green); font-weight: 700; width: auto; height: auto; top: 0; } /* ===================================== */ /* QUOTES / CALLOUTS */ /* ===================================== */ .jamie-quote { background-color: var(--jamie-gray); border-left: 4px solid var(--jamie-green); padding: var(--spacing-lg); margin: var(--spacing-lg) 0; font-style: italic; } .jamie-callout { background-color: #f0f7e6; border: 1px solid var(--jamie-light-green); border-radius: 8px; padding: var(--spacing-lg); margin: var(--spacing-lg) 0; } .jamie-callout-title { display: flex; align-items: center; font-weight: 700; color: var(--jamie-green); margin-bottom: var(--spacing-sm); } /* Video-style Callout */ .jamie-callout-video { background-color: var(--jamie-video-bg-warm); border: none; border-left: 4px solid var(--jamie-video-gold); } .jamie-callout-video .jamie-callout-title { color: var(--jamie-video-gold); } /* ===================================== */ /* STATUS BADGES */ /* ===================================== */ .jamie-badge { display: inline-block; padding: var(--spacing-xs) var(--spacing-sm); border-radius: 4px; font-size: var(--font-size-sm); font-weight: 600; } .jamie-badge-success { background-color: var(--jamie-green); color: var(--jamie-white); } .jamie-badge-warning { background-color: #f59e0b; color: var(--jamie-white); } .jamie-badge-error { background-color: #ef4444; color: var(--jamie-white); } .jamie-badge-info { background-color: var(--jamie-main-green); color: var(--jamie-white); } .jamie-badge-gold { background-color: var(--jamie-video-gold); color: var(--jamie-white); } /* ===================================== */ /* PROGRESS BAR */ /* ===================================== */ .jamie-progress { height: 8px; background-color: var(--jamie-gray); border-radius: 4px; overflow: hidden; } .jamie-progress-bar { height: 100%; background-color: var(--jamie-green); transition: width 0.3s ease; } /* ===================================== */ /* PROCESS STEPS (Print Style) */ /* ===================================== */ .jamie-steps { display: flex; align-items: center; justify-content: center; gap: var(--spacing-md); margin: var(--spacing-xl) 0; } .jamie-step { display: flex; flex-direction: column; align-items: center; text-align: center; } .jamie-step-circle { width: 60px; height: 60px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: 700; margin-bottom: var(--spacing-sm); } .jamie-step-circle-light { background-color: var(--jamie-step-light); color: var(--jamie-step-text); } .jamie-step-circle-medium { background-color: var(--jamie-step-medium); color: var(--jamie-white); } .jamie-step-arrow { color: var(--jamie-step-arrow); font-size: var(--font-size-xl); } /* ===================================== */ /* FOOTER */ /* ===================================== */ .jamie-footer { margin-top: var(--spacing-3xl); padding-top: var(--spacing-lg); border-top: 1px solid var(--jamie-gray); text-align: center; font-size: var(--font-size-sm); color: var(--jamie-main-green); } /* ===================================== */ /* PRINT STYLES */ /* ===================================== */ @media print { @page { margin-top: var(--print-margin-top); margin-bottom: var(--print-margin-bottom); margin-left: var(--print-margin-left); margin-right: var(--print-margin-right); } .jamie-cover { min-height: auto; page-break-after: always; } .jamie-section { page-break-inside: avoid; } body { font-size: 12pt; line-height: var(--line-height-relaxed); } .jamie-card { box-shadow: none; border: 1px solid #ddd; } /* Print-friendly backgrounds */ .jamie-cover { background: var(--jamie-print-bg-mint); color: var(--jamie-black); } .jamie-cover h1 { color: var(--jamie-print-green); } } /* ===================================== */ /* SLIDE LAYOUT (Presentations) */ /* ===================================== */ .jamie-slide { min-height: 100vh; padding: var(--spacing-3xl); display: flex; flex-direction: column; page-break-after: always; position: relative; overflow: hidden; } .jamie-slide-title { background-color: var(--jamie-black); color: var(--jamie-white); } .jamie-slide-video { background-color: var(--jamie-video-bg-light); color: var(--jamie-video-text-dark); } .jamie-slide-video h1, .jamie-slide-video h2 { color: var(--jamie-video-gold); } .jamie-slide-video-dark { background-color: var(--jamie-video-bg-dark); color: var(--jamie-video-text-light); } .jamie-slide-video-dark h1, .jamie-slide-video-dark h2 { color: var(--jamie-video-gold-dark); } .jamie-slide-content { flex: 1; display: flex; flex-direction: column; justify-content: center; } .jamie-slide-footer { display: flex; justify-content: space-between; align-items: center; padding-top: var(--spacing-md); border-top: 1px solid var(--jamie-gray); font-size: var(--font-size-sm); color: var(--jamie-main-green); } /* ===================================== */ /* TWO COLUMN LAYOUT */ /* ===================================== */ .jamie-two-col { display: grid; grid-template-columns: 1fr 1fr; gap: var(--spacing-xl); } /* ===================================== */ /* RESPONSIVE */ /* ===================================== */ @media (max-width: 768px) { .jamie-two-col { grid-template-columns: 1fr; } .jamie-document { padding: var(--spacing-lg); } h1 { font-size: var(--font-size-2xl); } h2 { font-size: var(--font-size-xl); } .jamie-steps { flex-direction: column; } .jamie-step-arrow { transform: rotate(90deg); } } /* ===================================== */ /* UTILITY CLASSES */ /* ===================================== */ /* Backgrounds */ .bg-video-light { background-color: var(--jamie-video-bg-light); } .bg-video-warm { background-color: var(--jamie-video-bg-warm); } .bg-video-dark { background-color: var(--jamie-video-bg-dark); } .bg-print-mint { background-color: var(--jamie-print-bg-mint); } .bg-print-blue { background-color: var(--jamie-print-bg-blue); } /* Text Colors */ .text-gold { color: var(--jamie-video-gold); } .text-green { color: var(--jamie-green); } .text-main { color: var(--jamie-main-green); } .text-light { color: var(--jamie-video-text-light); } .text-dark { color: var(--jamie-video-text-dark); } /* Font Families */ .font-round { font-family: var(--font-round-kr); } .font-primary { font-family: var(--font-primary-kr); } .font-en { font-family: var(--font-primary-en); }