/*
 * TIFFANY RIVERA — Modern Peach Editorial × Digital Product Studio
 * Shared design system: site-wide source of truth for all case studies,
 * interactive modules, and video/gallery entries.
 * Approved brand: navy #0F2D4A, peach #F5B39B.
 * Proposed supporting colors used in approved visual direction:
 * terracotta #A34F3D, ivory #FFFAF6, sage #7D8E83.
 * Font stack falls back gracefully if Google Fonts is unavailable.
 */
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Instrument+Serif:ital@0;1&display=swap');
:root {
  --navy:#0F2D4A; --navy2:#173B57; --ink:#0F2D4A;
  --accent:#F5B39B; --terracotta:#A34F3D; --violet:#A34F3D;
  --canvas:#FFFAF6; --white:#FFFFFF; --sage:#7D8E83;
  --surface-warm:#F4EAE4; --surface-blush:#FCEDE5; --surface-peach:#F7E2D6;
  --stroke:#E4D6CE; --muted:#536373; --radius:16px;
  --serif:'Instrument Serif','Iowan Old Style',Georgia,'Times New Roman',serif;
  --sans:'DM Sans',Aptos,'Segoe UI',Arial,sans-serif;
  --shadow:0 14px 38px rgba(15,45,74,.085);
}
html { color-scheme:light; }
body { font-family:var(--sans); background:var(--canvas); color:var(--navy); }
h1,h2 { font-family:var(--serif); font-weight:400; letter-spacing:-.025em; line-height:1.05; }
h1 em,h2 em,h3 em { font-family:var(--serif); font-weight:400; color:var(--terracotta); }
h3 { letter-spacing:-.025em; }
h1 { font-size:clamp(3.65rem,6.4vw,7rem); }
h2 { font-size:clamp(2.7rem,4.6vw,4.6rem); }
:where(a,button,input,textarea,select):focus-visible { outline:3px solid var(--terracotta); outline-offset:4px; }
::selection{background:var(--accent);color:var(--navy)}
.site-header { background:rgba(255,250,246,.97); border-bottom:1px solid var(--stroke); }
.brand-mark { border-radius:10px; background:var(--accent); color:var(--navy); font:italic 27px/1 var(--serif); letter-spacing:-.08em; border:1px solid #D7A08E; }
.brand-mark span { color:var(--terracotta); }
.brand-stack strong { font:400 22px/1.06 var(--serif); letter-spacing:.01em; }
.brand-stack small { color:#725F5B; font-weight:700; letter-spacing:.07em; }
.main-nav>a { color:var(--navy); font-weight:600; }
.main-nav>a:hover,.main-nav>a[aria-current=page] { color:var(--terracotta); }
.main-nav>a[aria-current=page]:not(.nav-cta) { text-decoration-color:var(--terracotta); }
.main-nav>.nav-cta { background:var(--terracotta); border-color:var(--terracotta); border-radius:10px; color:#FFFFFF; }
.main-nav>.nav-cta:hover { background:#843C2D; color:#FFFFFF; }
.menu-toggle span { background:var(--navy); }
.eyebrow { color:var(--terracotta); letter-spacing:.16em; }
.eyebrow-line { background:var(--terracotta); }
.hero { background:radial-gradient(circle at 90% 20%,rgba(245,179,155,.33),transparent 39%),var(--surface-warm); }
.hero h1 em,.page-hero h1 em,.lxd-copy h2 em,.lxd-swatch h3 em,.cta-layout h2 em { color:var(--terracotta); }
.lead,.section-aside,.lxd-copy p,.about-story p { color:#4C5B67; }
.btn { border-radius:10px; }
.btn-primary { background:var(--terracotta); color:#FFFFFF; }
.btn-primary:hover { background:#843C2D; color:#FFFFFF; }
.btn-primary span { color:#FFFFFF; }
.btn-light { background:var(--accent); color:var(--navy); }
.btn-outline { background:transparent; color:var(--navy); border:1px solid var(--navy); }
.btn-text,.text-arrow,.subtle-link { color:var(--terracotta); }
.text-arrow { border-bottom-color:var(--terracotta); }
.hero-proof>div { border-top-color:#D9C9C1; }
.hero-proof strong span { color:var(--terracotta); }
.stage-orbit { border-color:#D5AD9F; }
.stage-main-card { background:linear-gradient(150deg,var(--navy),#11263A 90%); }
.stage-title,.stage-flow strong { font-family:var(--sans); }
.float-card { border-color:#E8D2C7; }
.float-icon { background:#F8E4D8; color:var(--terracotta); }
.pulse-icon { background:#F1E9E2; color:var(--navy); }
.ticker { background:#F4E7DF; border-color:#E8D6CE; }
.ticker-inner b { color:var(--terracotta); }
.project-card,.learning-card { border-color:#EADBD3; border-radius:16px; box-shadow:var(--shadow); }
.project-card:hover,.learning-card:hover { box-shadow:0 20px 42px rgba(15,45,74,.13); }
.project-card h3,.learning-card h3,.reserved-details h3,.ai-link-grid h3 { font:400 clamp(1.6rem,2vw,2rem)/1.1 var(--serif); letter-spacing:-.02em; }
.project-info p,.learning-info p { color:#536373; }
.project-art { background:linear-gradient(135deg,#0F2D4A,#31546A); }
.project-card--salesforce .project-art { background:linear-gradient(135deg,#0F2D4A,#7D8E83); }
.project-card--netflix .project-art { background:linear-gradient(135deg,#0F2D4A,#A34F3D); }
.project-card--epic .project-art { background:linear-gradient(135deg,#173B57,#73897D); }
.project-card--careerctrl .project-art { background:linear-gradient(135deg,#0F2D4A,#8C5C55); }
.project-card--dod .project-art { background:linear-gradient(135deg,#0F2D4A,#627F76); }
.project-card--microlearning .project-art { background:linear-gradient(135deg,#7D5147,#A34F3D); }
.visual-line.shorter { background:#F5B39B; }
.visual-dots { color:#F5B39B; }
.card-eyebrow { color:var(--terracotta); }
.tag { background:#FFF4EE; color:#6C453D; border-color:#EBCFC2; }
.lxd-swatch { background:linear-gradient(145deg,#F9E1D5,#FDF5ED); }
.lxd-swatch::before { background:rgba(245,179,155,.45); }
.swatch-pill { color:var(--terracotta); }
.swatch-stack span { background:rgba(255,250,246,.9); border-color:#E1BBAA; color:var(--navy); }
.cta-band { background:#F1E5DE; }
.page-hero { background:radial-gradient(circle at 82% 10%,rgba(245,179,155,.42),transparent 40%),#F5ECE5; }
.filter,.subfilter { border-color:#E2CEC2; color:var(--navy); }
.filter:hover,.subfilter:hover { background:#FAE9E0; }
.filter.is-active,.subfilter.is-active { background:var(--navy); color:#FFFFFF; border-color:var(--navy); }
.search-wrap input { border-color:#E2CEC2; }
.legend-dot,.status-dot { background:#7D8E83; }
.legend-dot.planned,.status-dot.muted { background:#BC9C91; }
.learning-art { background:#F6E5DA; }
.learning-art.art-1 { background:#F6E2D6; }
.learning-art.art-2 { background:#E7E6DB; }
.learning-art.art-3 { background:#F3E5DF; }
.mock-frame { border-color:#D8C9C0; }
.mock-top { background:#F5EDE5; border-color:#E8D6CC; }
.mock-top i { background:#C88B77; }
.mock-top span,.mock-kicker { color:var(--navy); }
.mock-block { background:#E7DCD5; }
.mock-block.large { background:#EAB7A4; }
.mock-steps b { background:#F4E0D6; color:#7F4536; }
.art-label { background:#FFF9F3; color:#745045; }
.learning-type { color:var(--terracotta); }
.subtle-link { color:var(--terracotta); }
.soft-section { background:#F7EFE9; }
.note-section { background:#F1EAE3; }
.detail-hero { background:var(--navy); }
.detail-hero .eyebrow { color:var(--accent); }
.detail-stat>strong,.detail-stat .status-head { color:var(--accent); }
.detail-sidebar { border-color:#E8D8CE; }
.detail-sidebar dt { color:var(--terracotta); }
.sidebar-download { background:#F7E4D9; color:var(--navy); }
.process-step { border-color:#E7DAD2; }
.process-counter { color:var(--terracotta); }
.diagram-panel { border-color:#E6DAD0; }
.diagram-top { background:#F6E9E2; color:#7A584B; }
.diagram-node { border-color:#E5CFC3; }
.diagram-node>span { color:var(--terracotta); }
.diagram-arrow { color:var(--terracotta); }
.outcome-panel { background:#F4EEE6; border-color:#D9CDC1; }
.learning-preview-panel { border-color:#E8D7CE; }
.preview-title { background:#F5E9E0; color:var(--terracotta); }
.preview-stage { background:linear-gradient(135deg,#F9E4D7,#ECE9E1); }
.preview-stage>div { border-color:#E3CABC; color:var(--navy); }
.demo-access { background:#F7E9DF; border-color:#E4C8B8; }
.demo-progress .done { background:#E8ECE7; color:#425E52; }
.demo-progress .active,.ai-demo-card li.highlight { background:#FCE7DB; color:#7C3E31; }
.demo-score { background:#F6ECE4; }
.demo-action { background:var(--navy); }
.about-portrait { background:linear-gradient(140deg,var(--navy),#28516A); }
.portrait-initials span { color:var(--accent); }
.portrait-quote { font-family:var(--serif); color:#FFE1D3; }
.pillar,.ai-link-grid>a,.resume-card,.contact-box { border-color:#EAD8CF; }
.pillar span,.ai-link-grid span,.experience-list span { color:var(--terracotta); }
.mini-metric { color:var(--terracotta); }
.ai-demo-card { border-color:#EAD8CF; }
.site-footer { background:var(--navy); }
.footer-brand { font:400 30px var(--serif); }
.footer-brand span { color:var(--accent); }
/* Shared module/video gallery rules: no one-off theme variants. */
.id-intro { background:var(--navy); }
.id-intro .eyebrow,.id-intro h2 em { color:var(--accent); }
.id-collection { background:var(--canvas); }
.id-collection + .id-collection { background:#FFF4EC; }
.id-collection-head p:not(.eyebrow) { color:var(--muted); }
.collection-count { border-color:#E0C7BA; border-radius:14px; }
.collection-count strong { font-family:var(--serif); }
.collection-count span { color:var(--terracotta); }
.reserved-asset { border-color:#E8D3C7; border-radius:16px; }
.reserved-visual { background:linear-gradient(135deg,#F6D8C8,#FFF7F0); }
.reserved-asset.video .reserved-visual { background:linear-gradient(135deg,#0F2D4A,#27536C); }
.reserve-layer i { border-color:var(--terracotta); }
.reserve-play { border-color:var(--accent); color:var(--accent); }
.reserve-status-dot { background:var(--terracotta); }
.reserved-details p { color:var(--muted); }
.id-editorial-note { background:#F4E3D9; }
.id-editorial-note p { color:var(--navy); }
/* Phone and small tablet refinements */
@media (max-width:860px) {
  .main-nav { background:var(--canvas); border-color:var(--stroke); }
  .main-nav>a { border-color:var(--stroke); }
}
@media (max-width:620px) {
  h1 { font-size:clamp(3.1rem,10.2vw,4.5rem); }
  h2,.section h2 { font-size:clamp(2.5rem,9vw,3.5rem); }
  .brand-stack strong { font-size:20px; }
  .project-card h3,.learning-card h3,.reserved-details h3 { font-size:1.7rem; }
  .reserved-visual { height:180px; }
}
@media(prefers-reduced-motion:reduce) {
  .btn,.project-card,.learning-card { transform:none!important; }
}
