/* Sunprise public brand layer v1.1.0
 * Shared visual system for public pages and portals.
 * Flat color only: no gradients. Visual-only; no business logic or content changes.
 */
:root{
  --sp-navy:#071827;
  --sp-navy-2:#0b2239;
  --sp-navy-3:#11263a;
  --sp-orange:#f28c00;
  --sp-orange-2:#f29a07;
  --sp-gold:#fbbf24;
  --sp-cream:#f8f3e9;
  --sp-cream-2:#f5efe6;
  --sp-cool:#eef3f6;
  --sp-cool-2:#f4f7f8;
  --sp-ink:#152033;
  --sp-muted:#647084;
  --sp-line:#d9e1e8;
  --sp-shadow:0 12px 28px rgba(7,24,39,.08);
  --sp-shadow-soft:0 6px 18px rgba(7,24,39,.05);
  --sp-radius:8px;
}

/* Site chrome */
#site-header-wrapper{position:relative}
#site-header-wrapper:not(.site-header-wrapper-transparent) .header-background,
#site-header-wrapper:not(.site-header-wrapper-transparent) #site-header.site-header,
#site-header-wrapper.site-header-wrapper-transparent .header-background{
  background:var(--sp-navy)!important;
}
#site-header-wrapper::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-3px;height:3px;z-index:15;
  pointer-events:none;
  background:var(--sp-orange);
}
#site-header .site-title a,
#site-header .site-title,
#primary-menu.nav-menu>li>a,
#primary-navigation .nav-menu>li>a{color:#fff!important}
#primary-menu.nav-menu>li>a,
#primary-navigation .nav-menu>li>a{
  font-weight:700;
  letter-spacing:.01em;
  transition:color .18s ease,opacity .18s ease;
}
#primary-menu.nav-menu>li>a:hover,
#primary-menu.nav-menu>li.current-menu-item>a,
#primary-menu.nav-menu>li.current-menu-ancestor>a,
#primary-navigation .nav-menu>li>a:hover{color:var(--sp-gold)!important}

.page-title-block{
  position:relative;
  overflow:hidden;
  background:var(--sp-navy)!important;
}
.page-title-block::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;height:3px;
  background:var(--sp-orange);
  pointer-events:none;
}
.page-title-block h1,
.page-title-block .title-xlarge,
.page-title-block .title-h1,
.page-title-block .breadcrumbs,
.page-title-block .breadcrumbs a{color:#fff!important}
.page-title-block .breadcrumbs a:hover{color:var(--sp-gold)!important}

footer.custom-footer,
#colophon.site-footer,
#footer-nav.site-footer{
  position:relative;
  background:var(--sp-navy)!important;
  color:rgba(255,255,255,.88)!important;
}
footer.custom-footer::before,
#colophon.site-footer::before,
#footer-nav.site-footer::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:3px;
  background:var(--sp-orange);
  pointer-events:none;
}
#footer-navigation a,
.footer-site-info,
.footer-site-info a,
#footer-socials a{color:rgba(255,255,255,.9)!important}
#footer-navigation a:hover,
.footer-site-info a:hover,
#footer-socials a:hover{color:var(--sp-gold)!important}

/* Global interaction language */
.elementor-button,
a.gem-button,
button.gem-button,
.gem-button,
input[type=submit],
button[type=submit]{
  border-radius:4px!important;
  font-weight:800!important;
  letter-spacing:.01em;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease!important;
}
.elementor-button:hover,
a.gem-button:hover,
button.gem-button:hover,
.gem-button:hover,
input[type=submit]:hover,
button[type=submit]:hover{
  transform:none!important;
  box-shadow:none!important;
}
input[type=text],
input[type=email],
input[type=tel],
input[type=url],
input[type=number],
input[type=date],
input[type=password],
select,
textarea{border-radius:4px!important}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
input[type=url]:focus,
input[type=number]:focus,
input[type=date]:focus,
input[type=password]:focus,
select:focus,
textarea:focus{
  border-color:var(--sp-orange)!important;
  box-shadow:0 0 0 2px rgba(242,140,0,.12)!important;
  outline:none!important;
}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--sp-orange)!important;
  outline-offset:2px!important;
}

