/* Shared public canvas. Form internals and Nova Chat keep their dedicated layouts. */
body.sp-site.tesla-layout{
  --site-section-gap:112px;--site-card-gap:24px;
  --site-card-surface:#f9f9f9;--site-card-hover:#f2f2f2;--site-card-padding:32px;
  --site-font:"Inter",Arial,sans-serif;
  color:#171a20;background:#fff;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero]{
  display:flex;flex-direction:column;align-items:center;isolation:isolate;
  width:100%;max-width:none;height:auto!important;min-height:0!important;max-height:none;
  margin:0!important;padding:0;border:0;border-radius:0!important;
  background:#fff!important;color:#171a20;overflow:visible;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-inner{
  order:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;
  box-sizing:border-box;width:100%;max-width:none;min-height:0;margin:0;padding:112px 24px 64px;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-copy{
  display:flex;flex-direction:column;align-items:center;width:100%;max-width:920px;margin:0;text-align:center;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] h1{
  max-width:920px;margin:0!important;color:#171a20!important;font-size:clamp(42px,4.5vw,64px)!important;
  font-weight:500!important;line-height:1.1!important;letter-spacing:-.04em!important;text-shadow:none;text-align:center;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-label{
  margin:0 0 20px;color:#737373!important;font-size:12px;line-height:1.5;text-shadow:none;text-align:center;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-lede{
  max-width:58ch;margin:24px 0 0!important;color:#626262!important;font-size:17px;line-height:1.7;text-shadow:none;text-align:center;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-actions{justify-content:center;gap:12px;margin-top:28px}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-actions a{
  min-height:44px;padding:12px 20px;border:0;border-radius:8px;box-shadow:none;
  background:#f7f7f7;color:#171a20;backdrop-filter:none;-webkit-backdrop-filter:none;font-size:14px;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-actions .page-hero-primary{background:#eaeaea}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-back{color:#626262;margin-bottom:24px}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-context{display:none}
/* Photography supports the introduction instead of sitting behind the text. */
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-media{
  order:1;position:relative;inset:auto;z-index:auto;display:block;flex:none;box-sizing:border-box;
  width:var(--acx-page);max-width:1200px;height:clamp(320px,38vw,520px);min-height:0;
  margin:0 auto;padding:0;border-radius:8px!important;overflow:hidden;opacity:1;transform:none;
}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-media :is(.site-art,img){display:block;width:100%;height:100%;border-radius:8px!important}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-media img{object-fit:cover;filter:none!important;transform:none!important}
body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-shade{display:none!important}
/* Business landing pages and pricing use the same open white introduction. */
body.sp-site.tesla-layout .business-main .business-hero{margin:0;background:#fff;border-radius:0}
body.sp-site.tesla-layout .business-main .business-hero .business-frame{
  display:flex;flex-direction:column;align-items:center;box-sizing:border-box;
  width:var(--acx-page);max-width:1120px;padding:112px 0 64px;text-align:center;
}
body.sp-site.tesla-layout .business-main .business-hero h1{max-width:900px;margin-top:20px!important;font-size:clamp(42px,4.5vw,64px);line-height:1.1;letter-spacing:-.04em}
body.sp-site.tesla-layout .business-main .business-hero .business-lede{max-width:58ch;margin-top:24px!important;font-size:17px;line-height:1.7}
body.sp-site.tesla-layout .business-main .business-hero .business-action{margin-top:28px;background:#eaeaea;border-color:transparent;color:#171a20}
body.sp-site.tesla-layout .business-main .business-hero .business-caption{max-width:62ch}
body.sp-site.tesla-layout .business-main .business-hero-art{margin-top:0;max-width:1200px}
body.sp-site.tesla-layout .business-main>.business-section{padding-block:0;margin-block:var(--site-section-gap) 0}
body.sp-site.tesla-layout .business-main>.business-pricing{margin-top:32px;padding-top:0}
body.sp-site.tesla-layout .business-main :is(.business-steps,.business-tool-grid,.business-plan-grid,.business-audience-grid,.business-sector-links){gap:24px}
body.sp-site.tesla-layout .business-main :is(.business-card,.business-steps li){padding:32px;background:#f9f9f9;border-radius:8px;box-shadow:none}
body.sp-site.tesla-layout .business-main .business-plan-featured{background:#f5f5f5;border-color:#e5e5e5}
/* Content libraries and articles keep a readable measure and generous section breaks. */
body.sp-site.tesla-layout .page-family :is(.about-hero,.guides-masthead,.publication-hero,.legal-page-head){padding-block:96px 64px;background:#fff;min-height:0;border:0}
body.sp-site.tesla-layout .page-family :is(.about-hero,.guides-masthead,.publication-hero,.legal-page-head) h1{
  font-size:clamp(42px,4.5vw,64px)!important;line-height:1.1!important;letter-spacing:-.04em!important;color:#171a20;
}
body.sp-site.tesla-layout .page-family :is(.sector-section-head,.support-library-heading,.guides-library-group-head,.guides-publication-heading){margin-bottom:32px;gap:24px}
body.sp-site.tesla-layout .page-family :is(.sector-section-head,.support-library-heading,.guides-library-group-head,.guides-publication-heading,.confidence-copy)>h2{font-size:clamp(28px,3vw,40px);line-height:1.2}
body.sp-site.tesla-layout .page-family :is(.support-card,.guide-library-card,.checkmate-tool-card,.metricon-live-card,.sector-tool-card){background:#f9f9f9;box-shadow:none;border-radius:8px}
body.sp-site.tesla-layout .page-family :is(.about-hero-copy nav a,.guides-masthead-index a){
  background:#f7f7f7;color:#282828;border:0;border-radius:8px;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;
}
body.sp-site.tesla-layout .page-family .bento-track>[data-bento-slide-card]{padding:32px!important}
body.sp-site.tesla-layout .page-family .article-body{max-width:760px}
body.sp-site.tesla-layout .page-family .article-section{margin-top:64px}
body.sp-site.tesla-layout .page-family :is(.article-body,.legal-article) p{line-height:1.8}
body.sp-site.tesla-layout .site-contact-section{margin-block:var(--site-section-gap)}
/* Working pages get breathing room around their header, not inside input groups. */
body.sp-site.tesla-layout .page-family :is(.tool-focus-page,.sector-tool-page) .tool-focus-header{padding-block:48px 32px;min-height:0;background:#fff;box-shadow:none}
body.sp-site.tesla-layout .page-family :is(.tool-focus-page,.sector-tool-page) .tool-focus-header h1{font-size:clamp(30px,3.2vw,42px)!important;line-height:1.15!important;font-weight:500!important;letter-spacing:-.035em!important}
/* Tracks share the heading's frame, then bleed to the viewport while scrolling. */
body.sp-site.tesla-layout :is(.page-family-sector,.page-family-metricon,.page-family-checkmate,.page-family-help,.page-family-about,.tool-usage-guide){
  --site-slider-gutter:max(var(--page-gutter),calc((100vw - 1180px)/2));
}
body.sp-site.tesla-layout .page-family :is(.bento-track,.metricon-bento-track){
  box-sizing:border-box;gap:var(--site-card-gap);
  grid-auto-columns:calc((100vw - 2 * var(--site-slider-gutter) - 2 * var(--site-card-gap))/3);
  padding-inline:var(--site-slider-gutter)!important;scroll-padding-inline:var(--site-slider-gutter);
}
body.sp-site.tesla-layout .page-family .bento-track.checkmate-tool-grid{
  grid-auto-columns:calc((100vw - 2 * var(--site-slider-gutter) - var(--site-card-gap))/2);
}
body.sp-site.tesla-layout .page-family .bento-track.about-audience-track{
  grid-auto-columns:calc((100vw - 2 * var(--site-slider-gutter) - 3 * var(--site-card-gap))/4);
}
body.sp-site.tesla-layout.public-home .page-family :is(.home-problem-grid,.home-solve-track,.sp-sector-grid){gap:var(--site-card-gap)}
body.sp-site.tesla-layout .page-family-metricon .metricon-how-section{max-width:1180px;margin-top:var(--site-section-gap)}
body.sp-site.tesla-layout .page-family-metricon .metricon-category-section:not(:first-child){margin-top:var(--site-section-gap)}
body.sp-site.tesla-layout .page-family :is(.metricon-live-card,.metricon-how-card){padding:var(--site-card-padding)!important}
/* One spacing and surface system for presentation cards. Input groups stay compact. */
body.sp-site.tesla-layout .page-family :is(.about-system-list,.about-method-steps,.about-principle-grid,.about-next nav,
  .guides-feature-secondary,.guides-subject-list,.guides-selected-list,.guides-sector-grid,.blog-list,.updates-list,.blog-topic-list){gap:var(--site-card-gap)}
body.sp-site.tesla-layout .page-family :is(.about-system-row,.about-method-steps li,.about-principle-grid article,.about-next nav a,
  .guides-feature-secondary a,.guides-subject-list button,.guides-selected-row,.guides-sector-column,.support-principles article){
  padding:var(--site-card-padding);background:var(--site-card-surface);border:0;border-radius:8px;box-shadow:none;
}
body.sp-site.tesla-layout .page-family :is(.guides-feature-secondary a,.guides-sector-column) p{font-size:14px;line-height:1.7;color:#626262}
body.sp-site.tesla-layout .page-family .about-method-steps li{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
body.sp-site.tesla-layout .page-family .about-method-steps li>div{min-width:0;width:100%}
body.sp-site.tesla-layout .page-family .guides-sector-column nav{gap:4px}
body.sp-site.tesla-layout .page-family .guides-sector-column nav a{display:flex;align-items:center;min-height:40px;font-size:14px;color:#282828}
body.sp-site.tesla-layout .page-family :is(.confidence-action,.lp-action){
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:12px 20px;
  border:0;border-radius:8px;background:#eaeaea;color:#171a20;box-shadow:none;font-size:14px;
}
body.sp-site.tesla-layout :is(.page-family-sector,.page-family-checkmate,.page-family-help,.page-family-about) .confidence-section{max-width:1180px}
body.sp-site.tesla-layout .page-family .confidence-points{gap:16px}
body.sp-site.tesla-layout .page-family .confidence-points article{padding:24px;background:var(--site-card-surface)}
body.sp-site.tesla-layout .page-family .metricon-search-shell input{background:var(--site-card-surface);border:0;box-shadow:none}
body.sp-site.tesla-layout .business-main .business-card.business-plan-featured{background:#f3f3f3;border-color:#dedede}
body.sp-site.tesla-layout .business-main .pricing-public-card>.pricing-public-action{display:inline-flex;align-items:center;justify-content:center;width:fit-content;min-height:44px;margin-top:24px;padding:12px 16px;border-radius:8px;background:#eaeaea;font-size:13px}
body.sp-site.tesla-layout .contact-form .contact-submit{justify-content:center}
body.sp-site.tesla-layout .page-family :is(.bento-slider-controls,.metricon-slider-controls) button{background:var(--site-card-surface);border:0;box-shadow:none}
@media(hover:hover) and (pointer:fine){
  body.sp-site.tesla-layout .page-family :is(a[data-bento-slide-card],.metricon-live-card,.about-system-row,
    .guides-feature-secondary a,.guides-subject-list button,.guides-selected-row):hover{
    background:var(--site-card-hover)!important;color:#171a20;transform:none;box-shadow:none;
  }
  body.sp-site.tesla-layout .page-family :is(.confidence-action,.lp-action):hover{background:#dedede;color:#171a20;transform:none;box-shadow:none}
  body.sp-site.tesla-layout.public-home .page-family .home-problem-card:hover,
  body.sp-site.tesla-layout .business-main a.business-card:hover{background:var(--site-card-hover)!important;color:#171a20;transform:none;box-shadow:none}
}
@media(hover:hover) and (pointer:fine){
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-actions a:hover,
  body.sp-site.tesla-layout .business-main .business-hero .business-action:hover{background:#dedede;color:#171a20;transform:none;box-shadow:none}
  body.sp-site.tesla-layout .page-family :is(.about-hero-copy nav a,.guides-masthead-index a):hover{background:#ededed;color:#282828;transform:none;box-shadow:none}
}
@media(max-width:1050px){
  body.sp-site.tesla-layout{--site-section-gap:88px}
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-inner{padding-top:88px}
  body.sp-site.tesla-layout .business-main .business-hero .business-frame{padding-top:88px}
  body.sp-site.tesla-layout .page-family :is(.bento-track,.bento-track.about-audience-track,.metricon-bento-track){
    grid-auto-columns:calc((100vw - 2 * var(--site-slider-gutter) - var(--site-card-gap))/2);
  }
}
@media(max-width:760px){
  body.sp-site.tesla-layout{--site-section-gap:72px;--site-card-gap:16px;--site-card-padding:28px}
  body.sp-site.tesla-layout .page-family :is(.bento-track,.bento-track.checkmate-tool-grid,.bento-track.about-audience-track,.metricon-bento-track),
  body.sp-site.tesla-layout .page-family-metricon .metricon-category-section .metricon-bento-track:has(>a:nth-child(3 of :not([hidden]))){grid-auto-columns:88%}
  body.sp-site.tesla-layout .page-family .about-method-steps{grid-template-columns:minmax(0,1fr)}
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-inner{padding:72px 24px 48px}
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] h1{font-size:38px!important;line-height:1.12!important}
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-lede{margin-top:20px!important;font-size:16px;line-height:1.65}
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-label{margin-bottom:16px}
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-actions{gap:8px;flex-wrap:wrap;margin-top:24px}
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-actions a{padding:12px 16px;font-size:13px}
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-media{height:260px;max-height:none}
  body.sp-site.tesla-layout .business-main .business-hero .business-frame{padding:72px 0 48px}
  body.sp-site.tesla-layout .business-main .business-hero h1{font-size:38px;line-height:1.12}
  body.sp-site.tesla-layout .business-main .business-hero .business-lede{margin-top:20px!important;font-size:16px}
  body.sp-site.tesla-layout .business-main :is(.business-steps,.business-tool-grid,.business-plan-grid,.business-audience-grid,.business-sector-links){gap:16px}
  body.sp-site.tesla-layout .business-main :is(.business-card,.business-steps li){padding:28px}
  body.sp-site.tesla-layout .page-family :is(.about-hero,.guides-masthead,.publication-hero,.legal-page-head){padding-block:64px 40px}
  body.sp-site.tesla-layout .page-family :is(.about-hero,.guides-masthead,.publication-hero,.legal-page-head) h1{font-size:38px!important}
  body.sp-site.tesla-layout .page-family .bento-track>[data-bento-slide-card]{padding:28px!important}
  body.sp-site.tesla-layout .page-family :is(.tool-focus-page,.sector-tool-page) .tool-focus-header{padding-block:32px 24px}
  body.sp-site.tesla-layout .page-family .article-section{margin-top:48px}
}
@media(forced-colors:active){
  body.sp-site.tesla-layout:not(.public-home) .page-family .page-hero[data-page-hero] .page-hero-actions a,
  body.sp-site.tesla-layout .business-main .business-hero .business-action{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}
}
