/* Landing pages (GRO-010).
 *
 * Scoped under .blueprysm-landing. The page follows the home page's rhythm
 * (dark hero on ink, then paper) and its tokens, and adds nothing the site does
 * not already have: no script, no pop-up, no sticky bar. One promise, one
 * form, and everything else is there to be checked.
 *
 * Every colour that carries text here is a pair ADR-0011 measured: white and
 * sky on ink; ink, ink-2 and accent on paper. */

.site-nav-landing .site-nav-tag{margin-left:auto;font-family:var(--mono);font-size:var(--fs-2xs);letter-spacing:.12em;text-transform:uppercase;color:#A9AFBC}
@media(max-width:760px){.site-nav-landing .site-nav-tag{display:none}}
.blueprysm-shell-landing{max-width:none;padding:0}
.blueprysm-shell-landing .entry-content,.blueprysm-shell-landing .wp-block-post-content{max-width:none}

.blueprysm-landing{--gutter:clamp(20px,5vw,96px);--maxw:72rem;color:var(--ink)}
.blueprysm-landing .lp-wrap{max-width:var(--maxw);margin:0 auto;padding-inline:var(--gutter)}
.blueprysm-landing .mono{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase}
.blueprysm-landing h2{font-size:clamp(1.6rem,3.2vw,2.3rem);letter-spacing:-.03em;line-height:1.12;margin:0 0 16px;max-width:24ch}
.blueprysm-landing h3{font-size:var(--fs-md);letter-spacing:-.02em;margin:0 0 8px}
.blueprysm-landing p{margin:0 0 12px}
.blueprysm-landing .lp-section-lead{max-width:var(--col);color:var(--ink-2);font-size:var(--fs-md);margin:0 0 clamp(26px,3.5vw,40px)}

/* Hero, on ink, with the prism. */
.blueprysm-landing .lp-hero{
  --hero-image:-webkit-image-set(
    url("/wp-content/themes/blueprysm/assets/hero-prism-1280.jpg") 1x,
    url("/wp-content/themes/blueprysm/assets/hero-prism-2560.jpg") 2x);
  --hero-image:image-set(
    url("/wp-content/themes/blueprysm/assets/hero-prism-1280.jpg") 1x,
    url("/wp-content/themes/blueprysm/assets/hero-prism-2560.jpg") 2x);
  position:relative;isolation:isolate;background:var(--ink);color:#FFFFFF;
  padding:clamp(56px,8vw,112px) 0 clamp(48px,6vw,80px)}
.blueprysm-landing .lp-hero::before,
.blueprysm-landing .lp-hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.blueprysm-landing .lp-hero::before{background-image:var(--hero-image);background-size:cover;background-position:right center;background-repeat:no-repeat}
.blueprysm-landing .lp-hero::after{background:linear-gradient(100deg,var(--ink) 0%,var(--ink) 54%,rgba(18,20,26,.9) 64%,rgba(18,20,26,.5) 78%,rgba(18,20,26,.08) 92%)}
@media(max-width:860px){.blueprysm-landing .lp-hero::after{background:linear-gradient(180deg,rgba(18,20,26,.94) 0%,rgba(18,20,26,.86) 70%,rgba(18,20,26,.7) 100%)}}
.blueprysm-landing .lp-eyebrow{font-size:var(--fs-2xs);color:var(--sky);margin:0 0 22px;max-width:60ch}      /* 10.47:1 */
.blueprysm-landing .lp-hero h1{font-size:clamp(2.2rem,5.6vw,3.9rem);letter-spacing:-.04em;line-height:1.04;margin:0 0 clamp(22px,3vw,34px);max-width:19ch;color:#FFFFFF}
.blueprysm-landing .lp-lead{color:#C3C7D0;font-size:var(--fs-md);max-width:40rem;margin:0 0 28px}            /* 10.87:1 */
.blueprysm-landing .lp-cta-row{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 18px}
.blueprysm-landing .lp-btn{display:inline-block;font-size:var(--fs-sm);font-weight:500;padding:14px 26px;border:1px solid transparent;text-decoration:none}
.blueprysm-landing .lp-btn.fill{background:var(--accent);color:#FFFFFF}
.blueprysm-landing .lp-btn.fill:hover{background:var(--accent-deep)}
.blueprysm-landing .lp-hero .lp-btn.line{border-color:#5F6472;color:#FFFFFF}
.blueprysm-landing .lp-hero .lp-btn.line:hover{border-color:#FFFFFF}
.blueprysm-landing .lp-promise{color:#A9AFBC;font-size:var(--fs-xs);margin:0}

/* Sections on paper. */
.blueprysm-landing .lp-section{padding:clamp(44px,6vw,80px) 0;border-top:1px solid var(--rule)}
.blueprysm-landing .lp-alt{background:var(--surface-2)}
.blueprysm-landing .lp-two{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:clamp(28px,5vw,64px);align-items:start}
.blueprysm-landing .lp-two .lp-span{grid-column:1/-1}
@media(max-width:860px){.blueprysm-landing .lp-two{grid-template-columns:1fr}}

.blueprysm-landing .lp-checks{list-style:none;margin:0;padding:0;max-width:var(--col)}
.blueprysm-landing .lp-checks li{padding:12px 0 12px 24px;border-bottom:1px solid var(--rule);position:relative;font-size:var(--fs-base)}
.blueprysm-landing .lp-checks li:before{content:"";position:absolute;left:0;top:22px;width:10px;height:2px;background:var(--accent)}

.blueprysm-landing .lp-aside{background:var(--surface);border:1px solid var(--rule);padding:22px 24px;font-size:var(--fs-sm)}
.blueprysm-landing .lp-k{font-size:var(--fs-3xs);color:var(--accent);margin:0 0 10px}
.blueprysm-landing .lp-link{color:var(--accent);font-weight:500;text-decoration:none}
.blueprysm-landing .lp-link:hover{text-decoration:underline}

/* The explainer table. */
.blueprysm-landing .lp-tablewrap{overflow-x:auto}
.blueprysm-landing .lp-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);line-height:var(--lh-body);min-width:640px}
.blueprysm-landing .lp-table th,.blueprysm-landing .lp-table td{text-align:left;vertical-align:top;padding:14px 16px 14px 0;border-bottom:1px solid var(--rule)}
.blueprysm-landing .lp-table thead th{font-family:var(--mono);font-size:var(--fs-2xs);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);font-weight:500;border-bottom:1px solid var(--rule-2)}
.blueprysm-landing .lp-table tbody th{font-weight:600;color:var(--ink);width:22%}
.blueprysm-landing .lp-table td{color:var(--ink-2)}

/* Tracks, modules, formats. */
.blueprysm-landing .lp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.blueprysm-landing .lp-card{display:block;background:var(--surface);border:1px solid var(--rule);padding:22px;text-decoration:none;color:var(--ink)}
.blueprysm-landing .lp-card:hover{border-color:var(--accent)}
.blueprysm-landing .lp-card p{color:var(--ink-2);font-size:var(--fs-sm)}
.blueprysm-landing .lp-more{color:var(--accent);font-size:var(--fs-sm);font-weight:500}
.blueprysm-landing .lp-modules,.blueprysm-landing .lp-steps{list-style:none;margin:0;padding:0;max-width:var(--col)}
.blueprysm-landing .lp-modules li,.blueprysm-landing .lp-steps li{display:grid;grid-template-columns:44px 1fr;gap:10px;padding:16px 0;border-bottom:1px solid var(--rule)}
.blueprysm-landing .lp-steps-small li{padding:12px 0}
.blueprysm-landing .lp-steps-small h3{font-size:var(--fs-base)}
.blueprysm-landing .lp-steps-small p{font-size:var(--fs-sm);color:var(--ink-2)}
.blueprysm-landing .lp-n{font-size:var(--fs-2xs);color:var(--accent);padding-top:6px}
.blueprysm-landing .lp-modules p,.blueprysm-landing .lp-steps p{color:var(--ink-2);margin:0}
.blueprysm-landing .lp-formats{display:grid;gap:14px}
.blueprysm-landing .lp-panel{background:var(--surface);border:1px solid var(--rule);padding:20px 22px}
.blueprysm-landing .lp-panel p{color:var(--ink-2);font-size:var(--fs-sm);margin:0 0 10px}
.blueprysm-landing .lp-scope{font-size:var(--fs-3xs);color:var(--ink-3)}

/* Proof. */
.blueprysm-landing .lp-figs{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin:0 0 26px}
.blueprysm-landing .lp-fig{display:block;background:var(--surface);border:1px solid var(--rule);border-left:3px solid var(--accent);padding:20px 22px;text-decoration:none;color:var(--ink)}
.blueprysm-landing .lp-fig:hover{border-color:var(--accent)}
.blueprysm-landing .lp-fig .v{display:block;font-size:var(--fs-xl);font-weight:600;letter-spacing:-.03em;line-height:1.1;margin:0 0 8px}
.blueprysm-landing .lp-fig .l{display:block;color:var(--ink-2);font-size:var(--fs-sm);margin:0 0 10px}
.blueprysm-landing .lp-fig .rc{display:block;font-size:var(--fs-3xs);color:var(--accent)}
.blueprysm-landing .lp-rows{max-width:var(--col)}
.blueprysm-landing .lp-row{display:grid;grid-template-columns:88px 1fr 24px;gap:14px;align-items:start;padding:14px 0;border-top:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.blueprysm-landing .lp-row:last-child{border-bottom:1px solid var(--rule)}
.blueprysm-landing .lp-kind{font-size:var(--fs-3xs);color:var(--ink-3);padding-top:5px}
.blueprysm-landing .lp-row-body b{display:block;font-weight:600}
.blueprysm-landing .lp-row-body span{display:block;color:var(--ink-2);font-size:var(--fs-sm)}
.blueprysm-landing .lp-go{color:var(--accent);padding-top:2px}
.blueprysm-landing .lp-row:hover b{color:var(--accent)}

/* The form. */
.blueprysm-landing .lp-enquire{scroll-margin-top:72px}
.blueprysm-landing .lp-enquire .lp-two{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
@media(max-width:860px){.blueprysm-landing .lp-enquire .lp-two{grid-template-columns:1fr}}
.blueprysm-landing .lp-formbox .bp-legal{max-width:none}
.blueprysm-landing .lp-formbox{background:var(--surface);border:1px solid var(--rule);padding:clamp(20px,3vw,32px)}
.blueprysm-landing .lp-formbox .bp-form{max-width:none}
.blueprysm-landing .bp-form .btn{display:inline-block;background:var(--accent);color:#FFFFFF;border:0;font-size:var(--fs-sm);font-weight:500;padding:14px 26px;cursor:pointer}
.blueprysm-landing .bp-form .btn:hover{background:var(--accent-deep)}

/* Questions. */
.blueprysm-landing .lp-faq{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px 40px;max-width:68rem}
.blueprysm-landing .lp-qa h3{font-size:var(--fs-base);margin:0 0 6px}
.blueprysm-landing .lp-qa p{color:var(--ink-2);font-size:var(--fs-sm);margin:0}

.site-footer-landing{margin-top:0}
