/* SmartTech light refresh: warm whites with emerald and wine accents. */
:root {
  --ink: #f8f7f2;
  --panel: #ffffff;
  --steel: #41504a;
  --muted: #66736d;
  --line: #dce3dc;
  --red: #087f5b;
  --ember: #0ba879;
  --paper: #f7f5ef;
  --card: #ffffff;
  color-scheme: light;
}

html, body { background: #f8f7f2; color: #293832; }
body { overflow-x: clip; }
header.nav, .nav, .nav-links, .menu { color: #293832; background: #fffefa; }
.nav { border-color: #e4e7df; }
.brand, .brand small, .menu, .nav-links a { color: #293832; }
.nav-links a:hover, .brand:hover, .menu[aria-expanded="true"] { color: #087f5b; }
.menu { border-color: #dce3dc; }

section:not(.trust), footer { color: #293832; }
section:not(.trust) :is(h1,h2,h3,h4,p,span,small,strong,b,li,a,label,summary,figcaption,dt,dd,legend,button) { color: inherit; }
section:not(.trust) :is(.eyebrow,.section-index,.feature-kicker,.product-kicker) { color: #087f5b; }
h1 em, h2 em { color: #8b2947; }

.hero#inicio { color: #293832; background: #f8f7f2; }
#inicio.hero:after {
  background: linear-gradient(90deg,rgba(248,247,242,.98) 0%,rgba(248,247,242,.92) 42%,rgba(248,247,242,.5) 76%,rgba(248,247,242,.18) 100%);
}
.hero-copy, .hero-copy p, .hero-note, .hero-note strong { color: #34443d; }
.hero h1 { color: #22332d; }
.hero-note { background: rgba(255,255,252,.94); border-color: #dce3dc; box-shadow: 0 12px 30px rgba(39,56,48,.1); }
.hero-note i, .eyebrow:before { background: #087f5b; }
.hero-view-toggle, .viewer-switch { color: #293832; background: rgba(255,255,252,.95); border-color: #dce3dc; box-shadow: 0 8px 24px rgba(39,56,48,.1); }
.hero-view-toggle button, .viewer-switch button { color: #293832; }
.hero-view-toggle button.active, .viewer-switch button.active { color: #fff; background: #087f5b; }

.trust { color: #293832; background: #e8f1e9; }
.trust .shell { background: transparent; }
.trust :is(span,strong,b,p) { color: #293832; }
.trust strong, .trust b { color: #087f5b; }

.section-light,.process,.reviews,.smarttech-faq,.catalog-section,.image-ribbon,.visualizer,.behind,.technical,.business,.lab { background: #f7f5ef; }
.feature-split,.works,.revenue,.space-lab,.maker,.packs,.campaigns,.christmas,.why,.custom { background: #eef2ec; }
.business,.campaigns,.reviews { background: #f4eaed; }
.technical,.process,.lab,.space-lab { background: #eaf2ec; }
.solution-grid,.steps,.business-list,.why-points,.pack-grid,.campaign-grid { background: transparent; }

.solution,.step,.feature-copy,.showcase-panel,.why-point,.business-item,.revenue-card,.pack,.campaign,.christmas-product,.review-card-empty,.viewer-card,.cart-panel,.contact-card,.quote-form,.maker-form,.review-form,.technical-list>div,.faq-grid details {
  color: #293832; background: #fffefa; border-color: #dce3dc; box-shadow: 0 12px 30px rgba(39,56,48,.07);
}
.quote-form input,.quote-form select,.quote-form textarea,.maker-form input,.maker-form select,.maker-form textarea,.review-form input,.review-form textarea,.space-controls input,.space-controls textarea,.space-advisor select {
  color: #293832; background: #fff; border-color: #cdd8d0;
}
.quote-form input::placeholder,.quote-form textarea::placeholder,.maker-form input::placeholder,.maker-form textarea::placeholder,.review-form input::placeholder,.review-form textarea::placeholder { color: #68766f; opacity: 1; }
.quote-form :is(input,select,textarea):focus-visible,.maker-form :is(input,select,textarea):focus-visible,.review-form :is(input,textarea):focus-visible,.space-controls :is(input,textarea):focus-visible {
  outline: 3px solid rgba(11,168,121,.35); border-color: #087f5b;
}

.work,.showcase-media,.feature-photo,.product-photo,.section-visual,.viewer-frame,.space-stage,.game-board { background-color: #e9eee8; border-color: #dce3dc; }
.work-label,.ribbon-card span { color: #293832; background: linear-gradient(180deg,transparent,rgba(248,247,242,.96)); }
.behind-images figcaption { color: #293832; background: #fffefa; }
.section-visual figcaption { color: #53625b; }

.main-button,.quote-link,.add-cart,.quote-product,.game-start,.button,.contact-card .main-button,.nav-links .quote-link,.wa {
  color: #fff; background: #087f5b; border-color: #087f5b; box-shadow: 0 8px 20px rgba(8,127,91,.16);
}
section:not(.trust) :is(.main-button,.quote-link,.add-cart,.quote-product,.game-start,.button,.wa,.quote-form button,.maker-form button,.review-form button) {
  color: #fff;
}
.main-button:hover,.quote-link:hover,.add-cart:hover,.quote-product:hover,.quote-product:focus-visible,.game-start:hover,.button:hover,.contact-card .main-button:hover,.nav-links .quote-link:hover,.wa:hover {
  color: #fff; background: #0ba879; border-color: #0ba879;
}
.space-product-picks button { color: #293832; background: #e7eee8; border-color: #d2ddd4; }
.space-product-picks button.active { color: #fff; background: #087f5b; }

.payment-note,.season-note,.space-advisor { color: #293832; background: #f3e8eb; border-color: #e5d1d7; }
.payment-note :is(p,span,strong,b),.season-note :is(p,span,strong,b),.space-advisor :is(p,span,strong,b,label) { color: #293832; }
.price-note { color: #4e5f56; background: #eaf2ec; }
.price-note b,.revenue-no,.business-item b,.why-point strong,.campaign span { color: #8b2947; }
.product-body,.product-body :is(h3,p,li,small) { color: #293832; }
.qty button,.qty output { color: #293832; background: #f0f2ec; border-color: #dce3dc; }
.review-ask { color: #293832; background: #f1e7ea; border-color: #e5d1d7; }
.review-ask p { color: #53625b; }
.review-icon { background: #f3e1e6; }

.contact { color: #293832; background: #e6f0e8; }
.contact :is(h2,h3,p,a,span,small,strong) { color: inherit; }
.contact-card { background: #fffefa; }
.footer { color: #46564e; background: #f0eee7; border-top: 1px solid #dce3dc; }
.footer :is(a,p,span,small,strong) { color: inherit; }
.footer a:hover,.seo-links a:hover { color: #087f5b; }
.festive-bar { color: #5d3442; background: #f1e2e6; }
.festive-bar :is(a,b,span) { color: #72344b; }
.christmas-float { color: #5d3442; background: #fff8f4; border-color: #e7cbd3; box-shadow: 0 8px 22px rgba(73,38,50,.12); }
.cart-float { color: #293832; background: #fffefa; border-color: #dce3dc; }
.cart-overlay { background: rgba(31,43,37,.34); }
.lightbox-close,.close-button { color: #293832; background: #fffefa; }

a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible { outline: 3px solid #0ba879; outline-offset: 3px; }

@media (max-width:900px) {
  .nav-links { color: #293832; background: #fffefa; border-color: #dce3dc; box-shadow: 0 12px 28px rgba(39,56,48,.12); }
}
@media (max-width:700px) {
  #inicio.hero:after { background: linear-gradient(180deg,rgba(248,247,242,.98) 0%,rgba(248,247,242,.93) 54%,rgba(248,247,242,.46) 100%); }
  .hero-image { opacity: .32; filter: saturate(.84) brightness(1.05); }
  .hero-content { width: min(100%,42rem); }
  .hero-actions>* { min-height: 2.9rem; }
  .wa--contact { color: #fff; background: #128c57; }
  .footer .shell { padding-bottom: max(1rem,env(safe-area-inset-bottom)); }
}
@media (max-width:430px) {
  .hero-content { padding-inline: 0; }
  .hero h1 { max-width: 12ch; font-size: clamp(2.6rem,12vw,3.4rem); line-height: 1; }
  .section { padding-block: 3.25rem; }
  .section h2,.contact h2 { font-size: clamp(2rem,9vw,2.8rem); }
  .quote-form,.maker-form { min-width: 0; }
  .quote-form :is(input,select,textarea,button),.maker-form :is(input,select,textarea,button) { max-width: 100%; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Quiet white canvas with a small amount of dark, refined brand color. */
:root {
  --ink: #fffefa;
  --paper: #fffefa;
  --line: #e3e8e1;
}

html, body { background: #fffefa; }

header.nav {
  width: 100%;
  max-width: none;
  margin: 0;
  padding-left: max(var(--safe-left), calc(50vw - 38rem));
  padding-right: max(var(--safe-right), calc(50vw - 38rem));
  color: #fffefa;
  background: #203d33;
  border-bottom: 1px solid rgba(255,255,255,.2);
}
.nav, .nav-links { background: #203d33; }
header.nav .brand, header.nav .brand small,
header.nav .nav-links a, header.nav .menu { color: #fffefa; }
header.nav .brand:hover, header.nav .nav-links a:hover { color: #d9ebdf; }
header.nav .brand-mark {
  color: #e9ddbd;
  background: rgba(255,255,255,.07);
  border-color: rgba(255,255,255,.65);
}
header.nav .menu {
  background: transparent;
  border-color: rgba(255,255,255,.55);
}
header.nav .menu:hover, header.nav .menu[aria-expanded="true"] {
  color: #203d33;
  background: #fffefa;
}
header.nav .quote-link {
  color: #fff;
  background: #087f5b;
  border: 1px solid #69b999;
}
header.nav .quote-link:hover { color: #fff; background: #0ba879; }

.festive-bar {
  color: #fff9f3;
  background: #6b344a;
  border-color: rgba(255,255,255,.2);
}
.festive-bar :is(a,b,span) { color: #fff9f3; }
.festive-bar a:hover { color: #f2dfd4; }

.hero#inicio { background: #fffefa; }
#inicio.hero:after {
  background: linear-gradient(90deg,rgba(255,254,250,.98) 0%,rgba(255,254,250,.91) 42%,rgba(255,254,250,.48) 76%,rgba(255,254,250,.15) 100%);
}

main > section:not(#inicio) { background: #fffefa; }
main > section:not(#inicio):is(.works,.process,.lab,.space-lab,.reviews,.contact,.business,.packs,.campaigns) { background: #fafbf8; }
main > section:not(#inicio).trust { background: #f5f8f4; }

.game {
  color: #293832;
  background: #f8faf7;
  border-color: #dce3dc;
  box-shadow: 0 14px 32px rgba(39,56,48,.07);
}
.game-board { background: radial-gradient(circle at 50% 35%,#edf5e9,#f9faf7 72%); }
.game-combo { color: #7d314d; }
.cart-row { color: #293832; background: #fffefa; border-color: #dce3dc; }

.christmas-float {
  color: #fff9f3;
  background: #6b344a;
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 10px 24px rgba(68,35,48,.22);
}
.christmas-float :is(span,b,strong) { color: #fff9f3; }
.christmas-float:hover { color: #fff; background: #80425a; }

footer.footer {
  color: #fffefa;
  background: #203d33;
  border-top: 1px solid rgba(255,255,255,.2);
}
.footer :is(a,p,span,small,strong) { color: #fffefa; }
.footer a:hover { color: #d9ebdf; }

@media (max-width:1200px) {
  header.nav .menu { display: block; }
  header.nav .nav-links {
    display: none;
    position: absolute;
    z-index: 40;
    top: calc(100% - .05rem);
    left: var(--safe-left);
    right: var(--safe-right);
    flex-direction: column;
    align-items: stretch;
    max-height: calc(100dvh - 5rem);
    overflow-y: auto;
    padding: .8rem;
    color: #fffefa;
    background: #203d33;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 0 0 .85rem .85rem;
    box-shadow: 0 18px 36px rgba(28,51,42,.24);
  }
  header.nav .nav-links.open { display: flex; }
  header.nav .nav-links a { min-height: 2.9rem; }
  header.nav .nav-links .quote-link { justify-content: center; }
}

@media (max-width:700px) {
  #inicio.hero:after {
    background: linear-gradient(180deg,rgba(255,254,250,.99) 0%,rgba(255,254,250,.94) 54%,rgba(255,254,250,.49) 100%);
  }
  .festive-bar { gap: .2rem .55rem; line-height: 1.4; }
  .footer .shell { gap: .6rem; }
}
