/* Phase 1 commercial layer. Keep legacy tools and secondary-page styling intact. */
.phase-site { --accent:#5742b8; --accent-h:#44328f; --text:#211d2b; --mid:#585361; --muted:#625b70; --brand-panel:#322154; color:var(--text); background:#fcfbfe; }
.phase-site [hidden] { display:none !important; }
.phase-site a { text-underline-offset:4px; }
.phase-site :focus-visible { outline:3px solid #8368d9 !important; outline-offset:4px; }
.phase-site h1,.phase-site h2,.phase-site h3 { color:inherit; }
.phase-site h1 { font-size:clamp(2.4rem,4.7vw,4.5rem); line-height:1.06; letter-spacing:-.045em; font-weight:600; max-width:17ch; }
.phase-site h2 { font-size:clamp(1.9rem,3.2vw,3rem); line-height:1.13; letter-spacing:-.035em; font-weight:500; }
.phase-site h3 { font-size:1.35rem; line-height:1.3; letter-spacing:-.02em; font-weight:600; }
.phase-site p { line-height:1.7; }
.phase-site .btn { font-size:.96rem; min-height:48px; border-radius:8px; padding:13px 20px; gap:12px; box-shadow:none; background-image:none; white-space:normal; line-height:1.35; }
.phase-site .btn-dark,.phase-site .btn-orange { background:var(--accent); color:#fff; border:1px solid var(--accent); }
.phase-site .btn-dark:hover,.phase-site .btn-orange:hover { background:var(--accent-h); transform:translateY(-1px); box-shadow:none; }
.phase-site .btn:active { transform:translateY(1px); }
.phase-site .btn-outline { color:var(--accent); border-color:#c8bedc; }
.skip-link { position:fixed; top:8px; left:12px; z-index:500; padding:12px 20px; color:#fff; background:#322154; transform:translateY(-150%); }
.skip-link:focus { transform:none; }
.phase-site .nav { top:0; padding:0; margin:0; border-radius:0; background:#fcfbfe; border-bottom:1px solid #e3deeb; box-shadow:none; backdrop-filter:none; }
.phase-site .nav-inner { height:92px; max-width:1240px; margin:auto; padding:0 32px; gap:24px; border-radius:0; background:none; box-shadow:none; }
.phase-site .logo-mark { width:202px; height:auto; max-height:70px; object-fit:contain; }
.phase-site .nav-links { display:flex; align-items:center; gap:28px; padding:0; background:none; border:0; border-radius:0; list-style:none; }
.phase-site .nav-links a { color:#383142; font-size:.95rem; padding:12px 0; text-decoration:none; }
.phase-site .nav-links a:hover { color:var(--accent); background:none; }
.phase-site .nav-right { gap:12px; }
.phase-site .nav-toggle { color:#322154; font-family:inherit; font-size:1rem; font-weight:600; min-width:48px; min-height:48px; border:1px solid #d7cfe5; border-radius:6px; padding:8px 12px; background:transparent; }
.phase-site .nav-links .mobile-booking { display:none; }
.p-shell { max-width:1200px; margin:0 auto; padding:0 32px; }
.p-section { padding:80px 0; scroll-margin-top:100px; }
.p-section p+p { margin-top:18px; }
.p-section h2 { margin-bottom:24px; }
.p-section p { color:var(--mid); max-width:65ch; font-size:1.05rem; }
.p-eyebrow { font-size:.76rem !important; text-transform:uppercase; letter-spacing:.13em; color:var(--accent) !important; font-weight:600; margin-bottom:22px; }
.p-small { font-size:.9rem !important; color:var(--mid); }
.p-actions { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin-top:28px; }
.p-text-link { display:inline-flex; align-items:center; gap:12px; color:var(--accent); font-size:1rem; font-weight:500; min-height:44px; text-decoration:underline; border:0; background:none; font-family:inherit; cursor:pointer; }
.p-hero { padding:58px 0 52px; }
.hero-layout { display:grid; grid-template-columns:1.55fr 1fr; gap:72px; align-items:center; }
.p-hero h1 span { color:var(--accent); display:block; }
.hero-intro { font-size:1.15rem; color:var(--mid); max-width:48ch; margin-top:24px; }
.hero-note { font-size:.86rem; color:var(--mid); margin-top:22px; }
.hero-portrait { margin:0; position:relative; border-radius:14px; overflow:hidden; background:#201c37; }
.hero-portrait img { display:block; width:100%; height:430px; object-fit:cover; object-position:50% 42%; }
.hero-portrait figcaption { padding:17px 22px; color:#fff; background:#322154; display:flex; flex-direction:column; gap:2px; }
.hero-portrait figcaption strong { font-size:1.05rem; font-weight:500; }
.hero-portrait figcaption span { font-size:.85rem; color:#e1d9f1; }
.credibility { border-top:1px solid #e3deeb; border-bottom:1px solid #e3deeb; background:#f3f0f8; }
.credibility-layout { display:grid; grid-template-columns:1.3fr .85fr 1fr; gap:36px; align-items:center; padding-top:22px; padding-bottom:22px; }
.credential { display:flex; align-items:center; gap:18px; text-decoration:none; color:inherit; }
.credential img { width:82px; height:82px; flex-shrink:0; }
.credential strong { line-height:1.35; font-size:.97rem; }
.credential small { display:block; color:var(--accent); margin-top:6px; text-decoration:underline; }
.credibility-layout>div { border-left:1px solid #d8d0e7; padding-left:32px; }
.credibility-layout>div strong { display:block; font-size:1.1rem; line-height:1.4; font-weight:500; }
.credibility-layout>div>span { display:block; font-size:.86rem; margin-top:6px; color:var(--mid); }
.p-split { display:grid; grid-template-columns:1fr 1.15fr; gap:80px; }
.p-checklist { list-style:none; margin:24px 0; }
.p-checklist li { border-top:1px solid #e3deeb; padding:15px 0 15px 22px; position:relative; }
.p-checklist li:before { content:'—'; position:absolute; left:0; color:var(--accent); }
.p-tinted { background:#f1edf8; }
.platform-grid { display:grid; grid-template-columns:1fr 1fr; gap:0; margin-top:42px; border-top:1px solid #cfc5e0; border-bottom:1px solid #cfc5e0; }
.platform-grid article { padding:32px 36px 32px 0; }
.platform-grid article+article { padding:32px 0 32px 36px; border-left:1px solid #cfc5e0; }
.platform-label { display:block; color:var(--accent); font-size:.8rem; margin-bottom:18px; font-weight:600; }
.platform-grid h3 { max-width:28ch; margin-bottom:16px; }
.platform-grid p { font-size:.97rem; }
.platform-grid .p-text-link { margin-top:14px; }
.acquisition-flow { list-style:none; display:grid; grid-template-columns:repeat(4,1fr); margin:36px 0; padding:24px 0; gap:20px; }
.acquisition-flow li { font-size:1.1rem; font-weight:500; }
.acquisition-flow span { font-size:.75rem; display:block; color:var(--accent); margin-bottom:8px; }
.delivery-grid { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.delivery-grid h3 { font-size:1.12rem; margin-bottom:10px; }
.delivery-grid p { font-size:.96rem; }
.p-details { border-bottom:1px solid #d8cfe4; padding:18px 0; }
.p-details:first-of-type { margin-top:24px; border-top:1px solid #d8cfe4; }
.p-details summary { cursor:pointer; font-weight:500; min-height:28px; padding:4px 28px 4px 0; }
.p-details p { padding-top:14px; font-size:.95rem; }
.offer-row { display:grid; grid-template-columns:1fr 1.15fr; gap:80px; }
.offer-row .p-text-link { margin-top:18px; }
.p-process { color:var(--accent) !important; font-weight:500; font-size:.94rem !important; }
.p-border { border-top:1px solid #e3deeb; }
.p-ink { background:#322154; color:#fff; }
.p-ink p { color:#e1d9ed; }
.p-ink .p-eyebrow { color:#d4c4f6 !important; }
.p-ink .p-text-link { color:#fff; margin-top:22px; }
.work-resource { display:block; color:#fff; text-decoration:none; border-top:1px solid #68567f; margin-top:32px; padding-top:24px; }
.work-resource span { display:block; font-size:.78rem; color:#d4c4f6; margin-bottom:8px; }
.work-resource strong { font-weight:500; font-size:1.2rem; }
.work-resource p { font-size:.9rem; margin-top:8px; }
.journey-list { margin:36px 0 24px; }
.journey-list article { display:grid; grid-template-columns:54px 1fr; padding:24px 0; border-top:1px solid #e3deeb; gap:24px; scroll-margin-top:100px; }
.journey-list article>span { color:var(--accent); font-size:.85rem; padding-top:5px; }
.journey-list h3 { margin-bottom:10px; }
.journey-list p { max-width:78ch; }
.anchor-alias { display:block; scroll-margin-top:100px; }
.faq-shell { max-width:890px; }
.contact-section { background:#eee8f6; }
.p-contact-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:70px; }
.p-contact-grid .btn { margin-top:24px; }
.contact-alternatives { font-size:.93rem !important; margin-top:26px; }
.contact-alternatives a,.p-small a,.p-section p a { color:var(--accent); }
.contact-form-card { background:#fff !important; border:1px solid #dfd6eb !important; padding:30px !important; border-radius:12px !important; box-shadow:none !important; }
.contact-form-card:before { display:none !important; }
.contact-form-card>p { font-size:.92rem; margin-top:10px; margin-bottom:24px; }
.p-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.p-full { grid-column:1/-1; }
.p-form label { display:block; font-size:.9rem; font-weight:500; margin-bottom:7px; }
.p-form label span { font-weight:400; font-size:.8rem; color:var(--mid); }
.p-form input,.p-form select,.p-form textarea { width:100%; min-height:48px; border:1px solid #cfc7dc; border-radius:6px; padding:11px 12px; font:inherit; font-size:1rem; background:#fff; color:var(--text); }
.p-form textarea { resize:vertical; }
.p-form [aria-invalid=true] { border-color:#a32331; }
.p-form .btn { margin-top:0; width:100%; }
.p-form .p-small { font-size:.78rem !important; margin-top:14px; }
.phase-footer { background:#231932; color:#eee8f6; padding:56px 0 22px; }
.footer-grid { display:grid; grid-template-columns:1.35fr 1fr 1fr; gap:50px; }
.footer-grid a { display:block; color:#e5ddef; text-decoration:none; font-size:.91rem; padding:6px 0; overflow-wrap:anywhere; }
.footer-grid a:hover { text-decoration:underline; }
.footer-grid h2 { font-size:.95rem; letter-spacing:0; margin-bottom:14px; font-weight:500; color:#fff; }
.footer-grid p { font-size:.9rem; color:#c8bbd6; margin:16px 0; }
.footer-grid .footer-wordmark { font-size:1.45rem; color:#fff; letter-spacing:-.025em; }
.footer-wordmark span { display:block; font-size:.8rem; letter-spacing:0; color:#c8bbd6; }
.footer-base { border-top:1px solid #554262; display:flex; justify-content:space-between; gap:20px; margin-top:36px; padding-top:20px; font-size:.8rem; color:#c8bbd6; }
.footer-base a { color:inherit; }
.privacy-copy { max-width:820px; }
.privacy-copy h2 { font-size:1.45rem; margin:32px 0 12px; }
.privacy-copy h1 { margin-bottom:24px; }
.analytics-notice { position:fixed; z-index:350; bottom:16px; left:16px; right:16px; max-width:620px; background:#fff; border:1px solid #d4c9e3; border-radius:10px; padding:20px; box-shadow:0 8px 30px #23193222; }
.analytics-notice p { font-size:.92rem; margin-bottom:14px; }
.analytics-notice .p-actions { margin:0; gap:12px; }
/* Shared safety fixes for preserved service and resource pages. */
.phase-site .page-title em,.phase-site .sec-title em,.phase-site .muted-word { color:#625184; }
.phase-site .section-dark { background:#322154; }
.phase-site .section-dark .sec-title,.phase-site .section-dark h2 { color:#fff; }
.phase-site .section-dark p { color:#e1d9ed; }
.phase-site .section-dark a { color:#fff; }
.phase-site .section-dark .fi { background:#fff; color:#211d2b; }
.phase-site .section-dark .flabel { color:#fff; }
.phase-site .page-hero { padding:64px 0; background:#f1edf8; }
.phase-site .section { scroll-margin-top:100px; }
.phase-site .page-proof-card { background:#322154; box-shadow:none; }
.phase-site .page-proof-card h2 { color:#fff; }
.phase-site .page-proof-card p,.phase-site .page-proof-card li { color:#e8e0f2; }
.phase-site .page-proof-kicker { color:#d4c4f6; }
.phase-site .reveal,.phase-site .motion-card { opacity:1; transform:none; transition:none; animation:none; }
.phase-site .lift-card:hover { transform:none; }
.phase-site .faq-ans[hidden] { display:none; }
.phase-site .wa-float,.phase-site .chat-btn { display:none !important; }
.phase-site .form-status.is-error { color:#a32331; }
.phase-site .form-status.is-success { color:#146b3b; }
.phase-site .section-dark .form-status.is-error { color:#ffb3ba; }
.phase-site .section-dark .form-status.is-success { color:#b8edcc; }
@media (max-width:1000px) {
 .phase-site .nav-inner { gap:16px; padding:0 24px; }
 .phase-site .nav-links { gap:20px; }
 .phase-site .nav-right .btn { font-size:.85rem; padding:12px; }
 .hero-layout { gap:36px; }
 .p-split,.offer-row,.p-contact-grid { gap:40px; }
 .hero-portrait img { height:380px; }
}
@media (max-width:800px) {
 .phase-site .nav-inner { height:76px; }
 .phase-site .logo-mark { width:168px; max-height:58px; }
 .phase-site .nav-toggle { display:block; }
 .phase-site .nav-right .desk { display:none; }
 .phase-site .nav-links { display:none; position:absolute; top:100%; left:16px; right:16px; width:auto; padding:14px 20px; background:#fff; border:1px solid #ded5e8; border-radius:8px; box-shadow:0 10px 24px #23193212; max-height:calc(100dvh - 88px); overflow:auto; }
 .phase-site .nav-links.open { display:flex; flex-direction:column; align-items:stretch; gap:0; }
 .phase-site .nav-links a { display:block; padding:12px 0; min-height:48px; font-size:1rem; }
 .phase-site .nav-links .mobile-booking { display:block; border-top:1px solid #e3deeb; }
 .p-shell { padding:0 24px; }
 .p-section { padding:54px 0; scroll-margin-top:88px; }
 .hero-layout { grid-template-columns:1.3fr .8fr; gap:24px; }
 .hero-portrait img { height:340px; }
 .credibility-layout { grid-template-columns:1fr 1fr; gap:24px; }
 .credential { grid-column:1/-1; }
 .credibility-layout>div { border-left:0; padding:0; }
 .p-split,.offer-row,.p-contact-grid { grid-template-columns:1fr; gap:20px; }
 .footer-grid { grid-template-columns:1fr 1fr; gap:32px; }
 .footer-grid>div:first-child { grid-column:1/-1; }
}
@media (max-width:560px) {
 .p-shell { padding:0 20px; }
 .p-hero { padding:32px 0; }
 .hero-layout { grid-template-columns:1fr; gap:30px; }
 .phase-site h1 { font-size:2.6rem; max-width:16ch; }
 .p-hero .p-eyebrow { font-size:.66rem !important; margin-bottom:16px; }
 .hero-intro { font-size:1.02rem; margin-top:20px; line-height:1.65; }
 .p-actions { gap:14px 24px; margin-top:22px; }
 .hero-note { margin-top:14px; font-size:.8rem; }
 .hero-portrait { display:grid; grid-template-columns:92px 1fr; border-radius:10px; }
 .hero-portrait img { width:92px; height:108px; object-position:50% 30%; }
 .hero-portrait figcaption { justify-content:center; padding:16px; }
 .credibility-layout { padding-top:24px; padding-bottom:24px; gap:20px; }
 .credential img { width:70px; height:70px; }
 .credential strong { font-size:.9rem; }
 .credibility-layout>div strong { font-size:.95rem; }
 .credibility-layout>div>span { font-size:.8rem; }
 .platform-grid,.delivery-grid { grid-template-columns:1fr; }
 .platform-grid article,.platform-grid article+article { padding:26px 0; border-left:0; }
 .platform-grid article+article { border-top:1px solid #cfc5e0; }
 .acquisition-flow { grid-template-columns:1fr 1fr; gap:22px; margin:12px 0 28px; }
 .delivery-grid { gap:24px; }
 .journey-list article { grid-template-columns:28px 1fr; gap:12px; }
 .p-form { grid-template-columns:1fr; }
 .contact-form-card { padding:22px !important; }
 .p-contact-grid { gap:32px; }
 .footer-grid { grid-template-columns:1fr; gap:28px; }
 .footer-base { flex-direction:column; gap:12px; }
 .phase-site .page-title { font-size:2.35rem; }
 .phase-site .page-hero { padding:36px 0; }
 .phase-site .page-actions { align-items:stretch; }
 .phase-site .section-inner { padding-left:20px; padding-right:20px; }
 .analytics-notice { bottom:8px; left:8px; right:8px; padding:16px; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
 .phase-site *, .phase-site *:before, .phase-site *:after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}

.credential .credential-explainer { color:#5d5668; line-height:1.45; margin-top:5px; text-decoration:none; }
.credential-badge-link { flex-shrink:0; }
.credential-link { color:var(--accent); text-decoration:underline; }

