/* Public-site presentation. Workspace and billing document layouts are independent. */
.website .public-plan-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.website .public-plan-grid[data-plan-columns="1"] { grid-template-columns:minmax(0,1fr); }
.website .public-plan-grid[data-plan-columns="2"] { grid-template-columns:repeat(2,minmax(0,1fr)); }
.website .public-plan { min-width:0; padding:30px; box-shadow:0 7px 25px #17355708; }
.website .public-plan-copy { flex:1; min-width:0; width:100%; }
.website .public-plan .public-icon-heading { gap:15px; align-items:center; margin-bottom:20px; }
.website .public-plan .public-icon-heading h3 { margin:0; font-size:24px; line-height:1.35; }
.website .public-plan .public-icon-heading .service-icon { margin:0; flex:none; width:42px; height:42px; }
.website .public-plan-copy>.multiline { font-size:14px; line-height:1.9; margin:0; color:#647993; }
.website .public-plan-copy .website-plan-inclusions { margin-top:20px; }
.website .public-plan-purchase { width:100%; margin-top:25px; padding-top:23px; border-top:1px solid #dce5f2; }
.website .public-plan-purchase>.public-plan-price { font-size:28px; line-height:1.3; margin-bottom:8px; }
.website .public-plan-purchase>small { display:block; font-size:12px; color:#637a99; line-height:1.8; }
.website .public-plan-purchase>.btn { margin-top:20px; }
.website .public-plan-grid[data-plan-count="1"]>.public-plan { display:grid; grid-template-columns:minmax(0,1fr) minmax(240px,.46fr); gap:40px; align-items:center; padding:32px; }
.website .public-plan-grid[data-plan-count="1"] .public-plan-copy>.multiline { max-width:760px; }
.website .public-plan-grid[data-plan-count="1"] .public-plan-purchase { margin:0; padding-block:0; padding-inline:32px 0; border-top:0; border-inline-start:1px solid #dce5f2; }
@media(max-width:900px) {
 .website .public-plan-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .website .public-plan-grid[data-plan-count="1"]>.public-plan { grid-template-columns:minmax(0,1fr) minmax(210px,.55fr); gap:25px; padding:26px; }
 .website .public-plan-grid[data-plan-count="1"] .public-plan-purchase { padding-inline-start:25px; }
}
@media(max-width:650px) {
 .website .public-plan-grid,.website .public-plan-grid[data-plan-columns="2"] { grid-template-columns:minmax(0,1fr); gap:19px; }
 .website .public-plan,.website .public-plan-grid[data-plan-count="1"]>.public-plan { display:flex; flex-direction:column; align-items:stretch; padding:25px 23px; gap:0; }
 .website .public-plan .public-icon-heading h3 { font-size:22px; }
 .website .public-plan-copy>.multiline { font-size:14px; }
 .website .public-plan-grid[data-plan-count="1"] .public-plan-purchase { margin-top:23px; padding:22px 0 0; border-inline-start:0; border-top:1px solid #dce5f2; }
 .website .public-plan-purchase>.public-plan-price { font-size:27px; }
}
.website { --site-ink:#152d4b; --site-blue:#255bed; --site-line:#dce5f2; --site-surface:#f5f8fc; }
.website .corporate-main { color:var(--site-ink); }
.website .corporate-header { border-bottom:1px solid #dce5f2; box-shadow:0 6px 24px #172e5010; }
.website .hp-header .brand { flex-shrink:0; }
.website .hp-header .identity-tagline { letter-spacing:.025em; }
.website .hp-header .nav-trigger,.website .hp-header nav>a { min-height:44px; }
.website .hp-header .hp-menu { border:1px solid #dce5f2; border-radius:16px; box-shadow:0 24px 65px #152d4b22; max-height:calc(100dvh - var(--site-header-height,96px) - 20px); overflow-y:auto; overscroll-behavior:contain; }
.website .hp-header .hp-menu-intro { background:linear-gradient(145deg,#f2f6fd,#eaf1fd); border-radius:10px; }
.website .hp-header .hp-menu-links>a { border-radius:10px; transition:background .18s,color .18s; }
.website .hp-header .hp-menu-links>a:hover { background:#f0f5ff; }
.website .hp-header .hp-menu-links>a[aria-current=page] { color:#2456ce; background:#edf3ff; }
.website .hp-header .hp-menu-links { align-content:start; align-items:start; grid-auto-rows:min-content; }
.website .hp-header #software-menu .hp-menu-note { display:none; }
/* Software shares the left introduction panel; link rows retain their own compact height. */
@media(min-width:901px) {
 .website .corporate-header.hp-header .hp-menu { inset-inline-start:auto; inset-inline-end:max(var(--public-gutter,48px),calc((100vw - 1360px)/2 + var(--public-gutter,48px))); }
 .website .hp-header #software-menu { width:min(1000px,calc(100vw - 96px)); grid-template-columns:280px minmax(0,1fr); gap:18px 24px; padding:24px; align-items:start; }
 .website .hp-header #software-menu .hp-menu-intro { display:block; padding:20px; border:0; border-radius:10px; }
 .website .hp-header #software-menu .hp-menu-intro h2 { font-size:21px; line-height:1.4; letter-spacing:-.025em; margin:14px 0 20px; }
 .website .hp-header #software-menu .hp-menu-intro>.text-link { gap:9px; font-size:12px; white-space:nowrap; }
 .website .hp-header #software-menu .hp-menu-note { display:block; grid-column:1/-1; padding-top:15px; border-top:1px solid var(--hp-line,#dce5f2); font-size:11px; line-height:1.75; margin:0; color:var(--hp-muted,#63748b); }
 .website .hp-header #software-menu .hp-menu-links { gap:8px 16px; }
 .website .hp-header #software-menu .hp-menu-links>a { align-self:start; min-height:70px; padding:13px; gap:12px; }
 .website .hp-header #software-menu .hp-menu-links strong { font-size:12px; line-height:1.45; }
 .website .hp-header #software-menu .hp-menu-links small { font-size:10px; line-height:1.6; margin-top:4px; }
 [dir=rtl] .website .hp-header #software-menu .hp-menu-intro h2 { letter-spacing:0; }
}
@media(min-width:901px) and (max-width:1120px) {
 .website .hp-header #software-menu { grid-template-columns:230px minmax(0,1fr); }
 .website .hp-header #software-menu .hp-menu-intro { padding:18px; }
 .website .hp-header #software-menu .hp-menu-intro h2 { font-size:20px; }
}
.website .corporate-main .eyebrow { font-size:10px; letter-spacing:.16em; line-height:1.7; }
.website .hp-home-hero { background:radial-gradient(ellipse at 100% 0,#264665 0,transparent 55%),#11243d; }
.website .hp-home-hero-grid { gap:56px; padding-block:74px 80px; }
.website .hp-home-copy h1 { max-width:650px; font-size:clamp(44px,4.8vw,66px); line-height:1.06; font-weight:700; }
.website .hp-home-copy>p { max-width:540px; color:#c4d2e4; font-size:16px; line-height:1.85; }
.website .hp-home-copy .eyebrow { color:#9db9ff; }
.website .hp-home-art { border:1px solid #ffffff29; border-radius:22px; box-shadow:0 28px 65px #060f232b; }
.website .hp-floating-plan { border-radius:14px; border:1px solid #e3e9f1; box-shadow:0 16px 38px #10203929; }
.website .hp-floating-plan:hover { border-color:#a5bfff; }
.website .hp-foundation-strip { background:#f8faff; border-bottom:1px solid var(--site-line); }
.website .hp-foundation-strip strong { font-size:13px; }
.website .hp-foundation-strip small { font-size:11px; }
.website .hp-section-head h2,.website .corporate-main .section-heading h2 { font-size:clamp(30px,3.3vw,43px); line-height:1.14; }
.website .hp-section-head>p,.website .corporate-main .section-heading>p { font-size:14px; line-height:1.9; }
.website .hp-portfolio-grid { gap:24px; }
.website .hp-portfolio-grid>article { border:1px solid var(--site-line); border-radius:17px; overflow:hidden; background:#fff; box-shadow:0 8px 24px #17355708; transition:box-shadow .2s,border-color .2s,transform .2s; }
.website .hp-portfolio-grid>article:hover { border-color:#9eb8ed; box-shadow:0 18px 38px #17355714; transform:translateY(-3px); }
.website .hp-portfolio-copy { padding:27px; }
.website .hp-portfolio-copy>small { font-size:10px; color:#466ba3; line-height:1.7; }
.website .hp-portfolio-copy h3 { font-size:27px; line-height:1.25; }
.website .hp-portfolio-copy>p { font-size:14px; line-height:1.85; }
.website .hp-portfolio-bottom { padding-top:20px; border-top:1px solid #e7edf6; }
.website .hp-portfolio-bottom>strong { font-size:16px; }
.website .hp-portfolio-extras { margin-top:24px; border:1px solid var(--site-line); border-radius:12px; background:#fbfcff; }
.website .hp-portfolio-extras>a { font-size:12px; padding:19px; }
.website .hp-workload-band { background:#f4f7fc; border-block:1px solid #e2eaf6; }
.website .hp-workload-guide { display:grid; grid-template-columns:.8fr 1.2fr; gap:75px; align-items:start; }
.website .hp-workload-intro { position:sticky; top:calc(var(--site-header-height,96px) + 35px); }
.website .hp-workload-intro h2 { margin:16px 0 23px; font-size:clamp(32px,3.2vw,44px); line-height:1.14; }
.website .hp-workload-intro>p { font-size:15px; line-height:1.9; color:#637891; margin-bottom:26px; max-width:410px; }
.website .hp-workload-options>article { display:grid; grid-template-columns:42px minmax(0,1fr); gap:21px; padding:29px 0; border-bottom:1px solid #d9e3f0; }
.website .hp-workload-options>article:first-child { padding-top:0; }
.website .hp-workload-options>article:last-child { border-bottom:0; padding-bottom:0; }
.website .hp-workload-number { font-size:12px; font-weight:700; color:#5f7dab; line-height:2; border:1px solid #cbd9ed; border-radius:50%; width:34px; height:34px; display:grid; place-items:center; }
.website .hp-workload-label { display:block; color:#607899; font-size:10px; letter-spacing:.08em; line-height:1.6; }
.website .hp-workload-options h3 { display:flex; gap:12px; align-items:center; font-size:24px; line-height:1.3; margin:10px 0 13px; }
.website .hp-workload-options h3 svg { width:22px; height:22px; color:#2a60e8; flex:none; }
.website .hp-workload-options p { font-size:14px; line-height:1.85; color:#5f748f; margin:0 0 17px; max-width:520px; }
.website .hp-workload-options .text-link { font-size:12px; }
.website .hp-workload-secondary { display:inline-flex; gap:6px; align-items:center; margin-inline-start:19px; color:#506e9a; font-size:11px; }
.website .hp-workload-secondary svg { width:14px; height:14px; }
.website .hp-managed-band { background:#fff; }
.website .hp-managed-grid { gap:65px; }
.website .hp-managed-photo { border-radius:18px; box-shadow:0 18px 40px #17355716; }
.website .hp-managed-grid h2 { font-size:clamp(32px,3.4vw,45px); }
.website .hp-managed-grid>div>p { font-size:15px; line-height:1.9; }
.website .hp-service-links a { padding:18px 0; }
.website .hp-service-links strong { font-size:15px; }
.website .hp-service-links small { font-size:12px; line-height:1.8; }
.website .hp-software-section { border-top:1px solid var(--site-line); }
.website .software-card { border-color:var(--site-line); border-radius:16px; box-shadow:0 8px 26px #17355708; transition:box-shadow .2s,border-color .2s; }
.website .software-card:hover { box-shadow:0 17px 36px #17355713; border-color:#b3c5e5; }
.website .software-card>p,.website .dcim-feature-grid article>p,.website .specialist-features article>p { font-size:14px; line-height:1.9; }
.website .software-card>ul { font-size:12px; }
.website .hp-dcim-pricing-link { border-radius:12px; background:#f1f6ff; border:1px solid #d6e3fa; padding:23px 27px; }
.website .hp-development-link { border-radius:12px; border-color:#dce5f2; }
.website .hp-why-section { border-top:1px solid var(--site-line); }
.website .hp-why-section h2 { font-size:clamp(32px,3.2vw,43px); line-height:1.16; }
.website .hp-why-section p { font-size:14px; line-height:1.9; }
.website .hp-home-questions { background:#f5f8fc; border:1px solid #e1e9f5; border-radius:18px; margin-bottom:44px; padding:46px; grid-template-columns:.85fr 1.15fr; gap:65px; }
.website .hp-home-questions h2 { font-size:35px; line-height:1.16; margin:15px 0 19px; }
.website .hp-home-questions>div>p { font-size:14px; line-height:1.85; color:#637891; max-width:340px; margin-bottom:24px; }
.website .corporate-main details { overflow:visible; }
.website .corporate-main .faq-list details { border:1px solid #d8e3f3; border-radius:11px; background:white; box-shadow:0 3px 12px #15324d04; }
.website .corporate-main .faq-list details[open] { background:#f7faff; border-color:#9cb8ee; }
.website .corporate-main .faq-list summary { padding:20px 48px 20px 22px; font-size:14px; line-height:1.6; }
.website .corporate-main .faq-list details>p { padding:0 22px 22px; margin:0; font-size:13px; line-height:1.95; color:#61758d; }
.website .corporate-main .faq-list summary::after { inset-inline-end:20px; }
.website .hp-bottom-cta { border:1px solid #264767; border-radius:16px; background:linear-gradient(110deg,#112a46,#1b3c5f); box-shadow:0 12px 34px #17355714; padding:39px 44px; }
.website .hp-bottom-cta h2 { font-size:33px; line-height:1.2; }
.website .hp-bottom-cta p { max-width:680px; color:#bed0e6; font-size:14px; line-height:1.8; }
.website .hp-bottom-cta .eyebrow { color:#91b4ff; }
.website .site-section-navigation { top:var(--site-header-height,96px); box-shadow:0 5px 14px #15324d06; }
.website .site-section-navigation a { position:relative; padding-block:3px; }
.website .site-section-navigation a[aria-current=location] { color:#2459db; }
.website .site-section-navigation a[aria-current=location]::after { content:''; position:absolute; inset-inline:0; bottom:-12px; height:2px; background:#2b60e8; border-radius:2px; }
.website .corporate-main [id] { scroll-margin-top:calc(var(--site-header-height,96px) + 76px); }
.website .hp-plan-row { border:1px solid #dbe5f2; border-radius:13px; box-shadow:0 5px 20px #17355706; transition:border-color .18s,box-shadow .18s; }
.website .hp-plan-row:hover { border-color:#a8bfeb; box-shadow:0 12px 26px #17355710; }
.website .hp-plan-name h3 { font-size:23px; overflow-wrap:anywhere; }
.website .hp-plan-row .website-plan-scope li { font-size:13px; line-height:1.75; }
.website .hp-plan-purchase>strong { font-size:25px; line-height:1.3; }
.website .hp-plan-purchase .btn { min-height:43px; }
.website .hp-product-page .hp-order-steps { background:#f4f7fc; border-radius:16px; border:1px solid #e0e8f4; }
.website .hp-product-page .hp-feature-grid>article { border-top:2px solid #b5cafa; }
.website .hp-product-page .hp-feature-grid p { font-size:14px; line-height:1.9; }
.website .directory-infra-grid>a,.website .about-capability-grid>a { border:1px solid #dce5f2; box-shadow:0 7px 25px #17355708; border-radius:15px; overflow:hidden; }
.website .directory-expertise-grid>article { border:1px solid #dce5f2; box-shadow:0 7px 25px #17355708; border-radius:16px; overflow:hidden; }
.website .directory-expertise-copy>p,.website .about-capability-grid p { font-size:14px; line-height:1.9; }
.website .values-grid>article { border-top:2px solid #b7ccf5; padding-top:25px; }
.website .values-grid .public-icon-heading { align-items:flex-start; gap:13px; }
.website .values-grid .public-icon-heading>svg { margin-top:3px; color:#3265df; }
.website .hp-about-actions { display:flex; flex-wrap:wrap; gap:18px; align-items:center; margin-top:24px; }
.website .hp-about-actions .btn { font-size:12px; }
.website .contact-form-panel { border:1px solid #d5e1f3; border-radius:16px; box-shadow:0 16px 42px #15324d0d; }
.website .contact-direct { border:1px solid #d5e1f3; border-radius:16px; box-shadow:0 12px 36px #15324d09; }
.website .contact-direct-line a { color:#2459ce; }
.website .contact-direct-line small { color:#647b9b; }
.website .contact-office address { font-size:15px; line-height:1.9; }
.website .corporate-main a:focus-visible,.website .corporate-header a:focus-visible,.website .corporate-header button:focus-visible,.website .corporate-main summary:focus-visible { outline:3px solid #82aaff; outline-offset:4px; }
.website .corporate-footer .footer-columns { max-width:1360px; margin-inline:auto; padding-block:40px 26px; }
.website .corporate-footer .footer-description,.website .corporate-footer .footer-address p { font-size:13px; }
.website .corporate-footer .footer-navigation a { font-size:12px; line-height:1.85; }
.website .corporate-footer .footer-access-links>a { min-height:36px; font-size:12px; }
.website .corporate-footer .footer-base { padding-block:17px 21px; }
[dir=rtl] .website .corporate-main .faq-list summary { padding-inline:22px 48px; }
[dir=rtl] .website .hp-home-copy h1 { line-height:1.25; }
[dir=rtl] .website .hp-workload-guide h2,[dir=rtl] .website .hp-home-questions h2 { letter-spacing:0; line-height:1.35; }
@media(min-width:901px) { .website .hp-home-questions { width:calc(100% - 96px); max-width:1264px; } }
@media(max-width:1120px) {
 .website .hp-home-hero-grid { gap:35px; padding-block:56px 65px; }
 .website .hp-home-copy h1 { font-size:49px; }
 .website .hp-workload-guide { gap:45px; }
 .website .hp-managed-grid { gap:40px; }
 .website .hp-home-questions { gap:35px; padding:35px; }
 .website .hp-portfolio-copy { padding:23px; }
 .website .hp-portfolio-copy h3 { font-size:24px; }
}
@media(max-width:900px) {
 .website:has(#public-navigation.is-open) { overflow:hidden; }
 .website .hp-header nav.is-open { overscroll-behavior:contain; border-top:1px solid #e0e8f3; box-shadow:0 22px 45px #152d4b20; }
 .website .hp-header .hp-menu { max-height:none; box-shadow:none; }
 .website .hp-header .hp-menu-intro { padding:10px 13px; background:transparent; }
 .website .hp-header .hp-menu-intro p { display:none; }
 .website .hp-home-copy h1 { font-size:42px; }
 .website .hp-home-copy>p { font-size:14px; }
 .website .hp-workload-guide { grid-template-columns:1fr; gap:32px; }
 .website .hp-workload-intro { position:static; }
 .website .hp-workload-intro>p { max-width:620px; }
 .website .hp-workload-options { padding-top:24px; border-top:1px solid #d9e3f0; }
 .website .hp-home-questions { margin-inline:35px; }
 .website .hp-home-questions h2 { font-size:30px; }
 .website .hp-bottom-cta { margin-inline:35px; padding:30px; }
}
@media(max-width:650px) {
 .website .corporate-main .eyebrow { font-size:9px; letter-spacing:.12em; }
 .website .hp-home-hero-grid { padding:36px 22px 40px; gap:31px; }
 .website .hp-home-copy h1 { font-size:44px; margin-block:21px; }
 .website .hp-home-copy>p { font-size:15px; line-height:1.85; }
 .website .hp-home-art { border-radius:15px; }
 .website .hp-floating-plan { border-radius:11px; }
 .website .hp-foundation-strip strong { font-size:12px; }
 .website .hp-foundation-strip small { font-size:10px; }
 .website .hp-section-head h2,.website .corporate-main .section-heading h2 { font-size:31px; }
 .website .hp-section-head>p,.website .corporate-main .section-heading>p { font-size:14px; }
 .website .hp-portfolio-grid { gap:20px; }
 .website .hp-portfolio-copy { padding:24px; }
 .website .hp-portfolio-copy h3 { font-size:27px; }
 .website .hp-portfolio-bottom>strong { font-size:16px; }
 .website .hp-portfolio-extras { margin-top:21px; }
 .website .hp-portfolio-extras>a { padding:17px 13px; font-size:11px; }
 .website .hp-workload-guide { padding-block:44px; }
 .website .hp-workload-intro h2 { font-size:33px; }
 .website .hp-workload-intro>p { font-size:14px; }
 .website .hp-workload-options>article { grid-template-columns:30px minmax(0,1fr); gap:13px; padding-block:25px; }
 .website .hp-workload-number { width:27px; height:27px; font-size:10px; }
 .website .hp-workload-options h3 { font-size:23px; gap:9px; }
 .website .hp-workload-options p { font-size:14px; }
 .website .hp-workload-secondary { margin-inline-start:0; margin-top:12px; display:flex; }
 .website .hp-managed-grid { gap:29px; }
 .website .hp-service-links strong { font-size:15px; }
 .website .hp-service-links small { font-size:12px; }
 .website .hp-home-questions { margin:0 22px 30px; padding:28px 20px; grid-template-columns:1fr; gap:25px; border-radius:14px; }
 .website .hp-home-questions h2 { font-size:31px; }
 .website .hp-home-questions .text-link { font-size:12px; gap:7px; }
 .website .corporate-main .faq-list summary { padding:17px 41px 17px 17px; font-size:14px; }
 .website .corporate-main .faq-list details>p { font-size:13px; padding:0 17px 18px; }
 .website .corporate-main .faq-list summary::after { inset-inline-end:15px; }
 .website .hp-bottom-cta { margin-inline:22px; padding:27px 23px; }
 .website .hp-bottom-cta h2 { font-size:30px; }
 .website .hp-bottom-cta p { font-size:14px; }
 .website .hp-plan-name h3 { font-size:24px; }
 .website .hp-plan-row .website-plan-scope li { font-size:13px; }
 .website .hp-product-page .hp-order-steps { margin-inline:22px; padding:27px 23px; }
 .website .hp-product-page .hp-order-steps>div h2 { font-size:29px; }
 .website .hp-about-actions { gap:19px; align-items:flex-start; flex-direction:column; }
 .website .corporate-footer .footer-columns { padding-block:32px 21px; }
 .website .corporate-footer .footer-base { padding:16px 22px 74px; }
 .website .corporate-footer .footer-registration { font-size:10px!important; line-height:1.9; }
 [dir=rtl] .website .corporate-main .faq-list summary { padding-inline:17px 41px; }
}
@media(prefers-reduced-motion:reduce) { .website .hp-portfolio-grid>article,.website .software-card,.website .hp-plan-row,.website .hp-header .hp-menu-links>a { transition:none; transform:none!important; } }
