/* AK Investment — 2026 redesign (purple/Inter design system) */
/* Scoped to pages using layouts/redesign.blade.php only. Does not touch the legacy Bootstrap site styles. */

.ak-rd { background: oklch(98.5% 0.004 90); color: oklch(20% 0.03 322); font-family: "Inter", -apple-system, "Helvetica Neue", Arial, sans-serif; overflow-x: hidden; }
.ak-rd a { color: oklch(40% 0.1 322); text-decoration: none; }
.ak-rd a:hover { color: oklch(30% 0.1 322); }
.ak-rd img { max-width: 100%; }

@keyframes akFloatA{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-14px,0)}}
@keyframes akFloatB{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,12px,0)}}
@keyframes akShadowA{0%,100%{transform:scaleX(1);opacity:.30}50%{transform:scaleX(.94);opacity:.20}}
@keyframes akShadowB{0%,100%{transform:scaleX(1);opacity:.26}50%{transform:scaleX(1.05);opacity:.32}}
@keyframes akSheen{0%{transform:translateX(-120%) skewX(-18deg)}55%,100%{transform:translateX(320%) skewX(-18deg)}}
@keyframes akDraw{0%{stroke-dashoffset:520}70%,100%{stroke-dashoffset:0}}
@keyframes akRise{0%{transform:scaleY(.15);opacity:.4}60%,100%{transform:scaleY(1);opacity:1}}
@keyframes akGlow{0%,100%{opacity:.45}50%{opacity:.75}}
@keyframes akDot{0%,100%{opacity:.35}50%{opacity:1}}

/* Header */
.ak-rd-header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:22px 64px; position: sticky; top:0; background: oklch(98.5% 0.004 90 / 0.92); backdrop-filter: blur(8px); z-index: 50; border-bottom: 1px solid transparent; transition: border-color 0.2s ease, box-shadow 0.2s ease; }
.ak-rd-header.scrolled { border-bottom-color: oklch(90% 0.01 300); box-shadow: 0 2px 8px rgba(0,0,0,0.06); }
.ak-rd-header .ak-rd-logo img { height:40px; display:block; }
.ak-rd-nav { display:flex; align-items:center; gap:28px; font-size:14px; font-weight:600; color:oklch(28% 0.04 322); }
.ak-rd-nav a.active { color: oklch(24% 0.07 322); border-bottom: 2px solid oklch(24% 0.07 322); padding-bottom: 4px; }
.ak-rd-header-right { display:flex; align-items:center; gap:12px; }
.ak-rd-login-btn { padding:13px 30px; background:oklch(24% 0.07 322); color:oklch(99% 0.003 90) !important; border-radius:999px; font-size:14px; font-weight:700; white-space:nowrap; }
.ak-rd-burger { display:none; flex-direction:column; justify-content:center; gap:5px; width:38px; height:38px; background:none; border:none; cursor:pointer; padding:0; }
.ak-rd-burger span { display:block; width:100%; height:2px; background:oklch(24% 0.07 322); border-radius:2px; }

