/* Shared visual rules, based on the homepage and loaded after page styles. */
:root { --site-font:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; --site-ink:#081344; --site-copy:#425574; --site-blue:#0067ff; --site-border:#dce9fa; --site-body:.875rem; --site-caption:.75rem; --site-section:1.4rem; --site-card:.94rem; --site-radius:11px; --site-icon:43px; }
.lipicode-bold .page-main :is(h1,h2,h3,h4,p,li,dt,dd,label,small,summary,button,input,select,textarea) { font-family:var(--site-font)!important; }
/* Code, technical editors and generated artwork retain their working fonts. */
.lipicode-bold .tool-detail-main :is(pre,code,[class*="code-editor"] textarea,.CodeMirror,.monaco-editor) { font-family:var(--font-mono),monospace!important; }
.lipicode-bold .page-main :is(.company-hero,.contact-hero,.privacy-hero,.method-hero,.learning-hero,.reading-hero,.tool-experience-hero,.directory-hero) h1 { font-size:clamp(2.25rem,3.8vw,3.4rem)!important; font-weight:800!important; letter-spacing:-.04em!important; line-height:1.13!important; color:var(--site-ink); }
.lipicode-bold .page-main :is(.company-hero,.contact-hero-copy,.privacy-hero,.method-hero,.learning-hero,.experience-title-row,.reading-hero-copy) > p { font-size:1rem!important; line-height:1.55!important; color:var(--site-copy)!important; }
.lipicode-bold .page-main :is(.company-overview,.company-values,.about-editorial,.reading-content,.methodology-body,.privacy-policy-card,.learning-card-copy) :is(p,li) { font-size:var(--site-body)!important; line-height:1.65!important; color:var(--site-copy)!important; }
.lipicode-bold .page-main :is(.company-overview,.company-values,.about-editorial,.method-tech,.method-steps,.learning-card-copy) :is(h2,h3) { font-size:var(--site-card)!important; font-weight:700!important; line-height:1.45!important; letter-spacing:-.015em!important; color:var(--site-ink)!important; }
.lipicode-bold .page-main :is(.reading-section,.methodology-body) h2 { font-size:1.15rem!important; font-weight:700!important; line-height:1.4!important; letter-spacing:-.02em!important; }
.lipicode-bold .page-main :is(.company-values-heading,.method-main > header,.learning-section-heading) h2 { font-size:var(--site-section)!important; font-weight:750!important; letter-spacing:-.025em!important; }
.lipicode-bold .page-main :is(.contact-card,.privacy-sidebar,.reading-side-card,.method-sidebar,.learning-side-card,.experience-side-card) h2 { font-size:1rem!important; font-weight:700!important; line-height:1.4!important; color:var(--site-ink)!important; }
.lipicode-bold .page-main :is(.privacy-sidebar,.reading-side-card,.method-sidebar,.learning-side-card,.experience-side-card) :is(p,li,small) { font-size:.78rem!important; line-height:1.6!important; }
.lipicode-bold .page-main :is(.contact-field label,.contact-field input,.contact-field select,.contact-field textarea) { font-size:.82rem!important; }
/* Regular icon tiles share the homepage's straight, rounded gradient style. */
.lipicode-bold .page-main :is(.directory-tool-icon,.learning-guide-icon,.company-icon,.privacy-policy-card .privacy-icon,.method-icon,.contact-method-icon) { width:var(--site-icon)!important; height:46px!important; flex:0 0 var(--site-icon)!important; border-radius:9px!important; color:#fff!important; background:linear-gradient(135deg,#38c8ff,#0060ff)!important; box-shadow:inset 1px 1px 2px #ffffff60!important; transform:none!important; }
.lipicode-bold .page-main :is(.directory-tool-icon,.learning-guide-icon,.company-icon,.privacy-policy-card .privacy-icon,.method-icon,.contact-method-icon) svg { width:28px!important; height:28px!important; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.lipicode-bold .page-main :is(.directory-tool:nth-child(6n+1) .directory-tool-icon,.learning-card:nth-child(6n+1) .learning-guide-icon) { background:linear-gradient(135deg,#ff617d,#ff164d)!important; }
.lipicode-bold .page-main :is(.company-purple,.directory-tool:nth-child(6n+3) .directory-tool-icon,.learning-card:nth-child(6n+3) .learning-guide-icon,.method-steps article:nth-child(2) .method-icon) { background:linear-gradient(135deg,#c77cff,#7b21f6)!important; }
.lipicode-bold .page-main :is(.directory-tool:nth-child(6n+4) .directory-tool-icon,.learning-card:nth-child(6n+4) .learning-guide-icon) { background:linear-gradient(135deg,#ff76cb,#ff168f)!important; }
.lipicode-bold .page-main :is(.company-green,.directory-tool:nth-child(6n+5) .directory-tool-icon,.learning-card:nth-child(6n+5) .learning-guide-icon,.privacy-policy-card .privacy-icon.green,.method-steps article:nth-child(3) .method-icon) { background:linear-gradient(135deg,#00e79e,#00a779)!important; }
.lipicode-bold .page-main :is(.company-orange,.directory-tool:nth-child(6n+6) .directory-tool-icon,.learning-card:nth-child(6n+6) .learning-guide-icon,.privacy-policy-card .privacy-icon.orange,.method-steps article:nth-child(4) .method-icon) { background:linear-gradient(135deg,#ffb455,#ff7019)!important; }
.lipicode-bold .page-main :is(.company-overview > article,.company-values > article,.learning-card,.contact-card,.reading-side-card,.privacy-policy-card,.privacy-glance,.method-sidebar > section,.method-tech > article,.method-steps > article) { border-radius:var(--site-radius)!important; border-color:var(--site-border)!important; }
@media(max-width:600px) { .lipicode-bold .page-main :is(.company-hero,.contact-hero,.privacy-hero,.method-hero,.learning-hero,.reading-hero,.tool-experience-hero,.directory-hero) h1 { font-size:2rem!important; }.lipicode-bold .page-main :is(.company-hero,.contact-hero-copy,.privacy-hero,.method-hero,.learning-hero,.experience-title-row,.reading-hero-copy) > p { font-size:.9rem!important; } }
/* Compact hero rhythm shared across public pages. */
.lipicode-bold .page-main :is(.company-hero,.contact-hero,.privacy-hero,.cookies-hero,.method-hero,.faq-hero,.learning-hero,.tool-experience-hero){padding-block:12px 14px!important}
.lipicode-bold .page-main :is(.company-hero,.contact-hero,.privacy-hero,.cookies-hero,.method-hero,.faq-hero,.learning-hero,.tool-experience-hero) nav{margin-block:0 9px!important;padding-block:0!important}
.lipicode-bold .page-main :is(.company-hero,.contact-hero,.privacy-hero,.cookies-hero,.method-hero,.faq-hero,.learning-hero,.reading-hero,.tool-experience-hero,.directory-hero) h1{margin-block:0 7px!important;line-height:1.1!important}
.lipicode-bold .page-main :is(.company-hero-grid,.contact-hero-grid,.privacy-hero-grid,.cookies-hero-grid,.method-hero-grid,.faq-hero-grid,.learning-hero-grid,.experience-hero-grid){min-height:0!important;row-gap:12px!important}
.lipicode-bold .page-main :is(.company-hero,.contact-hero-copy,.privacy-hero,.cookies-hero,.method-hero,.faq-hero,.learning-hero,.reading-hero-copy,.experience-title-row) p{margin-block:0 9px!important;line-height:1.45!important}
.lipicode-bold .page-main :is(.company-pills,.contact-assurances,.terms-benefits,.experience-pills,.reading-meta,.method-hero ul,.cookies-hero ul,.privacy-hero ul){margin-block:10px 0!important;row-gap:6px!important}
.lipicode-bold .page-main .contact-hero .contact-assurances p{margin:0!important}
.lipicode-bold .page-main :is(.company-hero-art,.contact-hero-art,.policy-hero-art,.terms-hero-art,.cookies-hero-art,.method-hero-art,.faq-art.faq-hero-illustration,.learning-hero-art,.experience-hero-art){height:160px!important;min-height:0!important}
.lipicode-bold .page-main :is(.company-hero-art,.contact-hero-art,.policy-hero-art,.terms-hero-art,.cookies-hero-art,.method-hero-art,.faq-hero-illustration,.learning-hero-art,.experience-hero-art) img{height:185px!important;max-height:185px;object-fit:contain}
.lipicode-bold .page-main :is(.company-hero-art,.contact-hero-art,.policy-hero-art,.terms-hero-art,.cookies-hero-art,.method-hero-art)>span{top:30%!important}
.lipicode-bold .page-main .directory-hero-inner{min-height:165px!important;padding-block:14px!important}
.lipicode-bold .page-main .home-v2-hero-grid{min-height:320px!important;padding-block:20px!important}
.lipicode-bold .page-main .home-v2-hero-copy h1{margin-block:9px 8px!important}
.lipicode-bold .page-main .home-v2-hero-copy>p{margin-bottom:12px!important}
.lipicode-bold .page-main .reading-hero{padding-block:12px!important}
@media(max-width:600px){.lipicode-bold .page-main .home-v2-hero-grid{min-height:0!important;padding-block:18px!important}.lipicode-bold .page-main :is(.company-hero,.contact-hero,.privacy-hero,.cookies-hero,.method-hero,.faq-hero,.learning-hero,.tool-experience-hero){padding-block:10px 12px!important}}
