@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#151647;--purple:#5f3293;--blue:#3551a3;--lav:#f1edf8;--muted:#626275}*{box-sizing:border-box}body{margin:0;color:var(--navy);background:#fff;font-family:'DM Sans',Arial,sans-serif;line-height:1.7}h1,h2,h3{font-family:Manrope,Arial,sans-serif;line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(40px,5vw,72px);font-weight:800;margin:20px 0 24px}h2{font-size:clamp(32px,3.3vw,48px);margin:12px 0 22px}h3{font-size:24px}p{color:var(--muted);margin:0 0 22px}a{color:inherit}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.wrap{max-width:1200px;margin:auto;padding:0 32px}header{border-bottom:1px solid #eceaf2;background:white}nav{display:flex;align-items:center;justify-content:space-between;min-height:114px;gap:30px}.logo{width:220px;display:block}.links{display:flex;align-items:center;gap:26px}.links a{text-decoration:none;font-size:14px;font-weight:600}.links a[aria-current=page]{color:var(--purple);text-decoration:underline;text-underline-offset:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:16px 24px;background:var(--purple);color:white;border:0;border-radius:6px;text-decoration:none;font-weight:700;line-height:1.4;cursor:pointer}.btn:hover{background:#482371}.btn.light{background:white;color:var(--navy)}.textlink{font-weight:700;text-underline-offset:5px}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:12px;font-weight:800;color:var(--purple)}.hero{padding:70px 0 76px;background:linear-gradient(110deg,#faf9fd 0%,#f2eef9 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:70px}.hero p{font-size:18px;max-width:590px}.hero em{font-style:normal;color:var(--purple)}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:30px 0 18px}.micro{font-size:13px!important}.portrait{position:relative;padding:34px 25px 0;background:#ddd2ed;border-radius:180px 180px 12px 12px;max-width:420px;margin:auto}.portrait img{width:100%;display:block;border-radius:155px 155px 0 0}.portrait .caption{position:relative;margin:0 -25px;background:var(--navy);padding:22px 28px;color:white;border-radius:0 0 12px 12px}.caption strong{font-size:22px}.caption span{display:block;color:#d9d3ea;font-size:13px}.band{border-bottom:1px solid #eceaf2;padding:22px 0}.band .wrap{display:flex;justify-content:space-between;gap:20px;font-size:13px;font-weight:600}.section{padding:88px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.intro{max-width:690px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}.card{padding:38px;background:var(--lav);border-radius:10px}.card.blue{background:#eef2fb}.card .num{font-size:13px;color:var(--purple);letter-spacing:.12em;font-weight:700}.card h3{margin:24px 0 16px}.card ul{padding-left:20px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:46px}.step{border-top:2px solid #cfc3e4;padding-top:24px}.step b{color:var(--purple);font-size:15px}.tint{background:#faf9fc}.dark{background:var(--navy);color:white}.dark p{color:#d5d3e3}.dark .eyebrow{color:#c5a9ee}.quote{font-size:clamp(27px,3vw,40px);line-height:1.4;font-weight:600;letter-spacing:-.03em;margin:0 0 25px}.about-img{width:100%;max-width:330px;border-radius:12px}.cta{padding:65px 0;background:var(--purple);color:white}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:50px}.cta h2{max-width:680px;margin-bottom:12px}.cta p{color:#eee5fa;margin:0}.cta .btn{white-space:nowrap}footer{padding:50px 0 25px}footer .foot{display:flex;justify-content:space-between;gap:40px}footer p,footer a{font-size:14px}footer .fine{border-top:1px solid #e9e7ef;margin-top:32px;padding-top:20px;font-size:12px;color:var(--muted)}details{border-bottom:1px solid #dfdce8;padding:23px 0}summary{font-weight:700;font-size:18px;cursor:pointer}details p{padding:16px 30px 0 0;margin:0}.pagehero{padding:65px 0;background:var(--lav)}.pagehero h1{max-width:900px;font-size:clamp(40px,5vw,62px)}.pagehero p{max-width:700px;font-size:18px}.listrow{padding:30px 0;border-bottom:1px solid #e3dfea}.listrow h3{margin:0 0 12px}.listrow p{margin:0}.credentials{padding:30px;border-left:4px solid var(--purple);background:var(--lav);margin-top:30px}.credentials p:last-child{margin:0}.formbox{padding:35px;background:var(--lav);border-radius:12px}label{display:block;font-size:14px;font-weight:700;margin:16px 0 6px}input,select,textarea{width:100%;font:inherit;padding:12px;border:1px solid #c9c4d5;border-radius:5px;background:white;color:var(--navy)}textarea{min-height:130px}.menu{display:none}.formbox .btn{margin-top:20px}
@media(max-width:900px){.links{gap:14px}.links a{font-size:12px}.logo{width:170px}.hero-grid{gap:30px}.split{gap:35px}.wrap{padding:0 24px}}@media(max-width:700px){nav{min-height:88px;flex-wrap:wrap;padding:15px 0}.logo{width:175px}.menu{display:block;background:none;border:1px solid #ddd;padding:8px 14px;border-radius:4px;color:var(--navy);font:inherit}.links{display:none;width:100%;flex-direction:column;align-items:stretch;padding:15px 0}.links.open{display:flex}.links a{font-size:15px;padding:8px}.hero{padding:44px 0}.hero-grid,.split,.cards,.steps{grid-template-columns:1fr}.hero-grid{gap:34px}.portrait{max-width:330px}.section{padding:56px 0}.band .wrap{flex-direction:column;gap:8px}.cards{gap:18px}.card{padding:28px}.steps{gap:20px}.cta .wrap,footer .foot{flex-direction:column;align-items:flex-start;gap:28px}.cta{padding:45px 0}.pagehero{padding:40px 0}.actions{gap:18px}.wrap{padding:0 22px}}

.skip-link{position:absolute;left:-10000px}.skip-link:focus{left:12px;top:12px;z-index:10000;background:white;padding:12px}.tcc-menu{display:contents;list-style:none}.tcc-menu li{list-style:none;margin:0}.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.hero-copy p{max-width:660px}

/* Brand illustration and custom line icons — all decorative. */
.hero,.pagehero,.cta,.dark{position:relative;isolation:isolate}.hero>.wrap,.pagehero>.wrap,.cta>.wrap,.dark>.wrap{position:relative;z-index:1}
.hero:before{content:"";position:absolute;width:700px;height:700px;border:1px solid #5f329315;border-radius:50%;right:-280px;top:-310px;box-shadow:0 0 0 65px #5f329306,0 0 0 130px #5f329305;pointer-events:none}
.hero h1 em{position:relative;display:inline-block}.hero h1 em:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:13px;border-top:3px solid #ad8bc9;border-radius:50%;transform:rotate(-2deg)}
.portrait{box-shadow:0 24px 60px #15164712;transform:rotate(1deg)}.portrait img,.portrait .caption{transform:none}.brand-seal{position:absolute;z-index:2;width:104px;height:104px;left:-42px;top:34px;border-radius:50%;background:#fff url('brand-mark.svg') center/78% no-repeat;box-shadow:0 8px 28px #15164715;outline:1px dashed #b49acb;outline-offset:-9px;transform:rotate(-12deg)}
.pagehero{overflow:hidden;background:linear-gradient(115deg,#f4effa,#f9f7fc)}.pagehero:after{content:"";position:absolute;right:-25px;top:8%;width:340px;height:300px;background:url('brand-mark.svg') center/contain no-repeat;opacity:.07;transform:rotate(-14deg);pointer-events:none}
.service-icon,.step-icon{display:block;width:62px;height:62px;background:#fff url('icon-compass.svg') center/38px no-repeat;border-radius:18px 18px 18px 4px;margin-bottom:23px;box-shadow:0 5px 16px #15164707}.card:nth-child(2n) .service-icon{background-image:url('icon-school.svg')}.card:nth-child(3n) .service-icon{background-image:url('icon-book.svg')}.card:nth-child(4n) .service-icon{background-image:url('icon-chat.svg')}.card{position:relative;overflow:hidden;border:1px solid #5f32930d;box-shadow:0 10px 28px #15164704;transition:transform .2s,box-shadow .2s}.card:after{content:"";position:absolute;width:130px;height:130px;right:-75px;top:-70px;border:20px solid #5f329307;border-radius:50%;pointer-events:none}.card:hover{transform:translateY(-4px);box-shadow:0 14px 30px #1516470c}.card h3{margin-top:15px}
.steps{position:relative;gap:30px}.step{position:relative;border:0;background:#fff;border-radius:12px;padding:32px;box-shadow:0 8px 35px #15164705}.step-icon{background-color:#f3eef8}.step:nth-child(2) .step-icon{background-image:url('icon-book.svg')}.step:nth-child(3) .step-icon{background-image:url('brand-mark.svg');background-size:48px}.step b{position:absolute;right:28px;top:35px;font-family:Manrope,sans-serif;font-size:36px;line-height:1;color:#d8cce7}.step h3{margin-top:20px}.step p:last-child{margin-bottom:0}
.band span{display:flex;align-items:center;gap:12px}.band span:before{content:"";width:23px;height:23px;flex:none;background:url('icon-spark.svg') center/contain no-repeat}.band span:nth-child(2):before{background-image:url('icon-chat.svg')}.band span:nth-child(3):before{background-image:url('icon-school.svg')}
.dark{overflow:hidden}.dark:after{content:"";position:absolute;right:-70px;bottom:-130px;width:400px;height:400px;background:#fff;mask:url('brand-mark.svg') center/contain no-repeat;opacity:.045;transform:rotate(-15deg);pointer-events:none}.quote{border-left:3px solid #af8bd1;padding-left:25px}
.cta{overflow:hidden;background:linear-gradient(110deg,#43216c,#5f3293 60%,#3551a3)}.cta:before{content:"";position:absolute;width:370px;height:370px;left:-190px;top:-170px;border:1px solid #ffffff28;border-radius:50%;box-shadow:0 0 0 38px #ffffff06,0 0 0 76px #ffffff04}.cta:after{content:"";position:absolute;width:260px;height:200px;right:21%;bottom:-70px;background:white;mask:url('brand-mark.svg') center/contain no-repeat;opacity:.065;transform:rotate(12deg);pointer-events:none}
.arrow-icon{display:inline-block;width:17px;height:17px;background:currentColor;mask:url('icon-arrow.svg') center/contain no-repeat;vertical-align:middle;flex:none}.textlink .arrow-icon{margin-left:7px}.btn{box-shadow:0 5px 16px #5f32931a}.btn:hover .arrow-icon{transform:translate(2px,-2px)}.arrow-icon{transition:transform .2s}
@media(max-width:700px){.brand-seal{width:78px;height:78px;left:-15px;top:24px}.portrait{max-width:310px}.pagehero:after{width:200px;right:-70px;top:auto;bottom:-50px;opacity:.045}.step{padding:28px}.band .wrap{gap:16px}.service-icon{width:55px;height:55px;background-size:34px}.hero h1 em:after{bottom:-7px}.cta:after{right:-70px}.steps{gap:18px}}
@media(prefers-reduced-motion:reduce){.card,.arrow-icon{transition:none}.card:hover{transform:none}}

.step b{position:static;display:block;font-size:13px;line-height:1.5;letter-spacing:.08em;color:var(--purple);margin:0 0 14px}.step h3{margin-top:0}

.card-photo{display:block;width:calc(100% + 76px);max-width:none;height:auto;aspect-ratio:3/2;object-fit:cover;margin:-38px -38px 30px}.card:has(.card-photo) .service-icon{position:relative;margin-top:-61px;border:5px solid var(--lav);width:68px;height:68px;margin-bottom:20px}.card.blue:has(.card-photo) .service-icon{border-color:#eef2fb}.card:has(.card-photo):after{display:none}@media(max-width:700px){.card-photo{width:calc(100% + 56px);margin:-28px -28px 30px}}

/* Planning tools and the reversible light-design trial. */
[hidden]{display:none!important}.journey{background:#fff}.stage-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0 24px}.stage-button{font:inherit;font-weight:700;color:var(--purple);background:white;border:1px solid #d8cde5;border-radius:30px;padding:12px 22px;cursor:pointer}.stage-button[aria-pressed=true]{background:var(--purple);color:white;border-color:var(--purple)}.stage-panel{padding:35px;background:#f7f4fb;border:1px solid #e9e0f2;border-radius:22px}.stage-panel h3{font-size:29px;margin:12px 0 20px}.next-steps{padding-left:22px;color:var(--muted);margin-bottom:30px}.next-steps li{padding:0 0 14px 8px}.tool-sheet{background:white;padding:28px;border-radius:15px}.tool-sheet h3{margin-top:0}.checkline{display:flex;align-items:flex-start;gap:12px;font-weight:400;margin:13px 0;font-size:14px;line-height:1.5}.checkline input{width:19px;height:19px;flex:none;margin:2px 0;accent-color:var(--purple)}.check-progress,.score-progress{font-size:13px;font-weight:700;color:var(--purple);margin:22px 0 16px}.tool-note{font-size:13px;max-width:850px;margin:24px 0 0}.experience{background:#faf8fc}.experience-intro{display:flex;align-items:center;gap:30px;max-width:950px}.experience-intro img{border-radius:50%;object-fit:cover;flex:none}.experience-intro h2{font-size:36px}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:30px 0}.experience-grid article{padding-left:22px;border-left:2px solid #d3bedf}.experience-grid h3{font-size:20px;letter-spacing:-.02em;margin-top:0}.experience-grid p{font-size:15px}.tool-links{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0}.tool-links a{display:flex;flex-direction:column;gap:10px;padding:28px;background:white;border:1px solid #e8e0ef;border-radius:16px;text-decoration:none}.tool-links a:hover{border-color:var(--purple);box-shadow:0 5px 20px #15164708}.tool-links strong{font-size:20px;line-height:1.3}.tool-links span:last-child{font-size:14px;color:var(--muted)}.tool-number{color:var(--purple);font-weight:800;font-size:14px}.tool-detail{scroll-margin-top:30px;border:1px solid #ded5e8;border-radius:14px;padding:0;margin:20px 0;background:white}.tool-detail summary{padding:24px}.tool-detail .tool-sheet{padding:0 28px 28px}.tool-detail p{padding:0}.score-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 24px}.score-grid p{margin-bottom:8px}.tool-sheet textarea{min-height:100px}.trusted-links{margin-top:40px}.trusted-links li{margin:10px 0}
.tcc-light-trial .dark{background:#f4eff8;color:var(--navy);padding:62px 0}.tcc-light-trial .dark p,.tcc-light-trial .dark .quote{color:var(--navy)!important}.tcc-light-trial .dark p:not(.quote){color:var(--muted)!important;max-width:48ch}.tcc-light-trial .dark .eyebrow{color:var(--purple)}.tcc-light-trial .dark .quote{font-size:clamp(25px,2.6vw,34px);line-height:1.45}.tcc-light-trial .dark:after{background:var(--purple);opacity:.035}.tcc-light-trial .dark h2{font-size:clamp(29px,3vw,40px)}.tcc-light-trial .cta{background:#faf8fc;color:var(--navy);border-top:1px solid #e8e0ef}.tcc-light-trial .cta p{color:var(--muted)}.tcc-light-trial .cta .btn{background:var(--purple);color:white}.tcc-light-trial .cta:after{background:var(--purple);opacity:.04}.tcc-light-trial .steps:before{content:"";position:absolute;left:8%;right:8%;height:70px;top:-28px;border-top:2px dashed #c5aedb;border-radius:50%;pointer-events:none}.tcc-light-trial .step{border:1px solid #eee7f4}.tcc-light-trial .steps:after{content:"";position:absolute;top:-46px;left:calc(50% - 25px);width:50px;height:40px;background:#faf9fc url('brand-mark.svg') center/contain no-repeat;pointer-events:none}
@media(max-width:700px){.stage-panel{padding:22px}.stage-panel .split{gap:24px}.tool-sheet{padding:20px}.stage-button{padding:10px 16px;font-size:14px}.experience-intro{align-items:flex-start;gap:20px;flex-direction:column}.experience-grid,.tool-links,.score-grid{grid-template-columns:1fr}.experience-intro h2{font-size:30px}.tool-detail summary{padding:20px}.tool-detail .tool-sheet{padding:0 20px 20px}.tcc-light-trial .steps:before,.tcc-light-trial .steps:after{display:none}.tcc-light-trial .dark{padding:48px 0}}

/* Clip decorative artwork without creating nested keyboard-scroll containers. */
.hero,.pagehero,.dark,.cta{overflow:clip}