/* Shared custom components */
.sunprise-areas,.sunprise-guides{color:var(--sp-ink)}
.sunprise-areas h3,.sunprise-guides h3{color:var(--sp-navy-2);font-weight:800}
.sunprise-areas h3::after,.sunprise-guides h3::after{
  content:"";display:block;width:42px;height:2px;margin-top:10px;background:var(--sp-orange)
}
.sunprise-area-link{color:var(--sp-navy-2)!important;font-weight:700}
.sunprise-area-link:hover{color:var(--sp-orange)!important}
.sunprise-guides{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:0}
.sunprise-guides li{
  padding:13px 0;
  border:0;
  border-bottom:1px solid var(--sp-line);
  border-radius:0;
  background:transparent;
}
.sunprise-faq__item{
  overflow:hidden;
  margin:0;
  border:0;
  border-bottom:1px solid var(--sp-line);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.sunprise-faq__summary{
  padding:16px 0;
  color:var(--sp-navy-2);
  background:transparent;
}
.sunprise-faq__panel{padding:0 0 16px;color:var(--sp-muted)}

/* Sales onboarding */
.page-id-4238 .sunprise-onboarding{
  --navy:var(--sp-navy-2)!important;
  --navy-deep:var(--sp-navy)!important;
  --orange:var(--sp-orange)!important;
  --orange-deep:#e47f00!important;
  --bg:var(--sp-cream)!important;
  --bg-soft:var(--sp-cool)!important;
  --bg-warm:var(--sp-cream-2)!important;
  --text:var(--sp-ink)!important;
  --muted:var(--sp-muted)!important;
  --line:var(--sp-line)!important;
  --shadow:var(--sp-shadow)!important;
  background:var(--sp-cream)!important;
}
.page-id-4238 .sunprise-onboarding-hero{border-bottom:3px solid var(--sp-orange)}
.page-id-4238 .sunprise-onboarding-hero::after,
.page-id-4238 .sunprise-onboarding-final::before{display:none!important}
.page-id-4238 .sunprise-onboarding-eyebrow{
  color:var(--sp-orange)!important;
  font-size:14px!important;
  letter-spacing:.14em!important;
}
.page-id-4238 .sunprise-onboarding h2::after{
  width:48px!important;height:2px!important;background:var(--sp-orange)!important
}
.page-id-4238 .sunprise-onboarding-paths,
.page-id-4238 .sunprise-onboarding-values,
.page-id-4238 .sunprise-onboarding-faq{background:var(--sp-cream)!important}
.page-id-4238 .sunprise-onboarding-services,
.page-id-4238 .sunprise-onboarding-form{background:var(--sp-cool)!important}
.page-id-4238 .sunprise-onboarding-steps{background:var(--sp-cream-2)!important}
.page-id-4238 .sunprise-onboarding-path-card,
.page-id-4238 .sunprise-onboarding-service-card,
.page-id-4238 .sunprise-onboarding-step,
.page-id-4238 .sunprise-onboarding-form__form,
.page-id-4238 .sunprise-onboarding-faq__list,
.page-id-4238 .sunprise-onboarding-values__list li{
  border-radius:6px!important;
  border-color:var(--sp-line)!important;
  box-shadow:none!important;
}
.page-id-4238 .sunprise-onboarding-path-card,
.page-id-4238 .sunprise-onboarding-step,
.page-id-4238 .sunprise-onboarding-form__form{border-top:2px solid rgba(242,140,0,.65)!important}
.page-id-4238 .sunprise-onboarding-path-card__media,
.page-id-4238 .sunprise-onboarding-values__frame{
  background:var(--sp-cream-2)!important;
}
.page-id-4238 .sunprise-onboarding-step__num{
  background:var(--sp-navy)!important;
  border:2px solid #fff;
  box-shadow:none!important;
}
.page-id-4238 .sunprise-onboarding-step:first-child .sunprise-onboarding-step__num{background:var(--sp-orange)!important}
.page-id-4238 .sunprise-onboarding-btn{border-radius:4px!important}
.page-id-4238 .sunprise-onboarding-btn--primary{background:var(--sp-navy)!important;border-color:var(--sp-navy)!important}
.page-id-4238 .sunprise-onboarding-btn--accent{background:var(--sp-orange)!important;border-color:var(--sp-orange)!important}

/* Internal portal family */
.sunprise-portal,
.sunprise-vendor-portal,
.sp-pm,
.spa,
.sp-ccc{
  position:relative;
  overflow:hidden;
  background:var(--sp-cream)!important;
  border:1px solid var(--sp-line);
  border-radius:8px!important;
  box-shadow:none!important;
}
.sunprise-portal::before,
.sunprise-vendor-portal::before,
.sp-pm::before,
.spa::before,
.sp-ccc::before{
  content:"";
  display:block;
  height:5px;
  margin:-2rem -1.15rem 1.7rem;
  background:var(--sp-orange);
}
.sunprise-portal h1,.sunprise-portal h2,
.sunprise-vendor-portal h1,.sunprise-vendor-portal h2,
.sp-pm h1,.sp-pm h2,.spa h1,.spa h2,.sp-ccc h1,.sp-ccc h2{color:var(--sp-navy-2)!important}
.sunprise-portal h1::after,.sunprise-portal h2::after,
.sunprise-vendor-portal h1::after,.sunprise-vendor-portal h2::after,
.sp-pm h1::after,.sp-pm h2::after,.spa h1::after,.spa h2::after,.sp-ccc h1::after,.sp-ccc h2::after{
  content:"";display:block;width:42px;height:2px;margin-top:9px;background:var(--sp-orange)
}
.sunprise-portal__card,
.sunprise-vendor-portal .card,
.sp-pm .card,.spa .card,.sp-ccc .card{
  border-radius:6px!important;
  border-color:var(--sp-line)!important;
  box-shadow:none!important;
}

@media (max-width:980px){
  #site-header-wrapper::after{height:3px;bottom:-3px}
  .sunprise-portal,.sunprise-vendor-portal,.sp-pm,.spa,.sp-ccc{border-radius:6px!important}
}

@media (prefers-reduced-motion:reduce){
  .elementor-button,a.gem-button,button.gem-button,.gem-button,input[type=submit],button[type=submit]{transition:none!important}
}
