Initial commit for market-research-reports

This commit is contained in:
dfty
2026-01-29 22:15:14 +08:00
commit a78a21d339
8 changed files with 6429 additions and 0 deletions

428
assets/FORMATTING_GUIDE.md Normal file
View File

@@ -0,0 +1,428 @@
# Market Research Report Formatting Guide
Quick reference for using the `market_research.sty` style package.
## Color Palette
### Primary Colors
| Color Name | RGB | Hex | Usage |
|------------|-----|-----|-------|
| `primaryblue` | (0, 51, 102) | `#003366` | Headers, titles, links |
| `secondaryblue` | (51, 102, 153) | `#336699` | Subsections, secondary elements |
| `lightblue` | (173, 216, 230) | `#ADD8E6` | Key insight box backgrounds |
| `accentblue` | (0, 120, 215) | `#0078D7` | Accent highlights, opportunity boxes |
### Secondary Colors
| Color Name | RGB | Hex | Usage |
|------------|-----|-----|-------|
| `accentgreen` | (0, 128, 96) | `#008060` | Market data boxes, positive indicators |
| `lightgreen` | (200, 230, 201) | `#C8E6C9` | Market data box backgrounds |
| `warningorange` | (255, 140, 0) | `#FF8C00` | Risk boxes, warnings |
| `alertred` | (198, 40, 40) | `#C62828` | Critical risks |
| `recommendpurple` | (103, 58, 183) | `#673AB7` | Recommendation boxes |
### Neutral Colors
| Color Name | RGB | Hex | Usage |
|------------|-----|-----|-------|
| `darkgray` | (66, 66, 66) | `#424242` | Body text |
| `mediumgray` | (117, 117, 117) | `#757575` | Secondary text |
| `lightgray` | (240, 240, 240) | `#F0F0F0` | Backgrounds, callout boxes |
| `tablealt` | (245, 247, 250) | `#F5F7FA` | Alternating table rows |
---
## Box Environments
### Key Insight Box (Blue)
For major findings, insights, and important discoveries.
```latex
\begin{keyinsightbox}[Custom Title]
The market is projected to grow at 15.3% CAGR through 2030, driven by
increasing enterprise adoption and favorable regulatory conditions.
\end{keyinsightbox}
```
### Market Data Box (Green)
For market statistics, metrics, and data highlights.
```latex
\begin{marketdatabox}[Market Snapshot]
\begin{itemize}
\item \textbf{Market Size (2024):} \marketsize{45.2 billion}
\item \textbf{Projected Size (2030):} \marketsize{98.7 billion}
\item \textbf{CAGR:} \growthrate{15.3}
\end{itemize}
\end{marketdatabox}
```
### Risk Box (Orange/Warning)
For risk factors, warnings, and cautions.
```latex
\begin{riskbox}[Market Risk]
Regulatory changes in the European Union could impact 40% of market
participants within the next 18 months.
\end{riskbox}
```
### Critical Risk Box (Red)
For high-severity or critical risks.
```latex
\begin{criticalriskbox}[Critical: Supply Chain Disruption]
A major supply chain disruption could result in 6-12 month delays
and 30% cost increases.
\end{criticalriskbox}
```
### Recommendation Box (Purple)
For strategic recommendations and action items.
```latex
\begin{recommendationbox}[Strategic Recommendation]
\begin{enumerate}
\item Prioritize market entry in Asia-Pacific region
\item Develop strategic partnerships with local distributors
\item Invest in localization of product offerings
\end{enumerate}
\end{recommendationbox}
```
### Callout Box (Gray)
For definitions, notes, and supplementary information.
```latex
\begin{calloutbox}[Definition: TAM]
Total Addressable Market (TAM) represents the total revenue opportunity
available if 100% market share was achieved.
\end{calloutbox}
```
### Executive Summary Box
Special styling for executive summary highlights.
```latex
\begin{executivesummarybox}[Executive Summary]
Key findings and highlights of the report...
\end{executivesummarybox}
```
### Opportunity Box (Teal/Accent Blue)
For opportunities and positive findings.
```latex
\begin{opportunitybox}[Growth Opportunity]
The Asia-Pacific market represents a \$15 billion opportunity
growing at 22% CAGR.
\end{opportunitybox}
```
### Framework Boxes
For strategic analysis frameworks.
```latex
% SWOT Analysis
\begin{swotbox}[SWOT Analysis Summary]
Content...
\end{swotbox}
% Porter's Five Forces
\begin{porterbox}[Porter's Five Forces Analysis]
Content...
\end{porterbox}
```
---
## Pull Quotes
For highlighting important statistics or quotes.
```latex
\begin{pullquote}
"The convergence of AI and healthcare represents a \$199 billion
opportunity by 2034."
\end{pullquote}
```
---
## Stat Boxes
For highlighting key statistics (use in rows of 3).
```latex
\begin{center}
\statbox{\$45.2B}{Market Size 2024}
\statbox{15.3\%}{CAGR 2024-2030}
\statbox{23\%}{Market Leader Share}
\end{center}
```
---
## Custom Commands
### Highlighting Text
```latex
\highlight{Important text} % Blue bold
```
### Market Size Formatting
```latex
\marketsize{45.2 billion} % Outputs: $45.2 billion in green
```
### Growth Rate Formatting
```latex
\growthrate{15.3} % Outputs: 15.3% in green
```
### Risk Indicators
```latex
\riskhigh{} % Outputs: HIGH in red
\riskmedium{} % Outputs: MEDIUM in orange
\risklow{} % Outputs: LOW in green
```
### Rating Stars (1-5)
```latex
\rating{4} % Outputs: ★★★★☆
```
### Trend Indicators
```latex
\trendup{} % Green up triangle
\trenddown{} % Red down triangle
\trendflat{} % Gray right arrow
```
---
## Table Formatting
### Standard Table with Alternating Rows
```latex
\begin{table}[htbp]
\centering
\caption{Market Size by Region}
\begin{tabular}{@{}lrrr@{}}
\toprule
\textbf{Region} & \textbf{Size} & \textbf{Share} & \textbf{CAGR} \\
\midrule
North America & \$18.2B & 40.3\% & 12.5\% \\
\rowcolor{tablealt} Europe & \$12.1B & 26.8\% & 14.2\% \\
Asia-Pacific & \$10.5B & 23.2\% & 18.7\% \\
\rowcolor{tablealt} Rest of World & \$4.4B & 9.7\% & 11.3\% \\
\midrule
\textbf{Total} & \textbf{\$45.2B} & \textbf{100\%} & \textbf{15.3\%} \\
\bottomrule
\end{tabular}
\label{tab:regional}
\end{table}
```
### Table with Trend Indicators
```latex
\begin{tabular}{@{}lrrl@{}}
\toprule
\textbf{Company} & \textbf{Revenue} & \textbf{Share} & \textbf{Trend} \\
\midrule
Company A & \$5.2B & 15.3\% & \trendup{} +12\% \\
Company B & \$4.8B & 14.1\% & \trenddown{} -3\% \\
Company C & \$4.2B & 12.4\% & \trendflat{} +1\% \\
\bottomrule
\end{tabular}
```
---
## Figure Formatting
### Standard Figure
```latex
\begin{figure}[htbp]
\centering
\includegraphics[width=0.9\textwidth]{../figures/market_growth.png}
\caption{Market Growth Trajectory (2020-2030)}
\label{fig:growth}
\end{figure}
```
### Figure with Source Attribution
```latex
\begin{figure}[htbp]
\centering
\includegraphics[width=0.85\textwidth]{../figures/market_share.png}
\caption{Market Share Distribution (2024)}
\figuresource{Company annual reports, industry analysis}
\label{fig:market_share}
\end{figure}
```
---
## List Formatting
### Bullet Lists
```latex
\begin{itemize}
\item First item with automatic blue bullet
\item Second item
\item Third item
\end{itemize}
```
### Numbered Lists
```latex
\begin{enumerate}
\item First item with blue number
\item Second item
\item Third item
\end{enumerate}
```
### Nested Lists
```latex
\begin{itemize}
\item Main point
\begin{itemize}
\item Sub-point A
\item Sub-point B
\end{itemize}
\item Another main point
\end{itemize}
```
---
## Title Page
### Using the Custom Title Command
```latex
\makemarketreporttitle
{Market Title} % Report title
{Subtitle Here} % Subtitle
{../figures/cover.png} % Hero image (leave empty for no image)
{January 2025} % Date
{Market Intelligence Team} % Author/prepared by
```
### Manual Title Page
See the template for full manual title page code.
---
## Appendix Sections
```latex
\appendix
\chapter{Methodology}
\appendixsection{Data Sources}
Content that appears in table of contents...
```
---
## Common Patterns
### Market Snapshot Section
```latex
\begin{marketdatabox}[Market Snapshot]
\begin{itemize}
\item \textbf{Current Market Size:} \marketsize{45.2 billion}
\item \textbf{Projected Size (2030):} \marketsize{98.7 billion}
\item \textbf{CAGR:} \growthrate{15.3}
\item \textbf{Largest Segment:} Enterprise (42\% share)
\item \textbf{Fastest Growing Region:} APAC (\growthrate{22.1} CAGR)
\end{itemize}
\end{marketdatabox}
```
### Risk Register Summary
```latex
\begin{table}[htbp]
\centering
\caption{Risk Assessment Summary}
\begin{tabular}{@{}llccl@{}}
\toprule
\textbf{Risk} & \textbf{Category} & \textbf{Prob.} & \textbf{Impact} & \textbf{Rating} \\
\midrule
Market disruption & Market & High & High & \riskhigh{} \\
\rowcolor{tablealt} Regulatory change & Regulatory & Med & High & \riskhigh{} \\
New entrant & Competitive & Med & Med & \riskmedium{} \\
\rowcolor{tablealt} Tech obsolescence & Technology & Low & High & \riskmedium{} \\
Currency fluctuation & Financial & Med & Low & \risklow{} \\
\bottomrule
\end{tabular}
\end{table}
```
### Competitive Comparison Table
```latex
\begin{table}[htbp]
\centering
\caption{Competitive Comparison}
\begin{tabular}{@{}lccccc@{}}
\toprule
\textbf{Factor} & \textbf{Co. A} & \textbf{Co. B} & \textbf{Co. C} & \textbf{Co. D} \\
\midrule
Market Share & \rating{5} & \rating{4} & \rating{3} & \rating{2} \\
\rowcolor{tablealt} Product Quality & \rating{4} & \rating{5} & \rating{3} & \rating{4} \\
Price Competitiveness & \rating{3} & \rating{3} & \rating{5} & \rating{4} \\
\rowcolor{tablealt} Innovation & \rating{5} & \rating{4} & \rating{2} & \rating{3} \\
Customer Service & \rating{4} & \rating{4} & \rating{4} & \rating{5} \\
\bottomrule
\end{tabular}
\end{table}
```
---
## Troubleshooting
### Box Overflow
If box content overflows the page, break into multiple boxes or use page breaks:
```latex
\newpage
\begin{keyinsightbox}[Continued...]
```
### Figure Placement
Use `[htbp]` for flexible placement, or `[H]` (requires `float` package) for exact placement:
```latex
\begin{figure}[H] % Requires \usepackage{float}
```
### Table Too Wide
Use `\resizebox` or `adjustbox`:
```latex
\resizebox{\textwidth}{!}{
\begin{tabular}{...}
...
\end{tabular}
}
```
### Color Not Appearing
Ensure `xcolor` package is loaded with `[table]` option (already included in style file).
---
## Compilation
Compile with XeLaTeX for best results:
```bash
xelatex report.tex
bibtex report
xelatex report.tex
xelatex report.tex
```
Or use latexmk:
```bash
latexmk -xelatex report.tex
```

