/* Shared public design system. Homepage and dashboard layouts are excluded. */
.public-site{--page-gutter:28px;--wc-bg:#fff;--wc-surface:#fff;--wc-surface-soft:#f7f8fc;--wc-text:#090c1c;--wc-text-muted:#4c5571;--wc-border:#e3e7f0;--wc-brand:#4035ff;--wc-brand-strong:#3023e4;--wc-brand-soft:#efeeff;--wc-radius-sm:6px;--wc-radius-md:8px;--wc-radius-lg:10px;--ac-bg:#fff;--ac-surface:#fff;--ac-text:#090c1c;--ac-muted:#4c5571;--ac-brand:#4035ff;--ac-soft:#efeeff;--ac-border:#e3e7f0;background:#fff;color:#090c1c;line-height:1.6}
.public-site #main-content{min-height:calc(100vh - 174px)}
.public-site :is(a,button,summary,input,select,textarea):focus-visible{outline:2px solid #4035ff;outline-offset:3px}
.public-site :is(.wc-card,.wc-panel){border-color:#e3e7f0;border-radius:8px;box-shadow:0 2px 6px #19274603}
.public-site .wc-card:hover{transform:translateY(-2px);border-color:#c8c4ff;box-shadow:0 8px 24px #29206008}
.public-site :is(.wc-btn-primary,a.bg-slate-900,a.bg-primary,button.bg-primary){background:#4035ff;color:#fff;border-radius:6px;box-shadow:0 3px 8px #4035ff18}
.public-site :is(.wc-input,input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){border-color:#dce1ed;border-radius:6px}
.public-site :is(.text-primary,.text-blue-600,.text-blue-700){color:#4035ff}
.public-site :is(.wc-eyebrow,.public-eyebrow){color:#4035ff;font-size:11px;font-weight:650;letter-spacing:.12em;text-transform:uppercase}
.public-site h1{color:#090c1c;letter-spacing:-.05em;font-weight:700;line-height:1.1}
.public-site h2{letter-spacing:-.035em;color:#090c1c}
.public-site :is(.public-hero,.public-auth-card,.public-info-hero) h1{font-size:clamp(36px,4.2vw,60px)}
.public-site .public-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.public-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:12px 20px;border:1px solid #d8ddea;border-radius:6px;font-size:13px;font-weight:600;background:white;color:#10152a}
.public-button-primary{background:#4035ff;border-color:#4035ff;color:#fff;box-shadow:0 3px 8px #4035ff20}
.public-button:hover{border-color:#4035ff}.public-button-primary:hover{background:#3023e4;color:white}
.public-text-link{color:#4035ff;font-size:13px;font-weight:600;display:inline-flex;gap:12px;align-items:center;min-height:44px}
.public-breadcrumb{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:11px;color:#68718a;margin-bottom:30px}
.public-hero{padding:96px var(--page-gutter) 44px;border-bottom:1px solid #e3e7f0;background:radial-gradient(ellipse at 80% 40%,#f7f7ff,transparent 55%)}
.public-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:6vw;align-items:center}
.public-hero-copy>p:not(.public-eyebrow){max-width:65ch;color:#4c5571;font-size:17px;line-height:1.7;margin-top:20px}
.public-hero-copy h1{margin-top:12px;max-width:20ch}
.public-flow-card{border:1px solid #e3e7f0;border-radius:10px;padding:26px;background:#fff;box-shadow:0 8px 30px #27254c08}
.public-flow-card>p{font-size:11px;color:#68718a;margin-bottom:22px}
.public-flow{display:grid;gap:10px}.public-flow>div{display:grid;grid-template-columns:38px 1fr;gap:2px 12px;align-items:center;padding:18px;border:1px solid #e3e7f0;border-radius:7px;background:white}
.public-flow i{grid-row:span 2;color:#4035ff;font-size:24px}.public-flow strong{font-size:14px;color:#090c1c}.public-flow div>span{font-size:12px;color:#4c5571}.public-flow>span{color:#4035ff;line-height:1;text-align:center}
.public-flow-card .public-flow-foot{display:flex;align-items:center;gap:8px;border-top:1px solid #e3e7f0;margin-top:22px;padding-top:18px;font-size:11px;color:#4c5571}.public-flow-foot i{color:#16a34a}
.public-solutions>.public-sections{padding:40px var(--page-gutter) 56px}
.public-solutions .public-sections>section{max-width:none;margin-inline:0}
.public-solutions .public-sections>section>div.grid{max-width:none}
.public-solutions .public-sections>section>div:first-child.text-center{margin-inline:0;text-align:left;max-width:none}
.public-solutions .public-sections :is(h2,h3){color:#090c1c}
.public-solutions .public-sections h2{font-size:clamp(26px,2.8vw,36px);line-height:1.2}
.public-solutions .public-sections .wc-card>.absolute{position:static;float:right;width:36px;height:36px;background:#efeeff;color:#4035ff;box-shadow:none}
.public-solutions .public-sections section{scroll-margin-top:90px}
.public-solutions .public-sections section[id$=faq-section]{max-width:none}
.public-solutions .public-sections details{box-shadow:none;border-radius:6px}
.public-solutions .public-sections details summary{font-size:14px;font-weight:500;min-height:48px}
.public-solutions .public-sections :is(.bg-rose-50\/60,.bg-emerald-50\/60){background:#f8f9fc;border-color:#e3e7f0}
.public-solutions .public-sections .bg-emerald-50\/60{background:#f4f3ff}
.public-solutions .public-sections :is(.text-rose-700,.text-emerald-800){color:#4c5571}
.public-solutions .public-sections .bg-gradient-to-r{background:#f2f1ff;color:#090c1c}
.public-solutions .public-sections .bg-gradient-to-r p{color:#4c5571}
/* Account pages share the public navigation and have a readable form column. */
.auth-main{padding:64px 0 0}
.public-auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:calc(100vh - 240px)}
.public-auth-card{width:100%;max-width:640px;align-self:center;justify-self:center;padding:56px 40px}
.public-auth-card h1{font-size:38px!important;margin-top:10px}
.public-auth-intro{font-size:15px;color:#4c5571;margin:16px 0 28px;line-height:1.65}
.public-auth-story{background:radial-gradient(ellipse at 80% 20%,#eeedff,transparent 70%),#f9faff;border-left:1px solid #e3e7f0;padding:64px clamp(28px,5vw,90px);display:flex;flex-direction:column;justify-content:center}
.public-auth-story h2{font-weight:650;font-size:clamp(30px,3.2vw,46px);line-height:1.15;margin:18px 0;letter-spacing:-.045em}
.public-auth-story>p{max-width:52ch;color:#4c5571;font-size:15px}.public-auth-story .public-flow{margin:30px 0;max-width:520px}
.public-auth-card form{padding:0;border:0;box-shadow:none;background:transparent}
.public-auth-card :is(input:not([type=checkbox]):not([type=radio]),select){min-height:44px;background:white}
.public-auth-card button[type=submit]{min-height:44px;background:#4035ff;color:white;border-radius:6px}
.public-auth-card button:disabled{opacity:.5;cursor:not-allowed}
.public-auth-card a[href^='/auth/']{background:#fff;color:#10152a;border:1px solid #dce1ed;box-shadow:none;min-height:44px}
.public-auth-card a[href^='/auth/']:hover{background:#f7f8fc}
.public-signup .step{display:none}.public-signup .step.active{display:block;margin:0}
.public-signup .step>div{height:auto;min-height:0;padding:0;margin:0}
.public-signup #signup_container{padding:0;height:auto}
.public-signup .iti{width:100%}.public-signup .public-auth-card{max-width:720px}
.public-signup #back_to_signup{background:white;border-color:#dce1ed;color:#10152a}
/* Information, policy and status pages. */
.public-info{padding:100px var(--page-gutter) 56px}
.public-info-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:6vw;align-items:center;padding-bottom:48px;border-bottom:1px solid #e3e7f0;margin-bottom:38px}
.public-info-hero p{font-size:17px;color:#4c5571;line-height:1.7;max-width:60ch}.public-info-hero h1{margin:12px 0 20px}
.public-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.public-info-card{padding:28px;border:1px solid #e3e7f0;border-radius:8px;background:white}
.public-info-card>.bi{display:inline-flex;font-size:28px;color:#4035ff;margin-bottom:20px}
.public-info-card :is(h2,h3){font-size:24px;font-weight:650;margin-bottom:12px}.public-info-card p{color:#4c5571;font-size:14px;line-height:1.8;max-width:75ch}
.public-info-cta{margin-top:32px;background:#f2f1ff;border-radius:8px;padding:30px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.public-info-cta h2{font-size:26px;font-weight:650}.public-info-cta p{color:#4c5571;margin-top:8px;font-size:14px}
.public-policy{padding:100px var(--page-gutter) 56px;display:grid;grid-template-columns:240px minmax(0,1fr);gap:6vw;align-items:start}
.public-policy-toc{position:sticky;top:96px;display:grid;gap:2px;font-size:12px;border-right:1px solid #e3e7f0;padding-right:24px}
.public-policy-toc strong{font-size:14px;margin-bottom:14px}.public-policy-toc a{padding:8px 0;color:#4c5571}.public-policy-toc a:hover{color:#4035ff}
.public-policy-content{max-width:1000px}.public-policy-content>div{max-width:none;padding:0;border:0;box-shadow:none;border-radius:0}
.public-policy h1{font-size:44px}.public-policy h2{scroll-margin-top:96px}.public-policy p,.public-policy li{font-size:14px;line-height:1.85}
.public-status{padding:120px var(--page-gutter) 64px;min-height:75vh;display:flex;justify-content:center;align-items:center;text-align:center}.public-status>div{max-width:620px}.public-status h1{font-size:44px}.public-status .flex{flex-wrap:wrap}
@media(max-width:900px){.public-hero-grid{gap:30px}.public-policy{grid-template-columns:190px minmax(0,1fr);gap:30px}.public-auth-card{padding:40px 24px}.public-auth-story{padding:40px 28px}}
@media(max-width:767px){.public-site{--page-gutter:16px}.public-hero{padding-top:88px}.public-hero-grid,.public-info-hero,.public-info-grid,.public-auth-layout,.public-policy{grid-template-columns:1fr}.public-hero-grid{gap:32px}.public-hero-copy h1{max-width:none}.public-hero-copy>p:not(.public-eyebrow){font-size:15px}.public-flow-card{padding:20px}.public-auth-card{padding:40px 20px}.public-auth-story{border-left:0;border-top:1px solid #e3e7f0;padding:36px 20px}.public-info{padding-top:88px}.public-info-hero{gap:24px;padding-bottom:30px}.public-info-cta{align-items:flex-start;flex-direction:column;padding:24px}.public-info-card{padding:24px}.public-policy{padding-top:88px;gap:28px}.public-policy-toc{position:static;border:1px solid #e3e7f0;border-radius:8px;padding:18px;max-height:230px;overflow:auto}.public-policy h1{font-size:36px}.public-actions .public-button{flex:1}.public-breadcrumb{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.public-site *,.public-site *::before,.public-site *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Vivid treatment, using the existing ink / violet / white palette. */
.public-site{--public-glow:#4035ff26;--public-line:#4035ff1c;background:#fcfcff}
.public-site :is(.fp-hero,.public-hero,.public-info-hero,.public-auth-story,.public-status){position:relative;isolation:isolate;background:radial-gradient(ellipse at 85% 15%,#4035ff20,transparent 54%),radial-gradient(ellipse at 12% 95%,#6961ff16,transparent 52%),linear-gradient(120deg,#fff 15%,#f3f1ff);overflow:hidden}
.public-site :is(.fp-hero,.public-hero,.public-info-hero,.public-auth-story,.public-status)::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#4035ff08 1px,transparent 1px),linear-gradient(90deg,#4035ff08 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(115deg,transparent 20%,#000 80%)}
.public-site :is(.fp-hero,.public-hero,.public-info-hero,.public-auth-story,.public-status)::after{content:"";position:absolute;z-index:-1;pointer-events:none;width:480px;height:480px;right:-120px;top:-190px;border:1px solid #6961ff24;border-radius:50%;box-shadow:0 0 0 65px #6961ff05,0 0 0 130px #6961ff05;background:radial-gradient(circle,#6961ff1c,transparent 68%)}
.public-site .fp-hero{padding-top:34px}
.public-site .fp-hero-grid{padding-block:16px 52px;gap:clamp(32px,5vw,80px)}
.public-site .fp[data-feature=mcp-server] .fp-hero-grid{margin-top:0;min-height:350px;padding-bottom:46px}
.public-site .fp[data-feature=mcp-server] .fp-hero-copy{padding-top:0;align-self:center}
.public-site .fp h1,.public-site :is(.public-hero,.public-info-hero) h1{font-size:clamp(42px,4.8vw,72px);font-weight:780;letter-spacing:-.055em;line-height:1.07}
.public-site h1{background:linear-gradient(125deg,#090c1c 15%,#202044 55%,#4035ff 100%);background-clip:text;-webkit-background-clip:text;color:transparent}
.public-site .fp h2,.public-site h2{font-weight:740;letter-spacing:-.04em}
.public-site .fp h3,.public-site .public-flow strong{font-weight:700}
.public-site .fp .fp-lead{font-size:clamp(16px,1.4vw,20px)!important;line-height:1.65!important;color:#414964!important;max-width:56ch}
.public-site :is(.wc-eyebrow,.public-eyebrow){display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid #4035ff24;background:#eeebff;border-radius:5px;color:#4035ff;font-size:10px;letter-spacing:.14em;font-weight:750}
.public-site .public-eyebrow::before{content:"";width:6px;height:6px;flex:none;border-radius:50%;background:#4035ff;box-shadow:0 0 0 3px #4035ff12}
.public-site .public-info{padding-top:88px}
.public-site .public-info-hero{margin-inline:calc(-1 * var(--page-gutter));padding:40px var(--page-gutter) 50px;border-block:1px solid #e2def7}
.public-site .public-info>.public-breadcrumb{margin-bottom:22px}
.public-site :is(.public-button,.fp-button){min-height:48px;padding:13px 22px;font-size:13px;font-weight:650;border-radius:8px;transition:transform .2s,box-shadow .2s,background .2s}
.public-site :is(.public-button-primary,.fp-primary,.wc-btn-primary,.public-auth-card button[type=submit]){background:linear-gradient(120deg,#5145ff,#4035ff 55%,#3930cf);border:1px solid #4035ff;color:white;box-shadow:0 6px 16px #4035ff30,inset 0 1px 0 #ffffff45}
.public-site :is(.public-button-primary,.fp-primary,.wc-btn-primary):hover{transform:translateY(-2px);box-shadow:0 10px 24px #4035ff40}
.public-site :is(.public-button:not(.public-button-primary),.fp-secondary){border-color:#ccc7ee;background:#ffffffeb;box-shadow:0 3px 8px #24204407}
.public-site :is(.public-flow-card,.fp-visual){border-color:#cfc9f5;border-radius:16px;background:linear-gradient(145deg,#fff,#f6f4ff);box-shadow:0 24px 60px #35307b16,0 3px 10px #4035ff0c,inset 0 1px 0 white}
.public-site .public-flow-card{padding:28px;border-top:3px solid #6961ff}
.public-site .public-flow-card>p{font-weight:650;color:#4c4582;font-size:12px}
.public-site .public-flow>div{padding:20px;border:1px solid #dcd7f1;border-radius:10px;box-shadow:0 4px 12px #24204406;grid-template-columns:48px 1fr;gap:3px 16px}
.public-site .public-flow i{display:grid;place-items:center;width:46px;height:46px;font-size:24px;background:linear-gradient(135deg,#eeebff,#e3deff);border:1px solid #d9d1ff;border-radius:12px;color:#4035ff}
.public-site .public-flow>span{font-size:23px;font-weight:500}
.public-site .public-flow strong{font-size:15px}.public-site .public-flow div>span{font-size:12px}
.public-site .fp-visual-caption{padding:17px 22px 10px;font-size:10px;font-weight:650;letter-spacing:.07em;text-transform:uppercase;color:#5145a5}
.public-site .fp-preview-title{font-size:24px}.public-site .fp-preview-body{padding:16px 24px 24px}
.public-site .fp-visual-footer{background:#eeebff;color:#4d4681;border-color:#ded8fc;padding:14px 20px}
.public-site .fp[data-feature=mcp-server] .fp-visual{background:none;border:0;box-shadow:none;overflow:visible}
.public-site .fp[data-feature=mcp-server] .fp-visual-caption{top:-22px;left:0;text-align:center;width:100%;font-size:10px;padding:0}
.public-site .fp-flow-node{border:1px solid #d4ceef;border-radius:14px;background:#fff;box-shadow:0 12px 32px #4035ff16}
.public-site .fp-flow-node.fp-node-brand{border-color:#8579ff;background:linear-gradient(140deg,#eeebff,#faf9ff);box-shadow:0 12px 38px #4035ff25,inset 0 0 0 3px #fff8}
.public-site .fp-tool{border-color:#ddd6fc;box-shadow:0 8px 24px #4035ff12;background:linear-gradient(125deg,#fff,#faf9ff)}
.public-site .fp-tool-icon{background:#eae5ff;color:#4035ff;box-shadow:0 0 0 4px #f5f2ff}
.public-site .fp-highlights{background:#ffffffa6;border-color:#dcd7ef;padding-block:25px!important}
.public-site .fp-highlights .bi{display:grid;place-items:center;width:48px;height:48px;background:linear-gradient(135deg,#ece7ff,#f7f5ff);border:1px solid #e1dafa;border-radius:12px;font-size:25px}
.public-site .fp-highlights strong{font-size:14px}.public-site .fp-highlights span{font-size:12px}
.public-site .fp-section-nav{box-shadow:0 4px 14px #24204404;background:#fffffff5}
.public-site .fp-section-nav a[aria-current]{font-weight:650;border-bottom-width:3px}
.public-site :is(.public-info-card,.fp-support-card,.fp-use-card,.fp-recipe,.public-sections .wc-card){position:relative;background:linear-gradient(145deg,#fff 65%,#f7f5ff);border:1px solid #dfdaf2;border-radius:12px;box-shadow:0 5px 20px #25204b07;transition:transform .22s,box-shadow .22s,border-color .22s}
.public-site :is(.public-info-card,.fp-support-card,.fp-use-card,.fp-recipe,.public-sections .wc-card):hover{transform:translateY(-4px);border-color:#aa9cff;box-shadow:0 16px 36px #4035ff16}
.public-site :is(.public-info-card>.bi,.fp-support-card>.bi,.fp-use-card>.bi){display:grid;place-items:center;flex:none;width:50px;height:50px;border-radius:13px;background:linear-gradient(130deg,#eee9ff,#e2dcff);border:1px solid #d9d0ff;color:#4035ff;font-size:25px;line-height:1}
.public-site .fp-step-number{background:#4035ff;color:#fff;box-shadow:0 5px 15px #4035ff25;border:4px solid #ede9ff;width:48px;height:48px}
.public-site .fp-step-icon{color:#4035ff}
.public-site .fp-code-card{border:1px solid #30324d;box-shadow:0 16px 36px #171a3024;border-radius:12px}
.public-site .fp-tabs{background:linear-gradient(110deg,#202337,#30304b)}
.public-site :is(.fp-budget-card,.fp-mapping-card){border-color:#d9d0ff;border-radius:12px;box-shadow:0 8px 24px #4035ff0a}
.public-site :is(.fp-cta,.public-info-cta,.public-sections>section:last-child>.wc-panel){position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 85% 0%,#6961ff,transparent 60%),linear-gradient(120deg,#3930cf,#4035ff);border:1px solid #5145ff;border-radius:14px;padding:36px;box-shadow:0 12px 32px #4035ff24;color:#fff}
.public-site :is(.fp-cta,.public-info-cta,.public-sections>section:last-child>.wc-panel)::before{content:"";position:absolute;right:-80px;bottom:-160px;width:400px;height:400px;border:1px solid #ffffff26;border-radius:50%;box-shadow:0 0 0 48px #ffffff08,0 0 0 96px #ffffff05;pointer-events:none;z-index:-1}
.public-site :is(.fp-cta,.public-info-cta,.public-sections>section:last-child>.wc-panel) :is(h2,p){color:white}
.public-site :is(.fp-cta,.public-info-cta,.public-sections>section:last-child>.wc-panel) p{opacity:.85}
.public-site :is(.fp-cta,.public-info-cta) :is(.fp-button,.public-button){background:white;border-color:white;color:#3324ce;box-shadow:0 5px 16px #20166b30}
.public-site .public-sections>section:last-child>.wc-panel>.pointer-events-none{display:none}
.public-site .public-sections>section:last-child>.wc-panel a{background:white;color:#3324ce;border:1px solid white;box-shadow:0 4px 12px #20166b20}
.public-site .public-sections>section:last-child>.wc-panel a+a{background:#ffffff12;color:white;border-color:#ffffff60;box-shadow:none}
.public-site .public-auth-story{border-color:#dad4ef}
.public-site .public-auth-card h1{font-weight:780}
.public-site .public-policy-toc{padding:22px;border:1px solid #d9d1f4;border-radius:12px;background:linear-gradient(145deg,#f4f0ff,#fff);box-shadow:0 6px 22px #4035ff09}
.public-site .public-policy h1{font-weight:780;font-size:48px}.public-site .public-policy-content h2{color:#302675}
.public-site .public-policy-content>div>div:first-child{border-bottom:3px solid #6961ff}
/* Motion is decorative and finite; text and controls never wait to become visible. */
@keyframes public-orbit{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-32px,24px) scale(1.08)}}
@keyframes public-icon-lift{0%,100%{transform:translateY(0) rotate(0)}30%{transform:translateY(-6px) rotate(-7deg)}65%{transform:translateY(-2px) rotate(5deg)}}
@keyframes public-flow-down{0%,100%{transform:translateY(0);opacity:1}50%{transform:translateY(5px);opacity:.45}}
@keyframes public-wire{0%,100%{opacity:1}50%{opacity:.3}}
@keyframes public-card-arrive{from{transform:translateY(14px)}to{transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
.public-site .public-motion-in:is(.fp-hero,.public-hero,.public-info-hero,.public-auth-story,.public-status)::after{animation:public-orbit 4.6s ease-in-out both}
.public-site .public-motion-in:is(.fp-highlights .bi,.fp-tool-icon,.fp-cube,.fp-agent-icon,.public-flow i,.public-info-card>.bi,.fp-support-card>.bi,.fp-use-card>.bi,.fp-project-stage .bi,.public-example-steps .bi){animation:public-icon-lift 1.8s ease-in-out 2;animation-delay:var(--motion-delay,0ms)}
.public-site .public-motion-in :is(.public-flow>span,.fp-flow-down){animation:public-flow-down 1.3s ease-in-out 3}
.public-site .public-motion-in .fp-branch{animation:public-wire 1.2s ease-in-out 3}
.public-site .public-motion-in:is(.public-flow-card,.fp-support-card,.fp-use-card,.public-info-card,.public-sections .wc-card){animation:public-card-arrive .55s cubic-bezier(.16,1,.3,1) both}
.public-site :is(.public-info-card,.fp-support-card,.fp-use-card,.public-flow>div):hover>.bi{transform:translateY(-3px) rotate(-6deg);transition:transform .22s}
}
@media(max-width:1100px){.public-site .fp h1,.public-site :is(.public-hero,.public-info-hero) h1{font-size:48px}.public-site .fp-hero-grid{gap:32px}.public-site .fp[data-feature=mcp-server] .fp-visual-caption{position:static;margin-bottom:18px}.public-site .fp[data-feature=mcp-server] .fp-hero-grid{min-height:0}}
@media(max-width:767px){.public-site .fp-hero{padding-top:24px}.public-site .fp-hero-grid{padding-block:0 32px;gap:36px}.public-site .fp[data-feature=mcp-server] .fp-hero-grid{padding-bottom:32px}.public-site .fp h1,.public-site :is(.public-hero,.public-info-hero) h1{font-size:42px}.public-site .fp .fp-lead{font-size:16px!important}.public-site .public-info-hero{padding-block:30px}.public-site .public-flow-card{padding:20px}.public-site .fp-highlights .bi{width:44px;height:44px}.public-site .fp-preview-body{padding:16px 18px 20px}.public-site .fp-preview-title{font-size:21px}.public-site :is(.fp-cta,.public-info-cta,.public-sections>section:last-child>.wc-panel){padding:28px 22px}.public-site .fp-use-card{gap:14px}.public-site :is(.fp-support-card>.bi,.fp-use-card>.bi){width:40px;height:40px;font-size:22px}.public-site .public-policy h1{font-size:38px}}
@media(max-width:359px){.public-site .fp h1,.public-site :is(.public-hero,.public-info-hero) h1{font-size:36px}.public-site .public-flow>div{grid-template-columns:38px 1fr;gap:10px;padding:14px}.public-site .public-flow i{width:38px;height:38px;font-size:20px}}
@media(forced-colors:active){.public-site h1{background:none;color:CanvasText;-webkit-text-fill-color:CanvasText}}

/* Worked examples and public guidance share the existing page shell. */
.public-site .public-worked-example{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;margin-block:56px;padding:32px;border:1px solid #dcd5fa;border-radius:18px;background:radial-gradient(ellipse at 0 0,#eae4ff,transparent 60%),#faf9ff}
.public-site .public-example-intro h2,.public-site .public-guide-section h2{font-size:clamp(26px,2.8vw,36px);font-weight:750;letter-spacing:-.04em;line-height:1.2}
.public-site .public-example-intro p{margin:16px 0;color:#4c5571;font-size:15px;line-height:1.8}
.public-site .public-example-steps{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.public-site .public-example-steps li{display:flex;gap:20px;padding:24px;border:1px solid #e4dff5;border-radius:12px;background:#fff;box-shadow:0 5px 20px #4035ff06}
.public-site .public-example-steps .bi,.public-site .public-guide-grid .bi{font-size:25px;color:#4035ff}
.public-site .public-example-steps li>div{min-width:0}
.public-site .public-example-steps span{color:#7466c4;font-weight:750;font-size:12px;letter-spacing:.08em}
.public-site .public-example-steps h3{margin:6px 0 10px;font-size:19px;font-weight:700;letter-spacing:-.025em}
.public-site .public-example-steps p,.public-site .public-guide-grid p{font-size:15px;line-height:1.8;color:#4c5571}
.public-site .public-guide-section{margin-block:56px;scroll-margin-top:90px}
.public-site .public-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:28px}
.public-site .public-guide-grid>div{padding:26px;border:1px solid #dfdaf2;border-radius:14px;background:linear-gradient(130deg,#fff,#faf9ff)}
.public-site .public-guide-grid h3{font-size:20px;font-weight:700;margin:20px 0 12px;letter-spacing:-.025em}
.public-site .public-guide-grid .public-text-link{display:inline-block;margin-top:16px}
.public-site .public-content-faq>div{margin-top:28px;border:1px solid #dfdaf2;border-radius:12px;overflow:hidden}
.public-site .public-content-faq details+details{border-top:1px solid #e4dff5}
.public-site .public-content-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:20px;font-size:15px;font-weight:600;background:#fff}
.public-site .public-content-faq summary::-webkit-details-marker{display:none}
.public-site .public-content-faq details[open] summary{background:#f7f5ff}
.public-site .public-content-faq details[open] summary i{transform:rotate(180deg)}
.public-site .public-content-faq details p{margin:0;padding:0 20px 22px;background:#f7f5ff;color:#4c5571;line-height:1.8;font-size:15px}
@media(max-width:900px){.public-site .public-worked-example{grid-template-columns:1fr;gap:24px}.public-site .public-guide-grid{grid-template-columns:1fr}}
@media(max-width:600px){.public-site .public-worked-example{padding:22px 18px;margin-block:36px}.public-site .public-example-steps li{padding:18px;gap:14px}.public-site .public-guide-section{margin-block:36px}.public-site .public-guide-grid>div{padding:22px}}

.public-site .public-guide-lead{font-size:16px;color:#4c5571;line-height:1.8;max-width:80ch;margin:16px 0 28px}

/* Center public page content; the inherited site header and footer stay full width. */
.public-site{--public-content-width:1160px}
.public-site .fp-container{max-width:var(--public-content-width)}
.public-site .public-hero>:is(.public-breadcrumb,.public-hero-grid){max-width:var(--public-content-width);margin-inline:auto}
.public-site :is(.public-solutions>.public-sections,.public-info,.public-policy){width:100%;max-width:calc(var(--public-content-width) + 2 * var(--page-gutter));margin-inline:auto}
.public-site .public-auth-layout{width:calc(100% - 2 * var(--page-gutter));max-width:var(--public-content-width);margin-inline:auto}
