/* CSR & Partnerships shared — root & nav */
:root {
  --csr-gold:#C9921A;--csr-gold-l:#E8A820;--csr-gold-xl:#F5C842;--csr-gold-pale:#FDF0D0;
  --csr-gold-glow:rgba(201,146,26,0.13);--csr-gold-glow2:rgba(201,146,26,0.22);
  --csr-brown:#1C0F06;--csr-brown-m:#3A1E0C;--csr-brown-l:#5C3D20;
  --csr-cream:#FBF7F0;--csr-cream-d:#EDE0CB;--csr-cream-dd:#DDD0BB;
  --csr-text-1:#1C0F06;--csr-text-2:#5C3D20;--csr-text-3:#9A7550;--csr-text-inv:rgba(255,255,255,0.85);
  --csr-success:#27AE60;--csr-coral:#D4522A;--csr-sky:#2980B9;
  --csr-surface:#FFFFFF;--csr-border:rgba(160,128,96,0.16);
  --csr-radius:16px;--csr-radius-sm:10px;
  --csr-T:0.28s cubic-bezier(0.4,0,0.2,1);
}
body.page-csr, body.page-partnerships { font-family:'DM Sans',sans-serif; background:var(--csr-cream); color:var(--csr-text-1); -webkit-font-smoothing:antialiased; overflow-x:hidden; }
body.page-csr::after, body.page-partnerships::after { content:''; position:fixed; inset:0; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E"); pointer-events:none; z-index:9998; }

.csr-nav { background:rgba(28,15,6,0.96); backdrop-filter:blur(24px); height:70px; display:flex; align-items:center; justify-content:space-between; padding:0 6%; border-bottom:1px solid rgba(201,146,26,0.1); position:sticky; top:0; z-index:200; }
.csr-nav .nav-logo { display:flex; align-items:center; gap:0.7rem; text-decoration:none; }
.csr-nav .nav-logo-icon { width:36px; height:36px; background:linear-gradient(135deg,var(--csr-gold-l),var(--csr-gold)); border-radius:9px; display:flex; align-items:center; justify-content:center; font-size:1.1rem; box-shadow:0 4px 14px rgba(201,146,26,0.4); }
.csr-nav .nav-logo-text { font-family:'Playfair Display',serif; font-size:1.3rem; font-weight:800; color:var(--csr-gold-l); }
.csr-nav .nav-logo-text em { font-style:italic; color:rgba(255,255,255,0.85); }
.csr-nav .nav-links { display:flex; align-items:center; gap:1.8rem; list-style:none; }
.csr-nav .nav-links a { font-size:0.73rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; color:rgba(255,255,255,0.4); text-decoration:none; transition:color var(--csr-T); }
.csr-nav .nav-links a:hover, .csr-nav .nav-links a.current, .csr-nav .nav-links a.active { color:var(--csr-gold-l); }
.csr-nav .nav-cta { background:var(--csr-gold)!important; color:var(--csr-brown)!important; padding:0.42rem 1.1rem; border-radius:8px; text-decoration:none; font-size:0.73rem; font-weight:600; letter-spacing:0.12em; text-transform:uppercase; }
.csr-nav .nav-cta:hover { background:var(--csr-gold-l)!important; }

/* CSR Hero */
.csr-hero { min-height:100vh; position:relative; display:flex; flex-direction:column; justify-content:center; padding:8rem 6% 6rem; overflow:hidden; background:var(--csr-brown); }
.csr-hero::before { content:''; position:absolute; inset:0; background: radial-gradient(ellipse 60% 55% at 80% 20%,rgba(201,146,26,0.12) 0%,transparent 60%), radial-gradient(ellipse 40% 40% at 15% 80%,rgba(201,146,26,0.07) 0%,transparent 55%); }
.csr-hero-bg-letter { position:absolute; right:-2%; top:50%; transform:translateY(-50%); font-family:'Playfair Display',serif; font-size:clamp(20rem,28vw,36rem); font-weight:900; font-style:italic; color:rgba(201,146,26,0.04); line-height:1; pointer-events:none; user-select:none; }
.csr-hero-inner { position:relative; max-width:720px; }
.csr-hero-eyebrow { display:inline-flex; align-items:center; gap:0.5rem; font-size:0.68rem; letter-spacing:0.22em; text-transform:uppercase; font-weight:700; color:var(--csr-gold); border:1px solid rgba(201,146,26,0.3); padding:0.35rem 1rem; border-radius:24px; margin-bottom:1.8rem; }
.csr-hero-title { font-family:'Playfair Display',serif; font-size:clamp(2.8rem,6vw,5.2rem); font-weight:900; line-height:1.08; color:#fff; margin-bottom:1.8rem; }
.csr-hero-title em { font-style:italic; color:var(--csr-gold-l); }
.csr-hero-title .line2 { display:block; color:rgba(255,255,255,0.45); font-weight:400; font-size:0.7em; font-style:italic; font-family:'Cormorant Garamond',serif; letter-spacing:0.02em; }
.csr-hero-desc { font-size:1rem; color:rgba(255,255,255,0.5); line-height:1.85; max-width:520px; margin-bottom:2.5rem; font-weight:300; }
.csr-hero-actions { display:flex; gap:1rem; flex-wrap:wrap; }
.csr-btn { display:inline-flex; align-items:center; gap:0.5rem; padding:0.8rem 1.8rem; border-radius:var(--csr-radius-sm); font-family:'DM Sans',sans-serif; font-size:0.82rem; font-weight:700; cursor:pointer; transition:all var(--csr-T); border:none; letter-spacing:0.04em; text-decoration:none; }
.csr-btn-gold { background:var(--csr-gold); color:#fff; box-shadow:0 4px 20px rgba(201,146,26,0.4); }
.csr-btn-gold:hover { background:var(--csr-gold-l); box-shadow:0 6px 28px rgba(201,146,26,0.55); transform:translateY(-2px); }
.csr-btn-outline { background:transparent; color:rgba(255,255,255,0.7); border:1.5px solid rgba(255,255,255,0.18); }
.csr-btn-outline:hover { background:rgba(255,255,255,0.06); border-color:rgba(255,255,255,0.35); color:#fff; }
.csr-hero-impact { display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid rgba(201,146,26,0.15); margin-top:4rem; }
.csr-impact-cell { padding:1.5rem 0; text-align:center; border-right:1px solid rgba(201,146,26,0.1); }
.csr-impact-cell:last-child { border-right:none; }
.csr-impact-num { font-family:'Playfair Display',serif; font-size:2rem; font-weight:800; color:var(--csr-gold-l); line-height:1; }
.csr-impact-label { font-size:0.68rem; letter-spacing:0.12em; text-transform:uppercase; color:rgba(255,255,255,0.3); font-weight:600; margin-top:0.3rem; }
@media(max-width:900px){ .csr-hero-impact { grid-template-columns:1fr 1fr; } .csr-impact-cell:nth-child(2){ border-right:none; } }

/* Section shared */
.csr-section { padding:6rem 6%; }
.csr-eyebrow { display:inline-flex; align-items:center; gap:0.4rem; font-size:0.65rem; letter-spacing:0.2em; text-transform:uppercase; font-weight:700; color:var(--csr-gold); margin-bottom:0.8rem; }
.csr-section-title { font-family:'Playfair Display',serif; font-size:clamp(2rem,4vw,3.2rem); font-weight:800; line-height:1.12; color:var(--csr-text-1); margin-bottom:1.2rem; }
.csr-section-title em { font-style:italic; color:var(--csr-gold); }
.csr-section-desc { font-size:0.95rem; color:var(--csr-text-3); line-height:1.85; max-width:580px; font-weight:400; }
.csr-ornament-divider { display:flex; align-items:center; gap:1rem; margin:2rem 0; }
.csr-ornament-line { flex:1; height:1px; background:var(--csr-border); }
.csr-ornament-glyph { font-size:1rem; color:var(--csr-gold); opacity:0.6; }

/* Mission */
.csr-mission { background:var(--csr-cream); position:relative; overflow:hidden; }
.csr-mission-grid { display:grid; grid-template-columns:1fr 1fr; gap:5rem; align-items:center; }
.csr-mission-visual { position:relative; }
.csr-mission-img-frame { border-radius:var(--csr-radius); overflow:hidden; position:relative; aspect-ratio:4/5; background:var(--csr-brown-m); }
.csr-mission-img-frame img { width:100%; height:100%; object-fit:cover; opacity:0.85; }
.csr-mission-img-overlay { position:absolute; inset:0; background:linear-gradient(to top,rgba(28,15,6,0.7) 0%,transparent 55%); }
.csr-mission-quote { position:absolute; bottom:2rem; left:2rem; right:2rem; font-family:'Cormorant Garamond',serif; font-size:1.1rem; font-style:italic; color:rgba(255,255,255,0.9); line-height:1.6; }
.csr-mission-quote cite { display:block; font-family:'DM Sans',sans-serif; font-size:0.7rem; font-style:normal; letter-spacing:0.1em; text-transform:uppercase; color:var(--csr-gold); margin-top:0.5rem; font-weight:600; }
.csr-mission-accent { position:absolute; top:-1.5rem; right:-1.5rem; background:var(--csr-gold); color:var(--csr-brown); padding:1.2rem 1.4rem; border-radius:var(--csr-radius); box-shadow:0 12px 40px rgba(201,146,26,0.35); font-family:'Playfair Display',serif; text-align:center; min-width:140px; }
.csr-accent-num { font-size:2.2rem; font-weight:800; line-height:1; }
.csr-accent-sub { font-size:0.65rem; font-weight:700; text-transform:uppercase; letter-spacing:0.1em; margin-top:0.2rem; opacity:0.75; }
.csr-pillars { display:flex; flex-direction:column; gap:1.5rem; margin-top:2.5rem; }
.csr-pillar { display:flex; gap:1.1rem; align-items:flex-start; }
.csr-pillar-icon { width:42px; height:42px; border-radius:10px; background:var(--csr-gold-glow); border:1px solid rgba(201,146,26,0.2); display:flex; align-items:center; justify-content:center; font-size:1.1rem; flex-shrink:0; transition:all var(--csr-T); }
.csr-pillar:hover .csr-pillar-icon { background:var(--csr-gold); transform:scale(1.08); }
.csr-pillar-title { font-size:0.88rem; font-weight:700; color:var(--csr-text-1); margin-bottom:0.25rem; }
.csr-pillar-desc { font-size:0.8rem; color:var(--csr-text-3); line-height:1.7; }
@media(max-width:900px){ .csr-mission-grid { grid-template-columns:1fr; } }

/* Donations */
.csr-donations { background:var(--csr-brown); position:relative; overflow:hidden; padding:6rem 6%; }
.csr-donations-header { text-align:center; max-width:620px; margin:0 auto 4rem; }
.csr-donations-header .csr-section-title { color:#fff; }
.csr-donations-header .csr-section-desc { color:rgba(255,255,255,0.4); margin:0 auto; }
.csr-causes-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; margin-bottom:4rem; }
.csr-cause-card { background:rgba(255,255,255,0.04); border:1px solid rgba(201,146,26,0.12); border-radius:var(--csr-radius); padding:2rem; transition:all var(--csr-T); position:relative; overflow:hidden; }
.csr-cause-card:hover { border-color:rgba(201,146,26,0.35); background:rgba(255,255,255,0.06); transform:translateY(-3px); }
.csr-cause-card.featured { background:rgba(201,146,26,0.08); border-color:rgba(201,146,26,0.3); }
.csr-cause-badge { display:inline-block; font-size:0.6rem; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; background:var(--csr-gold); color:var(--csr-brown); padding:0.18rem 0.6rem; border-radius:10px; margin-bottom:1rem; }
.csr-cause-icon { font-size:2.2rem; margin-bottom:1rem; display:block; }
.csr-cause-title { font-family:'Playfair Display',serif; font-size:1.1rem; font-weight:700; color:#fff; margin-bottom:0.6rem; }
.csr-cause-desc { font-size:0.8rem; color:rgba(255,255,255,0.45); line-height:1.75; margin-bottom:1.4rem; }
.csr-cause-progress-wrap { margin-bottom:0.5rem; }
.csr-cause-progress-label { display:flex; justify-content:space-between; font-size:0.7rem; color:rgba(255,255,255,0.35); margin-bottom:0.4rem; }
.csr-cause-progress-label span:last-child { color:var(--csr-gold); }
.csr-cause-bar { height:3px; background:rgba(255,255,255,0.08); border-radius:2px; overflow:hidden; }
.csr-cause-fill { height:100%; background:linear-gradient(90deg,var(--csr-gold),var(--csr-gold-l)); border-radius:2px; transition:width 1.2s ease; }
@media(max-width:900px){ .csr-causes-grid { grid-template-columns:1fr; } }

/* Donation tiers */
.csr-tiers-title { font-family:'Playfair Display',serif; font-size:1.4rem; font-weight:700; color:#fff; text-align:center; margin-bottom:2rem; }
.csr-tiers-title em { font-style:italic; color:var(--csr-gold-l); }
.csr-tiers-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-bottom:2.5rem; }
.csr-tier { border:1.5px solid rgba(201,146,26,0.18); border-radius:var(--csr-radius); padding:1.6rem 1.2rem; text-align:center; cursor:pointer; transition:all var(--csr-T); background:rgba(255,255,255,0.03); position:relative; }
.csr-tier::after { content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:0; height:2px; background:var(--csr-gold); transition:width var(--csr-T); }
.csr-tier:hover, .csr-tier.selected { border-color:var(--csr-gold); background:rgba(201,146,26,0.08); }
.csr-tier:hover::after, .csr-tier.selected::after { width:60%; }
.csr-tier.popular { border-color:var(--csr-gold-l); background:rgba(201,146,26,0.1); }
.csr-tier-badge { position:absolute; top:-0.55rem; left:50%; transform:translateX(-50%); font-size:0.58rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; background:var(--csr-gold-l); color:var(--csr-brown); padding:0.12rem 0.7rem; border-radius:10px; white-space:nowrap; }
.csr-tier-amount { font-family:'Playfair Display',serif; font-size:1.8rem; font-weight:800; color:var(--csr-gold-l); margin-bottom:0.25rem; }
.csr-tier-label { font-size:0.72rem; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; color:rgba(255,255,255,0.35); margin-bottom:0.8rem; }
.csr-tier-perks { font-size:0.75rem; color:rgba(255,255,255,0.4); line-height:1.7; }
.csr-donation-cta-row { display:flex; align-items:center; gap:1rem; justify-content:center; flex-wrap:wrap; }
.csr-donation-input-wrap { display:flex; align-items:center; background:rgba(255,255,255,0.06); border:1.5px solid rgba(201,146,26,0.2); border-radius:var(--csr-radius-sm); overflow:hidden; }
.csr-donation-currency { padding:0 0.9rem; font-size:0.78rem; font-weight:700; color:var(--csr-gold); background:rgba(201,146,26,0.1); }
.csr-donation-input { background:transparent; border:none; outline:none; padding:0.7rem 0.8rem; font-family:'DM Sans',sans-serif; font-size:0.88rem; color:#fff; width:130px; }
.csr-impact-table { border:1px solid rgba(201,146,26,0.12); border-radius:var(--csr-radius); overflow:hidden; margin-top:3rem; }
.csr-it-header { background:rgba(201,146,26,0.08); padding:1rem 1.5rem; display:grid; grid-template-columns:1fr 2fr 1fr; gap:1rem; font-size:0.65rem; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:rgba(255,255,255,0.3); border-bottom:1px solid rgba(201,146,26,0.1); }
.csr-it-row { padding:1rem 1.5rem; display:grid; grid-template-columns:1fr 2fr 1fr; gap:1rem; align-items:center; border-bottom:1px solid rgba(255,255,255,0.04); transition:background var(--csr-T); }
.csr-it-row:last-child { border-bottom:none; }
.csr-it-row:hover { background:rgba(255,255,255,0.03); }
.csr-it-amount { font-family:'Playfair Display',serif; font-size:1rem; font-weight:700; color:var(--csr-gold-l); }
.csr-it-impact { font-size:0.82rem; color:rgba(255,255,255,0.55); line-height:1.5; }
.csr-it-badge { display:inline-flex; align-items:center; gap:0.25rem; font-size:0.68rem; font-weight:700; padding:0.2rem 0.55rem; border-radius:8px; }
.csr-it-badge.annual { background:rgba(39,174,96,0.15); color:#5dcc88; }
.csr-it-badge.monthly { background:rgba(201,146,26,0.15); color:var(--csr-gold-l); }
.csr-it-badge.once { background:rgba(255,255,255,0.07); color:rgba(255,255,255,0.45); }
@media(max-width:900px){ .csr-tiers-grid { grid-template-columns:1fr 1fr; } .csr-it-header, .csr-it-row { grid-template-columns:1fr 1fr; } }

/* Footer */
.csr-footer { background:var(--csr-brown); padding:3rem 6% 2rem; }
.csr-footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:3rem; margin-bottom:2.5rem; }
.csr-footer-brand { font-family:'Playfair Display',serif; font-size:1.3rem; font-weight:800; color:var(--csr-gold-l); margin-bottom:0.6rem; }
.csr-footer-brand em { font-style:italic; color:rgba(255,255,255,0.7); }
.csr-footer-tagline { font-family:'Cormorant Garamond',serif; font-size:0.9rem; font-style:italic; color:rgba(255,255,255,0.3); margin-bottom:1rem; }
.csr-footer-address { font-size:0.75rem; color:rgba(255,255,255,0.25); line-height:1.8; }
.csr-footer-col-title { font-size:0.63rem; font-weight:700; letter-spacing:0.18em; text-transform:uppercase; color:rgba(255,255,255,0.25); margin-bottom:0.8rem; }
.csr-footer-links { list-style:none; display:flex; flex-direction:column; gap:0.4rem; }
.csr-footer-links a { font-size:0.78rem; color:rgba(255,255,255,0.35); text-decoration:none; transition:color var(--csr-T); }
.csr-footer-links a:hover { color:var(--csr-gold-l); }
.csr-footer-bottom { border-top:1px solid rgba(255,255,255,0.05); padding-top:1.5rem; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; }
.csr-footer-copy { font-size:0.7rem; color:rgba(255,255,255,0.18); }
.csr-footer-legal { display:flex; gap:1.2rem; }
.csr-footer-legal a { font-size:0.7rem; color:rgba(255,255,255,0.22); text-decoration:none; transition:color var(--csr-T); }
.csr-footer-legal a:hover { color:var(--csr-gold); }
@media(max-width:1100px){ .csr-footer-grid { grid-template-columns:1fr 1fr; } }
@media(max-width:600px){ .csr-footer-grid { grid-template-columns:1fr; } .csr-nav .nav-links { display:none; } }

/* Toast */
.toast { position:fixed; bottom:2rem; right:2rem; background:var(--csr-brown); color:#fff; padding:1rem 1.5rem; border-radius:10px; font-size:0.82rem; font-weight:600; box-shadow:0 12px 40px rgba(0,0,0,0.25); border-left:3px solid var(--csr-gold); transform:translateX(140%); transition:transform 0.35s ease; z-index:9000; }
.toast.show { transform:translateX(0); }

/* ═══ PARTNERSHIPS PAGE ═══ */
.partner-intro { background:var(--csr-cream-d); padding:5rem 6%; position:relative; overflow:hidden; }
.partner-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:6rem; align-items:center; }
.partner-stat-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.pstat { background:var(--csr-surface); border:1px solid var(--csr-border); border-radius:var(--csr-radius); padding:1.4rem 1.5rem; transition:all var(--csr-T); }
.pstat:hover { border-color:rgba(201,146,26,0.3); box-shadow:0 8px 32px rgba(28,15,6,0.08); }
.pstat-num { font-family:'Playfair Display',serif; font-size:2rem; font-weight:800; color:var(--csr-gold); line-height:1; }
.pstat-label { font-size:0.72rem; font-weight:600; text-transform:uppercase; letter-spacing:0.1em; color:var(--csr-text-3); margin-top:0.25rem; }
.pstat-desc { font-size:0.78rem; color:var(--csr-text-3); margin-top:0.5rem; line-height:1.6; }
.partner-cta-note { font-size:0.8rem; color:var(--csr-text-3); font-style:italic; margin-top:1rem; padding-top:1rem; border-top:1px solid var(--csr-border); }
@media(max-width:900px){ .partner-intro-grid { grid-template-columns:1fr; } }

.delivery-sec { background:var(--csr-surface); padding:6rem 6%; position:relative; }
.delivery-sec::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:linear-gradient(90deg,var(--csr-gold),var(--csr-gold-l),var(--csr-gold)); }
.delivery-header { display:grid; grid-template-columns:1fr 1fr; gap:4rem; align-items:end; margin-bottom:4rem; }
.delivery-models { display:grid; grid-template-columns:repeat(3,1fr); gap:1.2rem; margin-bottom:3rem; }
.dm-card { border:1.5px solid var(--csr-border); border-radius:var(--csr-radius); padding:2rem 1.8rem; transition:all var(--csr-T); position:relative; overflow:hidden; background:var(--csr-cream); }
.dm-card::after { content:''; position:absolute; bottom:0; left:0; right:0; height:3px; background:linear-gradient(90deg,var(--csr-gold),var(--csr-gold-l)); transform:scaleX(0); transform-origin:left; transition:transform var(--csr-T); }
.dm-card:hover { border-color:rgba(201,146,26,0.3); box-shadow:0 12px 40px rgba(28,15,6,0.08); transform:translateY(-4px); }
.dm-card:hover::after { transform:scaleX(1); }
.dm-card.highlight { border-color:var(--csr-gold); background:var(--csr-gold-pale); }
.dm-card.highlight::after { transform:scaleX(1); }
.dm-number { font-family:'Playfair Display',serif; font-size:3rem; font-weight:900; font-style:italic; color:rgba(201,146,26,0.15); line-height:1; margin-bottom:0.5rem; }
.dm-icon { font-size:1.8rem; margin-bottom:0.8rem; }
.dm-title { font-family:'Playfair Display',serif; font-size:1rem; font-weight:700; color:var(--csr-text-1); margin-bottom:0.6rem; }
.dm-desc { font-size:0.8rem; color:var(--csr-text-3); line-height:1.75; margin-bottom:1.2rem; }
.dm-details { display:flex; flex-direction:column; gap:0.35rem; }
.dm-detail { display:flex; align-items:center; gap:0.4rem; font-size:0.75rem; color:var(--csr-text-2); }
.dm-detail::before { content:'✓'; color:var(--csr-gold); font-weight:700; font-size:0.8rem; }
.rev-split { display:grid; grid-template-columns:1fr 1fr 1fr; gap:1px; background:var(--csr-border); border-radius:12px; overflow:hidden; margin-top:2rem; border:1px solid var(--csr-border); }
.rev-cell { background:var(--csr-cream); padding:1.5rem 1.2rem; text-align:center; }
.rev-cell:nth-child(2) { background:var(--csr-gold-pale); }
.rev-pct { font-family:'Playfair Display',serif; font-size:1.8rem; font-weight:800; color:var(--csr-gold); }
.rev-label { font-size:0.68rem; font-weight:700; text-transform:uppercase; letter-spacing:0.1em; color:var(--csr-text-3); margin-top:0.25rem; }
.rev-sub { font-size:0.72rem; color:var(--csr-text-3); margin-top:0.3rem; }
@media(max-width:900px){ .delivery-models { grid-template-columns:1fr; } .delivery-header { grid-template-columns:1fr; } }

.investment-sec { background:var(--csr-brown); padding:6rem 6%; position:relative; overflow:hidden; }
.investment-sec .csr-section-title { color:#fff; }
.investment-sec .csr-section-desc { color:rgba(255,255,255,0.4); }
.inv-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; margin-top:3.5rem; }
.inv-card { background:rgba(255,255,255,0.03); border:1px solid rgba(201,146,26,0.15); border-radius:var(--csr-radius); padding:0; overflow:hidden; transition:all var(--csr-T); }
.inv-card:hover { border-color:rgba(201,146,26,0.4); transform:translateY(-5px); box-shadow:0 20px 60px rgba(0,0,0,0.3); }
.inv-card-top { padding:2rem 2rem 1.5rem; position:relative; }
.inv-card-top::after { content:''; position:absolute; bottom:0; left:2rem; right:2rem; height:1px; background:rgba(201,146,26,0.1); }
.inv-tier-badge { display:inline-flex; align-items:center; gap:0.3rem; font-size:0.6rem; font-weight:800; letter-spacing:0.15em; text-transform:uppercase; padding:0.2rem 0.7rem; border-radius:10px; margin-bottom:1.2rem; }
.badge-bronze { background:rgba(180,120,60,0.2); color:#D4945A; }
.badge-silver { background:rgba(180,180,200,0.15); color:#B8C4D4; }
.badge-gold { background:rgba(201,146,26,0.2); color:var(--csr-gold-l); }
.inv-amount { font-family:'Playfair Display',serif; font-size:1.9rem; font-weight:800; color:#fff; line-height:1; margin-bottom:0.3rem; }
.inv-period { font-size:0.72rem; color:rgba(255,255,255,0.3); font-weight:500; }
.inv-name { font-family:'Playfair Display',serif; font-size:0.95rem; font-weight:700; color:rgba(255,255,255,0.7); margin-top:0.8rem; }
.inv-card-bottom { padding:1.5rem 2rem 2rem; }
.inv-benefit { display:flex; align-items:flex-start; gap:0.6rem; margin-bottom:0.7rem; font-size:0.8rem; color:rgba(255,255,255,0.5); line-height:1.55; }
.inv-benefit-dot { width:5px; height:5px; border-radius:50%; background:var(--csr-gold); flex-shrink:0; margin-top:0.45rem; }
.inv-benefit strong { color:rgba(255,255,255,0.8); }
.roi-bar-wrap { margin-top:1.5rem; padding-top:1.5rem; border-top:1px solid rgba(201,146,26,0.1); }
.roi-label { display:flex; justify-content:space-between; font-size:0.68rem; font-weight:600; color:rgba(255,255,255,0.3); text-transform:uppercase; letter-spacing:0.1em; margin-bottom:0.45rem; }
.roi-bar { height:3px; background:rgba(255,255,255,0.06); border-radius:2px; overflow:hidden; }
.roi-fill { height:100%; background:linear-gradient(90deg,var(--csr-gold),var(--csr-gold-xl)); border-radius:2px; }
.inv-cta { margin-top:3.5rem; background:rgba(201,146,26,0.07); border:1px solid rgba(201,146,26,0.18); border-radius:var(--csr-radius); padding:2.5rem 3rem; display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap; color:rgba(255,255,255,0.95); }
.inv-cta-text .label { font-size:0.7rem; font-weight:700; letter-spacing:0.12em; text-transform:uppercase; color:var(--csr-gold-l); margin-bottom:0.35rem; }
.inv-cta-text .title { font-family:'Playfair Display',serif; font-size:1.35rem; font-weight:800; color:#fff; margin-bottom:0.5rem; line-height:1.2; }
.inv-cta-text .sub { font-size:0.88rem; color:rgba(255,255,255,0.75); line-height:1.6; max-width:42ch; }
@media(max-width:900px){ .inv-grid { grid-template-columns:1fr; } }

.supply-sec { background:var(--csr-cream); padding:6rem 6%; position:relative; }
.supply-layout { display:grid; grid-template-columns:5fr 4fr; gap:5rem; align-items:start; }
.contract-list { display:flex; flex-direction:column; gap:1rem; margin-top:2.5rem; }
.contract-item { border:1.5px solid var(--csr-border); border-radius:var(--csr-radius); overflow:hidden; cursor:pointer; transition:all var(--csr-T); }
.contract-item:hover, .contract-item.open { border-color:rgba(201,146,26,0.3); }
.contract-head { padding:1.4rem 1.8rem; display:flex; align-items:center; justify-content:space-between; background:var(--csr-surface); transition:background var(--csr-T); }
.contract-item.open .contract-head { background:var(--csr-gold-pale); }
.contract-head-left { display:flex; align-items:center; gap:1rem; }
.contract-head-icon { width:40px; height:40px; border-radius:9px; display:flex; align-items:center; justify-content:center; font-size:1.1rem; flex-shrink:0; background:var(--csr-gold-glow); border:1px solid rgba(201,146,26,0.15); }
.contract-item.open .contract-head-icon { background:var(--csr-gold); transform:scale(1.1); }
.contract-head-title { font-size:0.9rem; font-weight:700; color:var(--csr-text-1); }
.contract-head-sub { font-size:0.72rem; color:var(--csr-text-3); margin-top:0.1rem; }
.contract-head-arrow { font-size:1rem; color:var(--csr-text-3); transition:transform var(--csr-T); }
.contract-item.open .contract-head-arrow { transform:rotate(90deg); color:var(--csr-gold); }
.contract-body { max-height:0; overflow:hidden; transition:max-height 0.4s ease; }
.contract-item.open .contract-body { max-height:1200px; }
.contract-body-inner { padding:0 1.8rem 1.8rem; border-top:1px solid var(--csr-border); }
.contract-body-inner p { font-size:0.83rem; color:var(--csr-text-2); line-height:1.8; margin-top:1rem; margin-bottom:1rem; }
.contract-specs { display:grid; grid-template-columns:1fr 1fr; gap:0.6rem; }
.cspec { background:var(--csr-cream); border:1px solid var(--csr-border); border-radius:8px; padding:0.75rem 0.9rem; }
.cspec-label { font-size:0.63rem; font-weight:700; text-transform:uppercase; letter-spacing:0.1em; color:var(--csr-text-3); }
.cspec-val { font-size:0.85rem; font-weight:700; color:var(--csr-text-1); margin-top:0.15rem; }
.supply-form-box { background:var(--csr-brown); border-radius:var(--csr-radius); padding:2rem 1.75rem; position:sticky; top:90px; }
.supply-form-title { font-family:'Playfair Display',serif; font-size:1.1rem; font-weight:700; color:#fff; margin-bottom:0.3rem; }
.supply-form-sub { font-size:0.75rem; color:rgba(255,255,255,0.35); margin-bottom:1.5rem; line-height:1.6; }
.partnership-form { display:flex; flex-direction:column; gap:0; }
.form-err { color:#f88; font-size:0.85rem; margin-bottom:1rem; padding:0.5rem 0; }
.f-group { margin-bottom:1.1rem; }
.f-group:last-of-type { margin-bottom:0.25rem; }
.f-label { display:block; font-size:0.68rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:rgba(255,255,255,0.45); margin-bottom:0.45rem; }
.f-input, .f-select, .f-textarea { width:100%; box-sizing:border-box; background:rgba(255,255,255,0.14); border:1.5px solid rgba(255,255,255,0.2); border-radius:var(--csr-radius-sm); padding:0.72rem 1rem; font-family:'DM Sans',sans-serif; font-size:0.84rem; color:var(--csr-text-1); outline:none; transition:border-color var(--csr-T), background var(--csr-T); }
.f-input:focus, .f-select:focus, .f-textarea:focus { border-color:var(--csr-gold); background:rgba(255,255,255,0.2); }
.f-input::placeholder, .f-textarea::placeholder { color:var(--csr-text-3); }
.f-select { cursor:pointer; appearance:auto; }
.f-select option { background:var(--csr-surface); color:var(--csr-text-1); }
.f-textarea { resize:vertical; min-height:96px; line-height:1.6; }
.f-row { display:grid; gap:0.9rem; }
.f-row-2 { grid-template-columns:1fr 1fr; }
.f-submit { width:100%; background:var(--csr-gold); color:#fff; border:none; border-radius:var(--csr-radius-sm); padding:0.9rem 1rem; font-family:'DM Sans',sans-serif; font-size:0.85rem; font-weight:700; cursor:pointer; transition:all var(--csr-T); margin-top:0.75rem; }
.f-submit:hover { background:var(--csr-gold-l); transform:translateY(-1px); }
.f-note { font-size:0.7rem; color:rgba(255,255,255,0.25); text-align:center; margin-top:1rem; line-height:1.65; }
.f-note a { color:rgba(201,146,26,0.75); text-decoration:underline; }
@media(max-width:900px){ .supply-layout { grid-template-columns:1fr; gap:3rem; } .supply-form-box { position:static; padding:2rem 1.5rem; } }
@media(max-width:640px){
  .supply-form-box { padding:1.75rem 1.25rem; }
  .f-row-2 { grid-template-columns:1fr; }
  .f-group { margin-bottom:1rem; }
}

.partner-marquee { background:var(--csr-cream-d); padding:2.5rem 0; overflow:hidden; border-top:1px solid var(--csr-border); border-bottom:1px solid var(--csr-border); }
.marquee-label { text-align:center; font-size:0.64rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:var(--csr-text-3); margin-bottom:1.5rem; }
.marquee-track { display:flex; gap:3rem; animation:marquee 20s linear infinite; width:max-content; }
.marquee-item { display:flex; align-items:center; gap:0.5rem; padding:0.6rem 1.4rem; background:var(--csr-surface); border:1px solid var(--csr-border); border-radius:8px; font-size:0.75rem; font-weight:700; color:var(--csr-text-2); white-space:nowrap; box-shadow:0 2px 8px rgba(28,15,6,0.04); }
@keyframes marquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

.stories-sec { background:var(--csr-surface); padding:6rem 6%; }
.stories-header { display:flex; align-items:end; justify-content:space-between; margin-bottom:3.5rem; gap:2rem; flex-wrap:wrap; }
.stories-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.story-card { border:1px solid var(--csr-border); border-radius:var(--csr-radius); overflow:hidden; transition:all var(--csr-T); }
.story-card:hover { box-shadow:0 12px 40px rgba(28,15,6,0.09); transform:translateY(-3px); border-color:rgba(201,146,26,0.25); }
.story-card-img { height:180px; background:var(--csr-cream-d); position:relative; overflow:hidden; }
.story-card-img img { width:100%; height:100%; object-fit:cover; transition:transform 0.5s ease; }
.story-card:hover .story-card-img img { transform:scale(1.06); }
.story-tag { position:absolute; top:1rem; left:1rem; font-size:0.6rem; font-weight:800; letter-spacing:0.12em; text-transform:uppercase; padding:0.2rem 0.65rem; border-radius:8px; }
.tag-delivery { background:rgba(41,128,185,0.9); color:#fff; }
.tag-supply { background:rgba(201,146,26,0.9); color:var(--csr-brown); }
.tag-invest { background:rgba(39,174,96,0.9); color:#fff; }
.story-card-body { padding:1.4rem 1.5rem; }
.story-org { font-size:0.68rem; font-weight:700; text-transform:uppercase; letter-spacing:0.1em; color:var(--csr-gold); margin-bottom:0.4rem; }
.story-title { font-family:'Playfair Display',serif; font-size:1rem; font-weight:700; color:var(--csr-text-1); margin-bottom:0.6rem; line-height:1.3; }
.story-desc { font-size:0.78rem; color:var(--csr-text-3); line-height:1.7; }
@media(max-width:900px){ .stories-grid { grid-template-columns:1fr; } }

.cta-strip { background:var(--csr-gold); padding:4rem 6%; display:flex; align-items:center; justify-content:space-between; gap:2rem; flex-wrap:wrap; }
.cta-strip-text .overline { font-size:0.65rem; font-weight:700; letter-spacing:0.2em; text-transform:uppercase; color:rgba(28,15,6,0.5); margin-bottom:0.4rem; }
.cta-strip-text .title { font-family:'Playfair Display',serif; font-size:1.8rem; font-weight:800; color:var(--csr-brown); }
.cta-strip-text .title em { font-style:italic; }
.cta-strip-text .sub { font-size:0.85rem; color:rgba(28,15,6,0.55); margin-top:0.3rem; }
.btn-dark { background:var(--csr-brown); color:#fff; padding:0.8rem 1.8rem; border-radius:var(--csr-radius-sm); font-family:'DM Sans',sans-serif; font-size:0.82rem; font-weight:700; text-decoration:none; display:inline-flex; align-items:center; gap:0.5rem; transition:all var(--csr-T); border:none; cursor:pointer; }
.btn-dark:hover { background:var(--csr-brown-m); transform:translateY(-2px); box-shadow:0 6px 24px rgba(28,15,6,0.3); }