File diff suppressed because it is too large Load Diff

564
assets/market_research.sty Normal file
View File

@@ -0,0 +1,564 @@
% market_research.sty - Professional Market Research Report Styling
% For use with XeLaTeX or LuaLaTeX
% Style inspired by top consulting firms (McKinsey, BCG, Gartner)
\ProvidesPackage{market_research}[2024/01/01 Market Research Report Style]
% ============================================================================
% REQUIRED PACKAGES
% ============================================================================
% Page layout and geometry
\RequirePackage[margin=1in]{geometry}
\RequirePackage{setspace}
% Typography
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\RequirePackage{helvet}
\renewcommand{\familydefault}{\sfdefault}
% Colors and graphics
\RequirePackage{xcolor}
\RequirePackage{graphicx}
\RequirePackage{tikz}
% Tables
\RequirePackage{longtable}
\RequirePackage{booktabs}
\RequirePackage{multirow}
\RequirePackage{array}
\RequirePackage{colortbl}
% Lists and formatting
\RequirePackage{enumitem}
\RequirePackage{parskip}
% Boxes and callouts
\RequirePackage[most]{tcolorbox}
% Headers and footers
\RequirePackage{fancyhdr}
\RequirePackage{titlesec}
% Hyperlinks and references
\RequirePackage{hyperref}
\RequirePackage[numbers,sort&compress]{natbib}
% Math (for financial projections)
\RequirePackage{amsmath}
% Captions
\RequirePackage{caption}
\RequirePackage{subcaption}
% ============================================================================
% COLOR DEFINITIONS
% ============================================================================
% Primary colors (professional blue palette)
\definecolor{primaryblue}{RGB}{0, 51, 102} % Deep navy blue
\definecolor{secondaryblue}{RGB}{51, 102, 153} % Medium blue
\definecolor{lightblue}{RGB}{173, 216, 230} % Light blue for backgrounds
\definecolor{accentblue}{RGB}{0, 120, 215} % Bright accent blue
% Secondary colors (complementary)
\definecolor{accentgreen}{RGB}{0, 128, 96} % Teal green
\definecolor{lightgreen}{RGB}{200, 230, 201} % Light green background
\definecolor{darkgreen}{RGB}{27, 94, 32} % Dark green
% Warning and risk colors
\definecolor{warningorange}{RGB}{255, 140, 0} % Orange for warnings
\definecolor{lightorange}{RGB}{255, 243, 224} % Light orange background
\definecolor{alertred}{RGB}{198, 40, 40} % Red for critical items
\definecolor{lightred}{RGB}{255, 235, 238} % Light red background
% Recommendation and action colors
\definecolor{recommendpurple}{RGB}{103, 58, 183} % Purple for recommendations
\definecolor{lightpurple}{RGB}{237, 231, 246} % Light purple background
% Neutral colors
\definecolor{darkgray}{RGB}{66, 66, 66} % Dark gray for text
\definecolor{mediumgray}{RGB}{117, 117, 117} % Medium gray
\definecolor{lightgray}{RGB}{240, 240, 240} % Light gray backgrounds
\definecolor{tablegray}{RGB}{250, 250, 250} % Table row alternating
\definecolor{tablealt}{RGB}{245, 247, 250} % Alternating table row
% Chart colors (colorblind-friendly palette)
\definecolor{chart1}{RGB}{0, 114, 178} % Blue
\definecolor{chart2}{RGB}{230, 159, 0} % Orange
\definecolor{chart3}{RGB}{0, 158, 115} % Green
\definecolor{chart4}{RGB}{204, 121, 167} % Pink
\definecolor{chart5}{RGB}{86, 180, 233} % Sky blue
\definecolor{chart6}{RGB}{213, 94, 0} % Vermillion
\definecolor{chart7}{RGB}{240, 228, 66} % Yellow
% ============================================================================
% HYPERLINK CONFIGURATION
% ============================================================================
\hypersetup{
colorlinks=true,
linkcolor=primaryblue,
filecolor=primaryblue,
urlcolor=accentblue,
citecolor=secondaryblue,
pdftitle={Market Research Report},
pdfauthor={Market Intelligence},
pdfsubject={Market Analysis},
}
% ============================================================================
% CHAPTER AND SECTION FORMATTING
% ============================================================================
% Chapter formatting - large number with colored title
\titleformat{\chapter}[display]
{\normalfont\huge\bfseries\color{primaryblue}}
{\chaptertitlename\ \thechapter}{20pt}{\Huge}
\titlespacing*{\chapter}{0pt}{-20pt}{40pt}
% Section formatting
\titleformat{\section}
{\normalfont\Large\bfseries\color{primaryblue}}
{\thesection}{1em}{}
\titlespacing*{\section}{0pt}{3.5ex plus 1ex minus .2ex}{2.3ex plus .2ex}
% Subsection formatting
\titleformat{\subsection}
{\normalfont\large\bfseries\color{secondaryblue}}
{\thesubsection}{1em}{}
% Subsubsection formatting
\titleformat{\subsubsection}
{\normalfont\normalsize\bfseries\color{darkgray}}
{\thesubsubsection}{1em}{}
% Paragraph formatting
\titleformat{\paragraph}[runin]
{\normalfont\normalsize\bfseries\color{darkgray}}
{\theparagraph}{1em}{}
% ============================================================================
% HEADER AND FOOTER CONFIGURATION
% ============================================================================
\pagestyle{fancy}
\fancyhf{}
\fancyhead[L]{\small\textit{\leftmark}}
\fancyhead[R]{\small\textit{Market Research Report}}
\fancyfoot[C]{\thepage}
\renewcommand{\headrulewidth}{0.4pt}
\renewcommand{\footrulewidth}{0.4pt}
\renewcommand{\headrule}{\hbox to\headwidth{\color{primaryblue}\leaders\hrule height \headrulewidth\hfill}}
\renewcommand{\footrule}{\hbox to\headwidth{\color{lightgray}\leaders\hrule height \footrulewidth\hfill}}
% Plain page style for chapter pages
\fancypagestyle{plain}{
\fancyhf{}
\fancyfoot[C]{\thepage}
\renewcommand{\headrulewidth}{0pt}
\renewcommand{\footrulewidth}{0.4pt}
}
% ============================================================================
% BOX ENVIRONMENTS
% ============================================================================
% Key Insight Box (Blue) - For major findings and insights
\newtcolorbox{keyinsightbox}[1][Key Insight]{
colback=lightblue!30,
colframe=primaryblue,
fonttitle=\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=primaryblue,
boxrule=1pt,
arc=3pt,
left=10pt,
right=10pt,
top=8pt,
bottom=8pt,
before skip=12pt,
after skip=12pt,
}
% Market Data Box (Green) - For market statistics and data highlights
\newtcolorbox{marketdatabox}[1][Market Data]{
colback=lightgreen!50,
colframe=accentgreen,
fonttitle=\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=accentgreen,
boxrule=1pt,
arc=3pt,
left=10pt,
right=10pt,
top=8pt,
bottom=8pt,
before skip=12pt,
after skip=12pt,
}
% Risk Box (Orange/Warning) - For risk factors and warnings
\newtcolorbox{riskbox}[1][Risk Factor]{
colback=lightorange,
colframe=warningorange,
fonttitle=\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=warningorange,
boxrule=1pt,
arc=3pt,
left=10pt,
right=10pt,
top=8pt,
bottom=8pt,
before skip=12pt,
after skip=12pt,
}
% Critical Risk Box (Red) - For critical/high-severity risks
\newtcolorbox{criticalriskbox}[1][Critical Risk]{
colback=lightred,
colframe=alertred,
fonttitle=\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=alertred,
boxrule=1pt,
arc=3pt,
left=10pt,
right=10pt,
top=8pt,
bottom=8pt,
before skip=12pt,
after skip=12pt,
}
% Recommendation Box (Purple) - For strategic recommendations
\newtcolorbox{recommendationbox}[1][Strategic Recommendation]{
colback=lightpurple,
colframe=recommendpurple,
fonttitle=\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=recommendpurple,
boxrule=1pt,
arc=3pt,
left=10pt,
right=10pt,
top=8pt,
bottom=8pt,
before skip=12pt,
after skip=12pt,
}
% Callout Box (Gray) - For definitions, notes, supplementary info
\newtcolorbox{calloutbox}[1][Note]{
colback=lightgray,
colframe=mediumgray,
fonttitle=\bfseries\color{darkgray},
title=#1,
coltitle=darkgray,
colbacktitle=lightgray,
boxrule=0.5pt,
arc=3pt,
left=10pt,
right=10pt,
top=8pt,
bottom=8pt,
before skip=12pt,
after skip=12pt,
}
% Executive Summary Box (Special styling)
\newtcolorbox{executivesummarybox}[1][Executive Summary]{
enhanced,
colback=white,
colframe=primaryblue,
fonttitle=\Large\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=primaryblue,
boxrule=2pt,
arc=5pt,
left=15pt,
right=15pt,
top=12pt,
bottom=12pt,
before skip=15pt,
after skip=15pt,
shadow={2mm}{-2mm}{0mm}{black!20},
}
% Opportunity Box (Teal) - For opportunities and positive findings
\newtcolorbox{opportunitybox}[1][Opportunity]{
colback=lightblue!20,
colframe=accentblue,
fonttitle=\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=accentblue,
boxrule=1pt,
arc=3pt,
left=10pt,
right=10pt,
top=8pt,
bottom=8pt,
before skip=12pt,
after skip=12pt,
}
% ============================================================================
% PULL QUOTE ENVIRONMENT
% ============================================================================
\newtcolorbox{pullquote}{
enhanced,
colback=lightgray,
colframe=lightgray,
boxrule=0pt,
borderline west={4pt}{0pt}{primaryblue},
arc=0pt,
left=15pt,
right=15pt,
top=10pt,
bottom=10pt,
before skip=15pt,
after skip=15pt,
fontupper=\large\itshape\color{darkgray},
}
% ============================================================================
% STATISTIC HIGHLIGHT
% ============================================================================
\newcommand{\statbox}[2]{%
\begin{tcolorbox}[
colback=primaryblue,
colframe=primaryblue,
coltext=white,
arc=5pt,
boxrule=0pt,
width=0.3\textwidth,
halign=center,
valign=center,
before skip=10pt,
after skip=10pt,
]
{\Huge\bfseries #1}\\[5pt]
{\small #2}
\end{tcolorbox}
}
% ============================================================================
% TABLE STYLING
% ============================================================================
% Alternating row colors command
\newcommand{\tablerowcolor}{\rowcolor{tablealt}}
% Table header styling
\newcommand{\tableheader}[1]{\textbf{\color{white}#1}}
\newcommand{\tableheaderrow}{\rowcolor{primaryblue}}
% Professional table environment
\newenvironment{markettable}[2][htbp]{%
\begin{table}[#1]
\centering
\caption{#2}
\small
}{%
\end{table}
}
% ============================================================================
% FIGURE STYLING
% ============================================================================
% Caption formatting
\captionsetup{
font=small,
labelfont={bf,color=primaryblue},
textfont={color=darkgray},
justification=centering,
margin=20pt,
}
% Figure with source attribution
\newcommand{\figuresource}[1]{%
\par\vspace{-8pt}
{\small\textit{Source: #1}}
}
% ============================================================================
% LIST STYLING
% ============================================================================
% Bullet list styling
\setlist[itemize]{
leftmargin=*,
label=\textcolor{primaryblue}{\textbullet},
topsep=5pt,
itemsep=3pt,
}
% Numbered list styling
\setlist[enumerate]{
leftmargin=*,
label=\textcolor{primaryblue}{\arabic*.},
topsep=5pt,
itemsep=3pt,
}
% ============================================================================
% CUSTOM COMMANDS
% ============================================================================
% Highlight important text
\newcommand{\highlight}[1]{\textbf{\textcolor{primaryblue}{#1}}}
% Market size with formatting
\newcommand{\marketsize}[1]{\textbf{\textcolor{accentgreen}{\$#1}}}
% Growth rate with formatting
\newcommand{\growthrate}[1]{\textbf{\textcolor{chart3}{#1\%}}}
% Risk indicator
\newcommand{\riskhigh}{\textbf{\textcolor{alertred}{HIGH}}}
\newcommand{\riskmedium}{\textbf{\textcolor{warningorange}{MEDIUM}}}
\newcommand{\risklow}{\textbf{\textcolor{accentgreen}{LOW}}}
% Rating stars (1-5)
\newcommand{\rating}[1]{%
\foreach \i in {1,...,5}{%
\ifnum\i>#1
\textcolor{lightgray}{$\star$}%
\else
\textcolor{warningorange}{$\star$}%
\fi
}%
}
% Trend indicators
\newcommand{\trendup}{\textcolor{accentgreen}{$\blacktriangle$}}
\newcommand{\trenddown}{\textcolor{alertred}{$\blacktriangledown$}}
\newcommand{\trendflat}{\textcolor{mediumgray}{$\rightarrow$}}
% ============================================================================
% TITLE PAGE COMMAND
% ============================================================================
\newcommand{\makemarketreporttitle}[5]{%
% #1 = Report Title
% #2 = Subtitle
% #3 = Hero Image Path
% #4 = Date
% #5 = Prepared By
\begin{titlepage}
\centering
\vspace*{1cm}
{\Huge\bfseries\color{primaryblue} #1\\[0.5cm]}
{\LARGE\bfseries #2\\[2cm]}
\ifx&#3&
% No image provided
\vspace{4cm}
\else
\includegraphics[width=\textwidth]{#3}\\[2cm]
\fi
{\Large\bfseries Market Research Report\\[3cm]}
{\large
\textbf{Date:} #4\\[0.3cm]
\textbf{Prepared By:} #5\\[0.3cm]
\textbf{Classification:} Confidential
}
\vfill
{\footnotesize
\textit{This report contains market intelligence and strategic analysis. All data sources are cited and independently verifiable.}
}
\end{titlepage}
}
% ============================================================================
% APPENDIX SECTION COMMAND
% ============================================================================
\newcommand{\appendixsection}[1]{%
\section*{#1}
\addcontentsline{toc}{section}{#1}
}
% ============================================================================
% FRAMEWORK BOXES
% ============================================================================
% SWOT Analysis Box
\newtcolorbox{swotbox}[1][SWOT Analysis]{
enhanced,
colback=white,
colframe=secondaryblue,
fonttitle=\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=secondaryblue,
boxrule=1.5pt,
arc=5pt,
left=10pt,
right=10pt,
top=10pt,
bottom=10pt,
before skip=15pt,
after skip=15pt,
}
% Porter's Five Forces Box
\newtcolorbox{porterbox}[1][Porter's Five Forces]{
enhanced,
colback=white,
colframe=primaryblue,
fonttitle=\bfseries\color{white},
title=#1,
coltitle=white,
colbacktitle=primaryblue,
boxrule=1.5pt,
arc=5pt,
left=10pt,
right=10pt,
top=10pt,
bottom=10pt,
before skip=15pt,
after skip=15pt,
}
% ============================================================================
% PAGE LAYOUT ADJUSTMENTS
% ============================================================================
% Spacing
\setstretch{1.15}
\setlength{\parskip}{0.5em}
% Prevent orphans and widows
\clubpenalty=10000
\widowpenalty=10000
% Float placement
\renewcommand{\topfraction}{0.9}
\renewcommand{\bottomfraction}{0.8}
\renewcommand{\textfraction}{0.07}
\renewcommand{\floatpagefraction}{0.7}
% ============================================================================
% END OF STYLE FILE
% ============================================================================
\endinput