/* Full-screen mobile nav overlay */
.ak-rd-mobile-menu { display:none; position:fixed; inset:0; z-index:200; background:oklch(24% 0.07 322); flex-direction:column; align-items:center; justify-content:center; gap:28px; }
.ak-rd-mobile-menu.open { display:flex; }
.ak-rd-mobile-menu a { color:oklch(98% 0.005 90); font-size:24px; font-weight:700; border-bottom:none; padding:0; }
.ak-rd-mobile-close { position:absolute; top:20px; right:20px; width:44px; height:44px; border:none; border-radius:50%; background:oklch(30% 0.08 322); color:#fff; font-size:18px; cursor:pointer; }

/* CTA banner (before footer) */
.ak-rd-cta { margin:0 64px 64px; padding:96px 64px; text-align:center; background:oklch(24% 0.07 322); border-radius:36px; color:oklch(98% 0.005 90); }
.ak-rd-cta h2 { font-size:50px; font-weight:700; letter-spacing:-0.02em; margin:0 auto 20px; line-height:1.08; }
.ak-rd-cta p { font-size:17px; font-weight:500; color:oklch(80% 0.02 300); max-width:520px; margin:0 auto 40px; line-height:1.55; }
.ak-rd-cta .ak-rd-cta-actions { display:inline-flex; gap:16px; flex-wrap: wrap; justify-content: center; }
.ak-rd-btn-light { display:inline-block; padding:19px 38px; background:oklch(98% 0.005 90); color:oklch(24% 0.07 322) !important; border-radius:999px; font-size:16px; font-weight:700; }
.ak-rd-btn-outline-light { display:inline-block; padding:19px 38px; border:2px solid oklch(98% 0.005 90 / 0.3); border-radius:999px; font-size:16px; font-weight:700; color:oklch(98% 0.005 90) !important; }
.ak-rd-btn-dark { display:inline-block; padding:19px 38px; background:oklch(24% 0.07 322); color:oklch(99% 0.003 90) !important; border-radius:999px; font-size:16px; font-weight:700; }
.ak-rd-btn-outline-dark { display:inline-block; padding:19px 38px; background:transparent; border:2px solid oklch(24% 0.07 322 / 0.25); border-radius:999px; font-size:16px; font-weight:700; color:oklch(24% 0.07 322) !important; }

/* Footer */
.ak-rd-footer-grid { padding:0 64px 40px; display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:48px; }
.ak-rd-footer-grid h5 { font-size:13px; font-weight:700; letter-spacing:0.06em; color:oklch(30% 0.03 300); margin-bottom:18px; text-transform:uppercase; }
.ak-rd-footer-links { display:flex; flex-direction:column; gap:12px; font-size:14px; font-weight:600; color:oklch(45% 0.02 300); }
.ak-rd-footer-bottom { padding:24px 64px; border-top:1px solid oklch(90% 0.01 300); font-size:12.5px; font-weight:600; color:oklch(55% 0.02 300); display:flex; justify-content:space-between; flex-wrap: wrap; gap: 8px; }

/* Generic responsive grids used across redesign pages */
.ak-rd-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.ak-rd-grid-3 { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:22px; }
.ak-rd-grid-4 { display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:22px; }
.ak-rd-section { padding:0 64px 110px; }

/* Testimonials: horizontal scroll, 3 cards per screen, snap-aligned */
.ak-rd-testi-scroll { display:flex; gap:22px; overflow-x:auto; padding-bottom:14px; scroll-snap-type:x proximity; scrollbar-width:thin; scrollbar-color:oklch(78% 0.05 322) transparent; }
.ak-rd-testi-scroll::-webkit-scrollbar { height:7px; }
.ak-rd-testi-scroll::-webkit-scrollbar-track { background:transparent; }
.ak-rd-testi-scroll::-webkit-scrollbar-thumb { background:oklch(85% 0.04 322); border-radius:10px; }
.ak-rd-testi-card { flex:0 0 calc((100% - 44px) / 3); scroll-snap-align:start; }
.ak-rd-testi-avatar { width:46px; height:46px; border-radius:50%; flex-shrink:0; object-fit:cover; }

/* ---- Responsive ---- */
@media (max-width: 1100px) {
  .ak-rd-header, .ak-rd-section, .ak-rd-cta, .ak-rd-footer-grid, .ak-rd-footer-bottom { padding-left:32px !important; padding-right:32px !important; }
  .ak-rd-grid-4 { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  .ak-rd-footer-grid { grid-template-columns: 1fr 1fr !important; }
}

@media (max-width: 1023px) {
  .ak-rd-nav { display:none !important; }
  .ak-rd-burger { display:flex !important; }
  .ak-rd-grid-2, .ak-rd-grid-3 { grid-template-columns: 1fr !important; }
  .ak-rd-testi-card { flex-basis:85% !important; }
  .ak-rd-hero-visual { display:none !important; }
  .ak-rd-hero-copy { max-width:100% !important; }
  .ak-rd-header { padding-top:18px !important; padding-bottom:18px !important; }
  .ak-rd-header .ak-rd-logo img { height:34px !important; }
}

@media (max-width: 767px) {
  .ak-rd-header { padding-top:14px !important; padding-bottom:14px !important; padding-left:16px !important; padding-right:16px !important; }
  .ak-rd-header .ak-rd-logo img { height:30px !important; }
  .ak-rd-login-btn { padding:10px 18px !important; font-size:13px !important; }
}

@media (max-width: 640px) {
  .ak-rd-header, .ak-rd-section, .ak-rd-cta, .ak-rd-footer-grid, .ak-rd-footer-bottom { padding-left:20px !important; padding-right:20px !important; }
  .ak-rd-grid-4, .ak-rd-footer-grid { grid-template-columns: 1fr !important; }
  .ak-rd-cta { margin-left:20px !important; margin-right:20px !important; padding:56px 28px !important; }
  .ak-rd-cta h2 { font-size:34px !important; }
  .ak-rd-hero-title { font-size:44px !important; }
  .ak-rd-hero-lead { font-size:17px !important; }
  .ak-rd-h2 { font-size:32px !important; }
}

/* ---- Inner-page building blocks (Research, About, Blogs, Contact, Solutions, Equity Baskets, Wealth Management, Products) ---- */

.ak-rd-breadcrumb { padding:36px 64px 0; font-size:13.5px; font-weight:600; color:oklch(52% 0.02 300); }
.ak-rd-breadcrumb a { color:inherit; }
.ak-rd-breadcrumb .current { color:oklch(24% 0.07 322); }

.ak-rd-hero2 { position:relative; padding:60px 64px 80px; overflow:hidden; }
.ak-rd-hero2-scene { position:absolute; right:20px; top:0; width:440px; height:400px; z-index:1; }
.ak-rd-hero2-content { position:relative; z-index:2; max-width:780px; }
.ak-rd-badge { display:inline-block; padding:9px 20px; background:oklch(93% 0.03 322); border-radius:999px; font-size:13px; font-weight:700; color:oklch(40% 0.1 322); letter-spacing:0.04em; margin-bottom:28px; }
.ak-rd-hero2-title { font-size:56px; font-weight:600; letter-spacing:-0.03em; line-height:1.05; margin-bottom:24px; }
.ak-rd-hero2-desc { font-size:19px; font-weight:500; color:oklch(40% 0.02 300); line-height:1.6; }

.ak-rd-step-card { display:grid; grid-template-columns:90px 1fr; gap:32px; padding:36px 40px; background:oklch(95.5% 0.015 322); border-radius:28px; align-items:flex-start; }
.ak-rd-step-num { font-size:34px; font-weight:900; color:oklch(52% 0.13 322); letter-spacing:-0.02em; }
.ak-rd-step-title-row { display:flex; align-items:center; gap:12px; margin-bottom:10px; }
.ak-rd-step-title { font-size:21px; font-weight:800; letter-spacing:-0.01em; }
.ak-rd-step-desc { font-size:15px; font-weight:500; color:oklch(40% 0.02 300); line-height:1.65; max-width:820px; }

.ak-rd-pillar { padding:56px; border-radius:32px; }
.ak-rd-pillar-head { display:flex; gap:20px; align-items:baseline; margin-bottom:20px; }
.ak-rd-pillar-n { font-size:15px; font-weight:900; }
.ak-rd-pillar-title { font-size:32px; font-weight:900; letter-spacing:-0.02em; }
.ak-rd-pillar-sub { font-size:16px; font-weight:600; margin-bottom:24px; }
.ak-rd-pillar-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:24px; }
.ak-rd-pillar-item { font-size:14.5px; font-weight:500; line-height:1.65; }

.ak-rd-feature-item { display:flex; gap:11px; align-items:flex-start; padding:16px 18px; background:oklch(95.5% 0.015 322); border-radius:16px; }
.ak-rd-feature-check { min-width:20px; height:20px; border-radius:50%; background:oklch(24% 0.07 322); color:oklch(98% 0.005 90); display:flex; align-items:center; justify-content:center; font-size:10px; font-weight:800; flex-shrink:0; }
.ak-rd-feature-text { font-size:13px; font-weight:500; color:oklch(30% 0.03 322); line-height:1.5; }

.ak-rd-pricing-card { padding:40px; background:oklch(24% 0.07 322); border-radius:32px; color:oklch(98% 0.005 90); text-align:center; }
.ak-rd-pricing-card .price { font-size:44px; font-weight:900; letter-spacing:-0.02em; margin-bottom:6px; }
.ak-rd-pricing-card .subscribe-btn { display:block; padding:16px; background:oklch(98% 0.005 90); color:oklch(24% 0.07 322) !important; border-radius:999px; font-size:15px; font-weight:700; margin-bottom:14px; }

.ak-rd-basket-card { display:block; padding:36px 30px; background:oklch(99.3% 0.002 90); border:1px solid oklch(90% 0.01 300); border-radius:28px; color:oklch(20% 0.03 322) !important; }
.ak-rd-basket-badge { font-size:12px; font-weight:700; letter-spacing:0.06em; color:oklch(52% 0.13 322); text-transform:uppercase; padding:6px 14px; background:oklch(93% 0.03 322); border-radius:999px; display:inline-block; }

.ak-rd-blog-card img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:20px; margin-bottom:20px; display:block; }
.ak-rd-blog-card-placeholder { width:100%; aspect-ratio:16/10; border-radius:20px; margin-bottom:20px; display:flex; align-items:center; justify-content:center; background:linear-gradient(135deg, oklch(28% 0.09 322), oklch(20% 0.06 322)); color:oklch(98% 0.005 90 / 0.85); }
.ak-rd-blog-tag-row { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.ak-rd-blog-tag { font-size:12.5px; font-weight:700; letter-spacing:0.04em; color:oklch(52% 0.13 322); margin-bottom:0; text-transform:uppercase; }
.ak-rd-blog-substack-pill { display:inline-flex; align-items:center; gap:5px; font-size:11.5px; font-weight:700; letter-spacing:0.02em; color:oklch(45% 0.02 300); background:oklch(95.5% 0.015 322); border-radius:999px; padding:4px 10px 4px 8px; flex-shrink:0; }
.ak-rd-blog-title { font-size:19px; font-weight:800; line-height:1.4; letter-spacing:-0.01em; }

.ak-rd-substack-embed-wrap { background:oklch(99.3% 0.002 90); border:1px solid oklch(90% 0.01 300); border-radius:24px; padding:28px; max-width:520px; margin:0 auto; display:flex; flex-direction:column; align-items:center; }
.ak-rd-substack-embed-wrap .substack-post-embed { font-family:inherit; width:100%; }
.ak-rd-substack-embed-label { display:flex; align-items:center; gap:8px; font-size:12.5px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; color:oklch(52% 0.13 322); margin-bottom:16px; align-self:flex-start; }

@media (max-width:1023px) {
  .ak-rd-substack-embed-wrap { max-width:100%; }
}

.ak-rd-team-card { background:oklch(100% 0 0); border:1px solid oklch(92% 0.012 322); border-radius:28px; overflow:hidden; box-shadow:0 18px 40px oklch(24% 0.07 322 / 0.07); text-align:left; }
.ak-rd-team-card-photo { position:relative; width:100%; aspect-ratio:4/5; background:oklch(95.5% 0.015 322); }
.ak-rd-team-card-photo img { width:100%; height:100%; object-fit:cover; display:block; }
.ak-rd-team-card-wash { position:absolute; inset:0; pointer-events:none; background:linear-gradient(180deg, oklch(58% 0.14 322 / 0.55) 0%, oklch(38% 0.11 322 / 0.75) 55%, oklch(24% 0.07 322 / 0.95) 100%); mix-blend-mode:multiply; opacity:0.45; }
.ak-rd-team-card-badge { position:absolute; top:18px; left:18px; width:44px; height:44px; border-radius:14px; background:oklch(100% 0 0 / 0.94); box-shadow:0 4px 14px oklch(24% 0.07 322 / 0.18); display:flex; align-items:center; justify-content:center; pointer-events:none; }
.ak-rd-team-card-badge img { width:30px; height:30px; object-fit:contain; mix-blend-mode:multiply; }
.ak-rd-team-card-info { padding:26px 28px 28px; display:flex; align-items:flex-end; justify-content:space-between; gap:16px; }
.ak-rd-team-card-name { font-size:22px; font-weight:800; letter-spacing:-0.01em; margin-bottom:5px; }
.ak-rd-team-card-title { font-size:14px; font-weight:600; color:oklch(50% 0.02 300); }
.ak-rd-team-card-linkedin { flex-shrink:0; width:38px; height:38px; border-radius:12px; background:oklch(95.5% 0.015 322); color:oklch(24% 0.07 322); display:flex; align-items:center; justify-content:center; transition:background 0.18s ease, color 0.18s ease; }
.ak-rd-team-card-linkedin:hover { background:oklch(24% 0.07 322); color:oklch(99% 0.003 90) !important; }

@media (max-width: 1023px) {
  .ak-rd-hero2-scene { display:none !important; }
  .ak-rd-hero2-content { max-width:100% !important; }
  .ak-rd-step-card { grid-template-columns:1fr !important; gap:12px !important; }
  .ak-rd-pillar-grid { grid-template-columns:1fr !important; }
  [style*="grid-template-columns:1.3fr 0.9fr"] { grid-template-columns:1fr !important; }
  [style*="grid-template-columns:1.1fr 0.9fr"] { grid-template-columns:1fr !important; }
}

@media (max-width: 480px) {
  [style*="grid-template-columns:repeat(4, minmax(0,1fr))"] { grid-template-columns:repeat(2, minmax(0,1fr)) !important; row-gap:18px !important; }
}

@media (max-width: 640px) {
  .ak-rd-breadcrumb { padding-left:20px !important; padding-right:20px !important; }
  .ak-rd-hero2-title { font-size:32px !important; }
  .ak-rd-hero2-desc { font-size:16px !important; }
  .ak-rd-pillar { padding:28px !important; }
  .ak-rd-pillar-title { font-size:24px !important; }
}

/* Split panel: copy on the left, 2x2 stat/step grid on the right — used by
   "Why Choose Us" (home), "A disciplined process" (wealth management) and
   "We are committed to delivering the best" (about) */
.ak-rd-panel { margin:0 64px 110px; padding:80px; border-radius:36px; display:grid; grid-template-columns:0.9fr 1.1fr; gap:72px; align-items:center; }
.ak-rd-panel-grid { display:grid; grid-template-columns:1fr 1fr; gap:30px; }

@media (max-width: 1023px) {
  .ak-rd-panel { grid-template-columns:1fr !important; padding:48px !important; margin-left:32px !important; margin-right:32px !important; gap:36px !important; }
}
@media (max-width: 640px) {
  .ak-rd-panel { padding:32px 24px !important; margin-left:20px !important; margin-right:20px !important; margin-bottom:56px !important; border-radius:28px !important; gap:28px !important; }
  .ak-rd-panel-grid { grid-template-columns:1fr !important; gap:22px !important; }
}

/* Large fixed-padding cards elsewhere on the site — shrink on small screens
   so text can't push past the card edge (Two Pillars, Mission/Vision,
   Solutions cards, Contact "Get in touch" card) */
@media (max-width: 640px) {
  .ak-rd-card-lg { padding:28px 22px !important; }
}

/* ---- Shared full-page loader (growth-bars motif, see partials/loader.blade.php) ---- */
.ak-loader { position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center; background:#faf9f7; transition:opacity .45s ease, visibility .45s ease; }
.ak-loader.ak-loader-hide { opacity:0; visibility:hidden; pointer-events:none; }
.ak-loader-inner { display:flex; flex-direction:column; align-items:center; gap:26px; }
.ak-loader-logo { height:38px; width:auto; opacity:.92; }
.ak-loader-bars { display:flex; align-items:flex-end; gap:7px; height:42px; }
.ak-loader-bars span { width:8px; border-radius:3px; background:linear-gradient(180deg,#7a4a78,#3b183d); transform-origin:bottom; animation:akLoaderRise 1.1s ease-in-out infinite; }
.ak-loader-bars span:nth-child(1) { height:40%; animation-delay:0s; }
.ak-loader-bars span:nth-child(2) { height:65%; animation-delay:.1s; }
.ak-loader-bars span:nth-child(3) { height:100%; animation-delay:.2s; }
.ak-loader-bars span:nth-child(4) { height:55%; animation-delay:.3s; }
.ak-loader-bars span:nth-child(5) { height:80%; animation-delay:.4s; }
@keyframes akLoaderRise { 0%,100% { transform:scaleY(.35); opacity:.55; } 50% { transform:scaleY(1); opacity:1; } }
html.ak-loading { overflow:hidden; }

/* ---- Free Portfolio Review: floating action button + lead modal ---- */
.ak-rd-review-fab { position:fixed; right:32px; bottom:32px; z-index:90; display:flex; align-items:center; gap:10px; padding:16px 28px; background:oklch(24% 0.07 322); color:oklch(99% 0.003 90); border:none; border-radius:999px; font-family:inherit; font-size:15px; font-weight:700; box-shadow:0 12px 28px oklch(24% 0.07 322 / 0.35); cursor:pointer; }
.ak-rd-review-fab:hover { background:oklch(20% 0.07 322); }

.ak-rd-review-backdrop { position:fixed; inset:0; z-index:300; background:oklch(15% 0.03 322 / 0.55); backdrop-filter:blur(4px); display:none; align-items:center; justify-content:center; padding:24px; }
.ak-rd-review-backdrop.open { display:flex; }
.ak-rd-review-card { position:relative; width:100%; max-width:560px; max-height:90vh; overflow-y:auto; background:oklch(99.3% 0.002 90); border-radius:32px; padding:52px 48px; }
.ak-rd-review-close { position:absolute; top:18px; right:18px; width:36px; height:36px; border-radius:50%; border:none; background:oklch(93% 0.03 322); color:oklch(24% 0.07 322); font-size:15px; cursor:pointer; }

.ak-rd-review-eyebrow { font-size:12.5px; font-weight:700; letter-spacing:0.08em; color:oklch(52% 0.13 322); margin-bottom:14px; }
.ak-rd-review-title { font-size:30px; font-weight:900; letter-spacing:-0.02em; line-height:1.15; margin-bottom:12px; color:oklch(18% 0.04 322); }
.ak-rd-review-desc { font-size:14.5px; font-weight:500; color:oklch(45% 0.02 300); line-height:1.6; margin-bottom:28px; }

.ak-rd-review-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:28px; }
.ak-rd-review-field { display:flex; flex-direction:column; gap:8px; }
.ak-rd-review-field-full { grid-column:1 / -1; }
.ak-rd-review-label { font-size:12.5px; font-weight:700; color:oklch(35% 0.03 300); letter-spacing:0.02em; }
.ak-rd-review-input { padding:13px 16px; border-radius:12px; border:1.5px solid oklch(88% 0.02 300); font-size:14.5px; font-weight:500; font-family:inherit; color:oklch(20% 0.03 322); background:oklch(99.5% 0.001 90); outline:none; }
.ak-rd-review-input:focus { border-color:oklch(24% 0.07 322 / 0.5); }

.ak-rd-review-chips { display:flex; flex-wrap:wrap; gap:10px; }
.ak-rd-review-chip { padding:10px 18px; border-radius:999px; font-size:13.5px; font-weight:700; cursor:pointer; border:2px solid oklch(88% 0.02 300); background:oklch(99% 0.003 90); color:oklch(35% 0.02 300); user-select:none; }
.ak-rd-review-chip.active { border-color:oklch(24% 0.07 322); background:oklch(24% 0.07 322); color:oklch(98% 0.005 90); }

.ak-rd-review-submit { width:100%; padding:17px; background:oklch(24% 0.07 322); color:oklch(99% 0.003 90); border:none; border-radius:999px; font-family:inherit; font-size:15.5px; font-weight:700; cursor:pointer; }
.ak-rd-review-submit:disabled { opacity:0.6; cursor:default; }

.ak-rd-review-thankyou { display:none; text-align:center; padding:24px 0 12px; flex-direction:column; align-items:center; gap:16px; }
.ak-rd-review-thankyou.show { display:flex; }
.ak-rd-review-thankyou-icon { width:64px; height:64px; border-radius:50%; background:oklch(93% 0.03 322); display:flex; align-items:center; justify-content:center; color:oklch(24% 0.07 322); }
.ak-rd-review-thankyou-title { font-size:22px; font-weight:900; color:oklch(18% 0.04 322); }
.ak-rd-review-thankyou-desc { font-size:15px; font-weight:500; color:oklch(45% 0.02 300); line-height:1.6; max-width:380px; }

@media (max-width:640px) {
  .ak-rd-review-fab { right:16px; bottom:20px; padding:14px 18px; font-size:13.5px; }
  .ak-rd-review-card { padding:32px 22px; border-radius:24px; }
  .ak-rd-review-grid { grid-template-columns:1fr; }
}

/* ---- Legal / policy pages (Terms, Privacy, Refund, Disclaimer, etc.) ---- */
.ak-rd-legal-card { background:oklch(99.3% 0.002 90); border:1px solid oklch(90% 0.01 300); border-radius:28px; padding:56px; }
.ak-rd-legal-list { display:flex; flex-direction:column; list-style:none; padding:0; margin:0; }
.ak-rd-legal-item { display:grid; grid-template-columns:40px 1fr; gap:20px; padding:26px 0; border-bottom:1px solid oklch(92% 0.012 322); }
.ak-rd-legal-item:first-child { padding-top:0; }
.ak-rd-legal-item:last-child { padding-bottom:0; border-bottom:none; }
.ak-rd-legal-num { font-size:15px; font-weight:800; color:oklch(52% 0.13 322); }
.ak-rd-legal-text { font-size:15px; font-weight:500; color:oklch(30% 0.03 322); line-height:1.7; }

@media (max-width:640px) {
  .ak-rd-legal-card { padding:28px 22px !important; }
  .ak-rd-legal-item { grid-template-columns:28px 1fr !important; gap:14px !important; padding:20px 0 !important; }
}

/* ---- Single blog / article detail page ---- */
.ak-rd-blog-detail { display:grid; grid-template-columns:1.5fr 1fr; gap:56px; align-items:start; }
.ak-rd-blog-detail-media { width:100%; object-fit:cover; border-radius:24px; display:block; margin-bottom:32px; }
.ak-rd-blog-detail-title { font-size:38px; font-weight:800; letter-spacing:-0.02em; line-height:1.2; margin-bottom:28px; }
.ak-rd-blog-sidebar { position:sticky; top:100px; display:flex; flex-direction:column; gap:32px; }

.ak-rd-prose { font-size:15.5px; font-weight:500; color:oklch(30% 0.03 322); line-height:1.85; }
.ak-rd-prose p { margin:0 0 20px; }
.ak-rd-prose h1, .ak-rd-prose h2, .ak-rd-prose h3, .ak-rd-prose h4 { font-weight:800; letter-spacing:-0.01em; color:oklch(18% 0.04 322); margin:36px 0 16px; line-height:1.3; }
.ak-rd-prose h1 { font-size:30px; }
.ak-rd-prose h2 { font-size:25px; }
.ak-rd-prose h3 { font-size:20px; }
.ak-rd-prose h4 { font-size:17px; }
.ak-rd-prose ul, .ak-rd-prose ol { margin:0 0 20px; padding-left:22px; }
.ak-rd-prose li { margin-bottom:8px; }
.ak-rd-prose a { color:oklch(40% 0.1 322); text-decoration:underline; }
.ak-rd-prose img { max-width:100%; height:auto; border-radius:16px; margin:8px 0 24px; display:block; }
.ak-rd-prose blockquote { margin:24px 0; padding:20px 24px; border-left:3px solid oklch(24% 0.07 322); background:oklch(95.5% 0.015 322); border-radius:0 16px 16px 0; font-style:italic; }
.ak-rd-prose strong, .ak-rd-prose b { color:oklch(18% 0.04 322); }
.ak-rd-prose table { width:100%; border-collapse:collapse; margin:0 0 24px; font-size:14px; }
.ak-rd-prose table td, .ak-rd-prose table th { border:1px solid oklch(90% 0.01 300); padding:10px 12px; text-align:left; }

.ak-rd-social-row { display:flex; gap:12px; }
.ak-rd-social-icon { width:42px; height:42px; border-radius:12px; background:oklch(95.5% 0.015 322); color:oklch(24% 0.07 322); display:flex; align-items:center; justify-content:center; flex-shrink:0; transition:background 0.18s ease, color 0.18s ease; }
.ak-rd-social-icon:hover { background:oklch(24% 0.07 322); color:oklch(99% 0.003 90) !important; }

@media (max-width:1023px) {
  .ak-rd-blog-detail { grid-template-columns:1fr !important; gap:40px !important; }
  .ak-rd-blog-sidebar { position:static !important; }
}
@media (max-width:640px) {
  .ak-rd-blog-detail-title { font-size:28px !important; }
}

/* ---- Events ---- */
.ak-rd-event-card { color:inherit; display:block; }
.ak-rd-event-media-wrap { position:relative; margin-bottom:20px; }
.ak-rd-event-media-wrap img { width:100%; aspect-ratio:16/10; object-fit:cover; border-radius:20px; display:block; }
.ak-rd-event-date-badge { position:absolute; top:14px; left:14px; background:oklch(99.3% 0.002 90); border-radius:14px; padding:8px 12px; text-align:center; line-height:1.1; box-shadow:0 6px 18px rgba(30,8,26,0.14); }
.ak-rd-event-date-badge .d { display:block; font-size:18px; font-weight:900; color:oklch(24% 0.07 322); }
.ak-rd-event-date-badge .m { display:block; font-size:10.5px; font-weight:700; letter-spacing:0.04em; color:oklch(52% 0.13 322); text-transform:uppercase; }

.ak-rd-event-facts { display:flex; flex-direction:column; gap:12px; margin:24px 0 28px; padding:20px 22px; background:oklch(95.5% 0.015 322); border-radius:18px; }
.ak-rd-event-fact { display:flex; align-items:flex-start; gap:10px; font-size:14px; font-weight:600; color:oklch(28% 0.04 322); line-height:1.5; }
.ak-rd-event-fact svg { flex-shrink:0; margin-top:1px; color:oklch(45% 0.1 322); }

.ak-rd-event-reg-card { position:relative; overflow:hidden; border-radius:28px; background:oklch(24% 0.07 322); padding:36px 30px; color:oklch(98% 0.005 90); }
.ak-rd-event-reg-card .ak-rd-review-submit { background:oklch(98% 0.005 90); color:oklch(24% 0.07 322); }
.ak-rd-event-reg-error { display:none; align-items:flex-start; gap:8px; background:oklch(35% 0.14 25 / 0.4); border:1px solid oklch(65% 0.18 25 / 0.5); color:oklch(92% 0.05 25); font-size:13px; font-weight:600; line-height:1.5; padding:12px 14px; border-radius:12px; margin-bottom:16px; }
.ak-rd-event-reg-error.show { display:flex; }
.ak-rd-event-reg-error::before { content:"!"; flex-shrink:0; width:16px; height:16px; border-radius:50%; background:oklch(92% 0.05 25); color:oklch(30% 0.14 25); font-size:11px; font-weight:900; display:flex; align-items:center; justify-content:center; margin-top:1px; }

/* Light-theme error box, used by the Free Portfolio Review modal */
.ak-rd-review-error { display:none; align-items:flex-start; gap:8px; background:oklch(95% 0.05 25); border:1px solid oklch(78% 0.15 25); color:oklch(40% 0.16 25); font-size:13px; font-weight:600; line-height:1.5; padding:12px 14px; border-radius:12px; margin-bottom:18px; }
.ak-rd-review-error.show { display:flex; }
.ak-rd-review-error::before { content:"!"; flex-shrink:0; width:16px; height:16px; border-radius:50%; background:oklch(40% 0.16 25); color:oklch(98% 0.02 25); font-size:11px; font-weight:900; display:flex; align-items:center; justify-content:center; margin-top:1px; }

/* WhatsApp-OTP gate — shared by the event registration form and the Free
   Portfolio Review modal. Light-theme by default; overridden for dark cards. */
.ak-rd-otp-btn { flex-shrink:0; padding:0 18px; background:oklch(24% 0.07 322); color:oklch(98% 0.005 90); border:none; border-radius:12px; font-family:inherit; font-size:13.5px; font-weight:700; cursor:pointer; white-space:nowrap; }
.ak-rd-otp-btn:disabled { opacity:0.5; cursor:default; }
.ak-rd-otp-hint { font-size:12px; font-weight:600; color:oklch(45% 0.02 300); margin-top:8px; line-height:1.6; }
.ak-rd-otp-link { background:none; border:none; padding:0; color:oklch(35% 0.1 322); font-weight:700; font-size:12px; cursor:pointer; text-decoration:underline; font-family:inherit; }
.ak-rd-otp-link:disabled { color:oklch(65% 0.02 300); cursor:default; text-decoration:none; }
.ak-rd-otp-verified { display:none; align-items:center; gap:10px; background:oklch(94% 0.06 150); border:1px solid oklch(75% 0.12 150); color:oklch(32% 0.1 150); font-size:13.5px; font-weight:700; padding:12px 14px; border-radius:12px; margin-bottom:18px; }
.ak-rd-otp-verified svg { flex-shrink:0; }

.ak-rd-event-reg-card .ak-rd-otp-btn { background:oklch(98% 0.005 90); color:oklch(24% 0.07 322); }
.ak-rd-event-reg-card .ak-rd-otp-hint { color:oklch(75% 0.02 300); }
.ak-rd-event-reg-card .ak-rd-otp-link { color:oklch(88% 0.05 322); }
.ak-rd-event-reg-card .ak-rd-otp-link:disabled { color:oklch(60% 0.02 300); }
.ak-rd-event-reg-card .ak-rd-otp-verified { background:oklch(35% 0.1 150 / 0.35); border-color:oklch(65% 0.15 150 / 0.5); color:oklch(90% 0.08 150); }
.ak-rd-event-reg-thankyou { display:none; text-align:center; padding:12px 0; flex-direction:column; align-items:center; }
.ak-rd-event-reg-thankyou.show { display:flex; }

@media (max-width:1023px) {
  .ak-rd-event-facts { margin-top:20px; }
}

/* ---- SEBI regulatory documents (Investor Charter, Disclaimer, PMLA, etc.) ---- */
.ak-rd-charter-card { background:oklch(99.3% 0.002 90); border:1px solid oklch(90% 0.01 300); border-radius:28px; overflow:hidden; }

.ak-rd-charter-header { background:oklch(24% 0.07 322); color:oklch(98% 0.005 90); padding:40px 48px 34px; }
.ak-rd-charter-header-row { display:flex; align-items:center; gap:18px; }
.ak-rd-charter-icon { width:54px; height:54px; border-radius:50%; background:oklch(98% 0.005 90 / 0.15); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.ak-rd-charter-annexure { font-size:12.5px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; opacity:0.75; margin-bottom:6px; }
.ak-rd-charter-header h1 { font-size:26px; font-weight:800; margin:0; letter-spacing:-0.01em; line-height:1.3; color:inherit; }
.ak-rd-charter-reg { margin:10px 0 0; font-size:13.5px; opacity:0.82; }

.ak-rd-charter-body { padding:44px 48px 52px; }
.ak-rd-charter-body > p { font-size:15px; line-height:1.8; color:oklch(30% 0.03 322); margin:0 0 14px; }

.ak-rd-charter-sec-head { display:flex; align-items:center; gap:10px; background:oklch(95.5% 0.015 322); border-left:4px solid oklch(24% 0.07 322); border-radius:0 12px 12px 0; padding:13px 18px; margin:32px 0 18px; font-size:16px; font-weight:800; color:oklch(24% 0.07 322); }
.ak-rd-charter-sec-head:first-child { margin-top:0; }
.ak-rd-charter-sec-head svg { flex-shrink:0; }

.ak-rd-charter-intro-box { background:oklch(97.5% 0.01 322); border:1px solid oklch(90% 0.01 300); border-radius:16px; padding:20px 24px; margin:0 0 22px; font-size:14.5px; line-height:1.8; color:oklch(30% 0.03 322); }

.ak-rd-charter-address-block { background:oklch(95.5% 0.015 322); border:1px solid oklch(90% 0.01 300); border-radius:14px; padding:20px 24px; margin:14px 0; font-size:14.5px; line-height:1.85; font-weight:600; color:oklch(20% 0.03 322); }

.ak-rd-charter-contact-block { background:oklch(95.5% 0.015 322); border-left:4px solid oklch(24% 0.07 322); border-radius:0 14px 14px 0; padding:18px 22px; margin:14px 0; font-size:14.5px; line-height:1.9; color:oklch(30% 0.03 322); }
.ak-rd-charter-contact-block div { margin-bottom:5px; }
.ak-rd-charter-contact-block div:last-child { margin-bottom:0; }

/* Escalation Matrix: table, note box, info rows, portal link cards */
.ak-rd-charter-matrix-wrap { overflow-x:auto; margin:0 0 24px; border-radius:16px; border:1px solid oklch(90% 0.01 300); }
.ak-rd-charter-matrix { width:100%; border-collapse:collapse; font-size:13.5px; min-width:760px; }
.ak-rd-charter-matrix thead tr { background:oklch(24% 0.07 322); color:oklch(98% 0.005 90); }
.ak-rd-charter-matrix thead th { padding:13px 14px; font-weight:700; text-align:left; border-right:1px solid oklch(98% 0.005 90 / 0.15); font-size:12.5px; letter-spacing:0.02em; white-space:nowrap; }
.ak-rd-charter-matrix thead th:last-child { border-right:none; }
.ak-rd-charter-matrix tbody tr { border-bottom:1px solid oklch(90% 0.01 300); }
.ak-rd-charter-matrix tbody tr:last-child { border-bottom:none; }
.ak-rd-charter-matrix tbody tr:nth-child(odd) { background:oklch(98.5% 0.004 90); }
.ak-rd-charter-matrix tbody tr:nth-child(even) { background:oklch(99.5% 0.001 90); }
.ak-rd-charter-matrix td { padding:12px 14px; vertical-align:top; color:oklch(30% 0.03 322); border-right:1px solid oklch(92% 0.012 322); line-height:1.6; }
.ak-rd-charter-matrix td:last-child { border-right:none; }
.ak-rd-charter-matrix td.desig { font-weight:700; color:oklch(24% 0.07 322); }
.ak-rd-charter-matrix td.na { color:oklch(65% 0.01 300); font-weight:700; text-align:center; vertical-align:middle; }

.ak-rd-charter-note-box { background:oklch(95.5% 0.015 322); border-left:4px solid oklch(24% 0.07 322); border-radius:0 14px 14px 0; padding:16px 20px; margin:0 0 22px; font-size:13.5px; line-height:1.7; color:oklch(40% 0.02 300); font-style:italic; }
.ak-rd-charter-note-box a { font-style:normal; }

/* Numbered vertical steps (Redressal of Grievance) */
.ak-rd-charter-steps { list-style:none; padding:0; margin:0 0 20px; display:flex; flex-direction:column; gap:22px; }
.ak-rd-charter-steps > li { display:flex; gap:16px; align-items:flex-start; font-size:15px; line-height:1.75; color:oklch(30% 0.03 322); }
.ak-rd-charter-step-num { min-width:32px; height:32px; background:oklch(24% 0.07 322); color:oklch(98% 0.005 90); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:13.5px; font-weight:800; flex-shrink:0; margin-top:2px; }

/* Important-notice box (softer than the amber regulatory alert) */
.ak-rd-charter-info-block { background:oklch(97% 0.02 25); border:1px solid oklch(85% 0.05 25); border-radius:14px; padding:18px 22px; margin:18px 0; font-size:14.5px; line-height:1.75; color:oklch(32% 0.03 25); }
.ak-rd-charter-info-block strong { color:oklch(24% 0.07 322); }

.ak-rd-charter-info-row { display:flex; align-items:flex-start; gap:12px; padding:14px 18px; background:oklch(99.3% 0.002 90); border:1px solid oklch(90% 0.01 300); border-radius:14px; margin-bottom:12px; font-size:14.5px; line-height:1.7; color:oklch(30% 0.03 322); }
.ak-rd-charter-info-row svg { flex-shrink:0; margin-top:2px; }
.ak-rd-charter-info-row strong { color:oklch(24% 0.07 322); }

.ak-rd-charter-portal-grid { display:flex; gap:16px; flex-wrap:wrap; margin-top:18px; }
.ak-rd-charter-portal-card { flex:1; min-width:220px; background:oklch(95.5% 0.015 322); border:1.5px solid oklch(90% 0.01 300); border-radius:14px; padding:18px 22px; text-decoration:none; color:oklch(30% 0.03 322) !important; transition:border-color 0.15s, background 0.15s; }
.ak-rd-charter-portal-card:hover { border-color:oklch(24% 0.07 322); background:oklch(93% 0.03 322); }
.ak-rd-charter-portal-label { font-size:11.5px; font-weight:700; color:oklch(52% 0.13 322); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:5px; }
.ak-rd-charter-portal-name { font-size:18px; font-weight:800; color:oklch(24% 0.07 322); margin-bottom:4px; }
.ak-rd-charter-portal-url { font-size:12.5px; color:oklch(45% 0.1 322); word-break:break-all; }

@media (max-width:640px) {
  .ak-rd-charter-portal-grid { flex-direction:column; }
  .ak-rd-charter-portal-card { min-width:unset; }
}

.ak-rd-charter-blist { list-style:none; padding:0; margin:0 0 16px; }
.ak-rd-charter-blist > li { position:relative; padding-left:20px; font-size:15px; line-height:1.75; color:oklch(30% 0.03 322); margin-bottom:12px; }
.ak-rd-charter-blist > li::before { content:''; position:absolute; left:0; top:9px; width:8px; height:8px; background:oklch(24% 0.07 322); border-radius:50%; }

.ak-rd-charter-sub-blist { list-style:none; padding:0; margin:10px 0 6px 24px; }
.ak-rd-charter-sub-blist > li { position:relative; padding-left:16px; font-size:14.5px; line-height:1.7; color:oklch(40% 0.02 300); margin-bottom:8px; }
.ak-rd-charter-sub-blist > li::before { content:''; position:absolute; left:0; top:8px; width:6px; height:6px; border:1.5px solid oklch(24% 0.07 322); border-radius:50%; }

.ak-rd-charter-divider { border:none; border-top:1px solid oklch(90% 0.01 300); margin:28px 0; }

.ak-rd-charter-mode-box { background:oklch(95.5% 0.015 322); border:1px solid oklch(90% 0.01 300); border-radius:16px; padding:22px 26px; margin:16px 0; font-size:14.5px; line-height:1.75; color:oklch(30% 0.03 322); }
.ak-rd-charter-mode-box h4 { font-size:15.5px; font-weight:800; color:oklch(24% 0.07 322); margin:0 0 8px; }
.ak-rd-charter-mode-box p { margin:0 0 12px; }
.ak-rd-charter-mode-box p:last-child { margin-bottom:0; }

.ak-rd-charter-vm-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:32px; }
.ak-rd-charter-vm-card { background:oklch(95.5% 0.015 322); border:1px solid oklch(90% 0.01 300); border-radius:18px; padding:24px; }
.ak-rd-charter-vm-label { font-size:12px; font-weight:800; color:oklch(24% 0.07 322); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:10px; display:flex; align-items:center; gap:8px; }
.ak-rd-charter-vm-text { font-size:15px; line-height:1.7; color:oklch(30% 0.03 322); }

.ak-rd-charter-rights-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:24px; }
.ak-rd-charter-right-item { background:oklch(99.3% 0.002 90); border:1px solid oklch(90% 0.01 300); border-left:3px solid oklch(24% 0.07 322); border-radius:0 12px 12px 0; padding:12px 16px; font-size:13.5px; line-height:1.6; color:oklch(30% 0.03 322); }

.ak-rd-charter-dos-donts { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-top:18px; }
.ak-rd-charter-dos-card, .ak-rd-charter-donts-card { border-radius:16px; overflow:hidden; border:1px solid oklch(90% 0.01 300); }
.ak-rd-charter-dos-head { background:#e8f5e9; color:#1b5e20; padding:12px 18px; font-size:14px; font-weight:800; display:flex; align-items:center; gap:8px; }
.ak-rd-charter-donts-head { background:#ffebee; color:#b71c1c; padding:12px 18px; font-size:14px; font-weight:800; display:flex; align-items:center; gap:8px; }
.ak-rd-charter-dos-item { display:flex; align-items:flex-start; gap:10px; padding:11px 16px; font-size:13.5px; line-height:1.65; color:oklch(30% 0.03 322); border-bottom:1px solid #eef7ee; }
.ak-rd-charter-dos-item:last-child { border-bottom:none; }
.ak-rd-charter-donts-item { display:flex; align-items:flex-start; gap:10px; padding:11px 16px; font-size:13.5px; line-height:1.65; color:oklch(30% 0.03 322); border-bottom:1px solid #fdeeef; }
.ak-rd-charter-donts-item:last-child { border-bottom:none; }

@media (max-width:768px) {
  .ak-rd-charter-header-row { flex-direction:column; align-items:flex-start; gap:12px; }
  .ak-rd-charter-header { padding:28px 24px 24px; }
  .ak-rd-charter-body { padding:28px 24px 36px; }
  .ak-rd-charter-vm-grid, .ak-rd-charter-rights-grid, .ak-rd-charter-dos-donts { grid-template-columns:1fr !important; }
}

/* Amber mandatory-notice box (Disclaimer page) */
.ak-rd-disc-alert { display:flex; align-items:flex-start; gap:10px; background:oklch(97% 0.05 95); border:1.5px solid oklch(75% 0.15 85); border-left:5px solid oklch(75% 0.15 85); border-radius:0 12px 12px 0; padding:16px 20px; margin:0 0 16px; font-size:14.5px; font-weight:700; line-height:1.7; color:oklch(35% 0.1 70); }
.ak-rd-disc-alert svg { flex-shrink:0; margin-top:2px; }

/* Numbered disclosure sections (Standard Disclosures page) */
.ak-rd-disc-section { margin-bottom:28px; }
.ak-rd-disc-section-head { display:flex; align-items:center; gap:12px; margin-bottom:14px; }
.ak-rd-disc-section-num { width:34px; height:34px; background:oklch(24% 0.07 322); color:oklch(98% 0.005 90); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:800; flex-shrink:0; }
.ak-rd-disc-section-title { font-size:17px; font-weight:800; color:oklch(24% 0.07 322); }
.ak-rd-disc-section-body { margin-left:46px; font-size:15px; line-height:1.8; color:oklch(30% 0.03 322); }
.ak-rd-disc-section-body p { margin:0 0 12px; }
.ak-rd-disc-section-body p:last-child { margin-bottom:0; }

.ak-rd-disc-points-wrap { border:1px solid oklch(90% 0.01 300); border-radius:16px; overflow:hidden; margin-top:16px; }
.ak-rd-disc-point-row { display:flex; align-items:flex-start; gap:14px; padding:14px 18px; border-bottom:1px solid oklch(92% 0.012 322); font-size:14.5px; line-height:1.75; color:oklch(30% 0.03 322); }
.ak-rd-disc-point-row:last-child { border-bottom:none; }
.ak-rd-disc-point-num { min-width:34px; height:34px; background:oklch(24% 0.07 322); color:oklch(98% 0.005 90); border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:800; flex-shrink:0; }

@media (max-width:768px) {
  .ak-rd-disc-section-body { margin-left:0; }
}
