/* Shared blue/white chapters and page-specific editorial layouts. */
.public-page { --ink:#17304f; --muted:#506786; --accent:#285d9f; --line:#dae4ef; --surface:#fff; color-scheme:light; }
body.public-page { background:#f5f8fc; }
.public-page :is(section,header,main) { color:var(--ink); }
.public-page :is(div,a,button)[class*="bg-dark-"] { background-color:#edf3fa; }
.public-page :is(div,a,button)[class*="bg-slate-900"] { background-color:#edf3fa; color:#365b8d; }
.public-page :is(.text-emerald-400,.text-emerald-300,.text-purple-400,.text-purple-300,.text-amber-300,.text-amber-400) { color:#285d9f; }
.public-page .border-slate-800,.public-page .border-slate-700 { border-color:#d8e2ee; }
.public-page .glass-card { background:#fff; border-color:#dbe5f0; box-shadow:0 5px 20px #243f6505; }
.public-page .glass-card-hover:hover { background:#f8fbff; border-color:#a0badd; }
.public-page :is(input,textarea,select) { color:#183451; background:#fff !important; border-color:#b9cce0; font-family:inherit; }
.public-page :is(a,button)[class*="bg-gradient-to-"] { color:#fff; background:#285d9f; border-color:#285d9f; }
.public-page :is(a,button)[class*="bg-gradient-to-"]:hover { background:#1b477e; }
.public-page :is(a,button).bg-cyan-500 { background:#285d9f; color:#fff; }
.public-page .floating-wa-btn { z-index:45; }
.public-page > div.sticky { background:#0b1629; border-color:#273c5b; }
.public-page > div.sticky :is(.text-white,.text-slate-300,.text-cyan-300,.text-emerald-400) { color:#b3cbee; }
.home-experience .shared-nav { display:flex; justify-content:space-between; align-items:center; gap:24px; min-height:94px; color:#dce8fa; background:#0b1425; border:0; max-width:none; padding-inline:max(24px,calc((100vw - 1176px)/2)); }
.shared-nav .brand-wordmark { color:#fff; }
.shared-desktop { display:flex; gap:26px; align-items:center; font-size:13px; }
.shared-desktop > a,.shared-desktop summary { color:#afc1dd; }
.shared-desktop [aria-current="page"] { color:#fff; position:relative; }
.shared-desktop > a[aria-current="page"]::after { content:''; position:absolute; inset:auto 0 -10px; height:2px; background:#82acef; }
.public-page .shared-nav .nav-panel { background:#fff; }
.public-page .shared-nav .nav-panel a { color:#274b7d; }
.home-experience .shared-nav > .site-contact { display:flex; align-items:center; gap:20px; padding:13px 18px; background:#eaf2ff; border:1px solid #eaf2ff; color:#17395f; border-radius:5px; font-size:11px; font-weight:600; white-space:nowrap; }
.site-mobile-menu { display:none; }
.site-mobile-menu summary { list-style:none; cursor:pointer; padding:10px; border:1px solid #405879; border-radius:6px; }
.site-mobile-menu summary::-webkit-details-marker { display:none; }
.site-mobile-menu > div { position:absolute; top:100%; inset-inline:16px; z-index:50; display:grid; grid-template-columns:1fr 1fr; gap:4px; padding:16px; border:1px solid #cbd9eb; border-radius:8px; background:white; box-shadow:0 14px 32px #0c1c3630; }
.site-mobile-menu a { padding:12px; color:#284f84; font-size:13px; border-radius:4px; }
.site-mobile-menu a:hover { background:#edf4ff; }
.home-experience.public-page .page-hero { padding-block:56px 64px; background:linear-gradient(125deg,#fff,#eef4fc); margin-bottom:0; border-bottom:1px solid #dce6f2; max-width:none; text-align:left; }
.page-hero > :is(div,h1,p) { max-width:1144px; margin-inline:auto; }
.public-page .page-hero > .text-center { max-width:1144px; text-align:left; }
.public-page .page-hero h1 { font-size:clamp(36px,4.6vw,60px); line-height:1.12; font-weight:500; letter-spacing:-.055em; max-width:970px; margin:20px 0; color:#17304f; }
.public-page header.page-hero > h1 { margin-inline:auto; }
.public-page .page-hero p { color:#506786; font-size:15px; max-width:730px; margin-top:20px; margin-left:0; }
.public-page header.page-hero > p { max-width:1144px; margin-inline:auto; }
.page-breadcrumb { display:flex; gap:12px; font-size:10px; color:#526b8e; margin-bottom:30px; }
.page-breadcrumb a { color:#406999; }
.public-page .page-hero .inline-flex.rounded-full { background:#e8f0fb; border-color:#cbdcf3; color:#345e93; font-size:9px; letter-spacing:.06em; }
.public-page .page-hero .justify-center { justify-content:flex-start; }
.public-page .page-hero .glass-card { background:#fff; }
.venue-identity { display:flex; align-items:center; gap:16px; margin-top:26px; color:#526b8e; font:9px 'JetBrains Mono',monospace; letter-spacing:.08em; }
.venue-identity img { border-radius:8px; width:48px; height:48px; object-fit:contain; }
.public-page main { padding-top:56px; }
.public-page section:not(.page-hero) { background:#f7faff; }
.public-page section:nth-of-type(even):not(.page-hero) { background:#fff; }
.public-page section > div > .text-center { max-width:780px; }
.public-page section > div > .text-center p { color:#506786; }
.public-page section > div > .text-center > :first-child:not(h2):not(p) { color:#537aa9; }
.public-page h2 { font-size:clamp(27px,3vw,40px); }
.public-page .glass-card h3 { font-size:18px; }
.public-page p.text-xs { font-size:14px; }
.public-page footer { --ink:#e1ebfb; --accent:#a8c8f7; --muted:#94aaca; --line:#2b3f5d; --surface:#101e33; color:#a9bedb; background:#080f1d; }
.public-page footer p { color:#9cafc9; }
/* Research: abstract, data-free cover art gives each note its own visual identity. */
.editorial-art { height:155px; overflow:hidden; position:relative; border-bottom:1px solid #d9e5f4; background:linear-gradient(130deg,#eef4ff,#dce8fa); }
.editorial-art svg { display:block; width:100%; height:100%; }
.editorial-art--1 { background:linear-gradient(135deg,#e6f0fd,#f7faff); }
.editorial-art--2 { background:linear-gradient(135deg,#edf1fa,#e1e8f5); }
.home-experience #research .grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; border:0; }
.home-experience #research .research-card { border:1px solid #d8e3f1; border-radius:12px; overflow:hidden; padding:0; background:#fff; box-shadow:0 8px 24px #17395d06; }
.home-experience #research .research-card:last-child { border:1px solid #d8e3f1; }
.home-experience #research .research-card > div:not(.editorial-art) { margin:24px; }
.home-experience #research .research-card > div:last-child { padding-top:18px; margin-top:0; }
.home-experience #research .research-card h3 { color:#17304f; font-size:21px; margin-top:16px; line-height:1.45; overflow-wrap:anywhere; }
.home-experience #research > div > .text-center > :first-child:not(h2):not(p) { color:#42628c; font-size:11px; line-height:1.7; letter-spacing:.08em; }
.home-experience #research > div > .text-center > p { color:#4d6482; font-size:15px; }
.home-experience #research .research-card p { color:#465f7d; font-size:14px; line-height:1.85; }
.home-experience #research .research-card > div:not(.editorial-art) { min-width:0; }
.home-experience #research .research-card .text-slate-400 { color:#506786; font-size:12px; }
.home-experience #research .research-card .flex.items-center.justify-between { flex-wrap:wrap; gap:10px; }
.home-experience #research .research-card a { color:#275b99; font-size:12px; }
.home-experience #research .research-card:hover { background:#fff; border-color:#9db7dc; }
.public-page.page-blog main > .grid { gap:24px; }
.public-page.page-blog main article { border-radius:12px; }
.public-page.page-blog main article h2 { font-size:23px; line-height:1.35; }
.public-page.page-blog main article p { font-size:14px; }
.public-page.page-blog main article > div:last-child { background:#f1f6fc; border-color:#dae5f1; }
/* Home managed pairs: white market cards inside the navy chapter. */
.home-experience #portfolioGrid .portfolio-item { --ink:#1a365a; --muted:#506786; --accent:#285d9f; --surface:#fff; color:var(--ink); background:#fff; border-color:#d9e5f4; border-radius:12px; padding:24px; min-width:0; }
.home-experience #portfolioGrid .portfolio-item [class*="bg-dark-"] { background:#f0f5fc; }
.home-experience #portfolioGrid .portfolio-item .border-slate-800 { border-color:#dbe5f2; }
.home-experience #portfolioGrid .portfolio-item [class*="bg-gradient-to-tr"] { background:#e5effc; border-color:#b8cee9; color:#2e5e9d; }
.home-experience #portfolioGrid .portfolio-item:hover { border-color:#82a7d8; }
.home-experience #portfolioGrid .portfolio-item [onclick] { border-radius:8px; }
/* Case studies: distinct summaries, large metrics and a restrained chart frame. */
.public-page.page-portfolio main { max-width:1200px; }
.public-page.page-portfolio main > article { padding:36px; margin-top:32px; border-radius:14px; background:#fff; border-color:#d5e2f1; border-top:3px solid #5f87bf; }
.public-page.page-portfolio main > article:first-child { margin-top:0; }
.public-page.page-portfolio main > article > div:first-child { border-color:#dce7f3; padding-bottom:26px; }
.public-page.page-portfolio main > article h2 { font-size:30px; }
.public-page.page-portfolio main > article .bg-dark-900 { background:#eff5fc; }
.public-page.page-portfolio main > article .text-lg.font-black { color:#2c609f; font-size:24px; font-weight:500; }
.public-page.page-portfolio main > article .grid p { font-size:14px; line-height:1.9; }
.public-page.page-portfolio main > article .bg-black { background:#eff4fb; border-color:#d4e1f0; }
.snapshot-unavailable { min-height:170px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:24px; text-align:center; color:#587596; background:linear-gradient(145deg,#f3f7fd,#e7effa); }
.snapshot-unavailable svg { color:#5577a3; }
.snapshot-unavailable strong { font-size:14px; font-weight:500; }
.snapshot-unavailable a { font-size:11px; color:#2b5f9e; text-decoration:underline; text-underline-offset:4px; }
.public-page.page-portfolio .snapshot-unavailable { min-height:220px; }
.public-page.page-careers > section .glass-card { padding:30px; border-radius:12px; }
.public-page.page-careers main { max-width:880px; }
.public-page.page-careers main > .glass-card { padding:36px; border-top:3px solid #638dc5; }
.public-page.page-careers main form { font-family:inherit; }
.public-page.page-careers main label { font-family:inherit; font-size:13px; }
.public-page.page-careers main .grid { gap:24px; }
.public-page .floating-wa-btn a { border-radius:24px; }
/* Images and controls must not impose their intrinsic minimum width on cards. */
.home-experience [data-token] { flex-shrink:0; background:#eef3fa; border-color:#d7e3f3; color:#284f82; overflow:hidden; }
.home-experience .token-logo { display:block; width:100%; height:100%; max-width:100%; object-fit:contain; border-radius:inherit; }
.home-experience .glass-card { min-width:0; }
.home-experience :is(a,button)[class*="whitespace-nowrap"]:not(.exchange-brand) { white-space:normal; overflow-wrap:anywhere; min-width:0; height:auto; }
.home-experience :is(a,button)[class*="whitespace-nowrap"] > span { min-width:0; }
.home-experience :is(a,button)[class*="whitespace-nowrap"] > i { flex-shrink:0; }
.home-experience .glass-card :is(h2,h3,p) { overflow-wrap:anywhere; }
.home-experience .glass-card .whitespace-nowrap { white-space:normal; overflow-wrap:anywhere; }
.public-page main > article > div:first-child .flex.items-center.gap-2 { flex-wrap:wrap; }
.home-experience #research { color:#17304f; background:#f7f9fc; }
.home-experience #research .research-card { color:#17304f; background:#fff; }
.home-experience #research .research-card a:hover { color:#173c6c; }
.home-experience #research .research-card .text-cyan-400 { color:#285d9f; }
.public-page.page-crypto-candle-maker .candle-workspace { color:#17304f; background:#fff; }
.candle-workspace > div:first-child { flex-wrap:wrap; gap:12px; }
.candle-workspace > div:first-child > div:first-child { flex-wrap:wrap; gap:8px; }
.public-page .candle-workspace .candle-pair-label { display:inline-block; font-size:12px; line-height:1.6; color:#4d6482; }
.public-page .candle-workspace .candle-pair-label strong { color:#224f87; font-weight:600; }
.public-page .candle-workspace [class*="bg-emerald-950"] { color:#24538a; background:#e6effb; border-color:#c0d5ef; }
.public-page.page-crypto-candle-maker #bookingModal { --ink:#17304f; --muted:#506786; --accent:#285d9f; --surface:#fff; color:#17304f; overflow-y:auto; }
.public-page.page-crypto-candle-maker #bookingModal > .glass-card { color:#17304f; background:#fff; max-height:calc(100dvh - 32px); overflow-y:auto; }
.public-page.page-crypto-candle-maker #bookingModal h3 { color:#17304f; font-size:22px; line-height:1.4; padding-right:24px; }
.public-page.page-crypto-candle-maker #bookingModal p { color:#4d6482; font-size:14px; line-height:1.8; }
.public-page.page-crypto-candle-maker #bookingModal label { color:#365271; font:500 13px/1.5 'Plus Jakarta Sans',sans-serif; }
.public-page.page-crypto-candle-maker #bookingModal button[onclick="closeBookingModal()"] { color:#355b89; }
/* Keep the utility strip and navigation together, below modal dialogs. */
.site-header { --ink:#e6edf7; --muted:#99adca; --accent:#accbf7; --surface:#0d1728; position:sticky; top:0; z-index:48; background:#0b1425; border-bottom:1px solid #2a3c56; box-shadow:0 6px 20px #050d1a1a; }
.site-header .sticky { position:static; background:#0a1322; }
.site-header #mobileMenu { max-height:calc(100dvh - 120px); overflow-y:auto; }
.site-header .corporate-utility { color:#a3b6d0; }
.home-experience .floating-wa-btn { position:fixed; inset:auto 20px 20px auto; z-index:45; animation:none; }
.home-experience .floating-wa-btn > .whatsapp-float { display:flex; align-items:center; justify-content:center; gap:10px; min-width:52px; min-height:52px; padding:13px 18px; color:#fff; background:#17634f; border:1px solid #4e9d83; border-radius:28px; box-shadow:0 8px 22px #071a2229; text-decoration:none; white-space:normal; font:600 12px/1.4 'Plus Jakarta Sans',sans-serif; transition:background .2s; }
.home-experience .floating-wa-btn > .whatsapp-float:hover { color:#fff; background:#124e3f; transform:none; }
.whatsapp-float > .fa-whatsapp { color:#fff; font-size:22px; flex-shrink:0; }
.whatsapp-float > span { color:#fff; }
.footer-social { display:inline-flex; align-items:center; gap:9px; padding:10px 0; color:#c2d7f5; font-size:12px; }
.footer-social:hover { color:#fff; }
.public-page #faq > .text-center > h2 { color:#17304f; }
.public-page #faq .glass-card > h3 { flex-wrap:wrap; }
@media(min-width:1100px) { .site-mobile-menu { display:none; } }
@media(min-width:768px) and (max-width:1099px) {
 .home-experience #research .grid,.public-page.page-blog main > .grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .home-experience #research .research-card:first-child,.public-page.page-blog main > .grid > article:first-child { grid-column:span 2; }
}
@media(max-width:1099px) { .shared-desktop { display:none; } .site-mobile-menu { display:block; } .home-experience .shared-nav > .site-contact { margin-left:auto; } .public-page .page-hero { padding-inline:24px; } }
@media(max-width:767px) {
 html { scroll-padding-top:140px; }
 .home-experience .floating-wa-btn { right:max(14px,env(safe-area-inset-right)); bottom:max(14px,env(safe-area-inset-bottom)); }
 .home-experience .floating-wa-btn > .whatsapp-float { width:52px; height:52px; padding:12px; }
 .whatsapp-float > span,.whatsapp-float > svg { display:none; }
 .home-experience .shared-nav { min-height:80px; gap:12px; padding-inline:16px; } .home-experience .shared-nav > .site-contact { display:none; } .site-mobile-menu { margin-left:auto; }
 .home-experience.public-page .page-hero { padding:32px 20px 44px; } .public-page .page-hero h1 { font-size:clamp(33px,8vw,44px); } .page-breadcrumb { margin-bottom:22px; }
 .public-page main { padding-top:32px; } .public-page .page-hero p { font-size:14px; }
 .home-experience #research .grid { grid-template-columns:minmax(0,1fr); } .home-experience #research .research-card { padding:0; } .home-experience #research .research-card:last-child { border:1px solid #d8e3f1; }
 .public-page.page-portfolio main > article { padding:22px; margin-top:24px; } .public-page.page-portfolio main > article > div:first-child { gap:22px; } .public-page.page-portfolio main > article .text-lg.font-black { font-size:20px; }
 .public-page.page-careers main > .glass-card { padding:24px; } .public-page .floating-wa-btn { bottom:12px; right:12px; }
}
