:root {
  --font-family: "Sora", sans-serif;
  --font-size-base: 17.3px;
  --line-height-base: 1.62;

  --max-w: 1640px;
  --space-x: 1.42rem;
  --space-y: 1.5rem;
  --gap: 1.86rem;
  --space-section-y: calc(var(--space-y) * 2.4);
  --space-section-x: var(--space-x);
  --space-block: calc(var(--gap) * 1.5);
  --space-card: calc(var(--space-y) * .75);
  --font-size-sm: calc(var(--font-size-base) * .875);
  --font-size-md: var(--font-size-base);
  --font-size-lg: calc(var(--font-size-base) * 1.125);
  --font-size-h3: calc(var(--font-size-base) * 1.35);
  --font-size-h2: calc(var(--font-size-base) * 2);
  --font-size-h1: calc(var(--font-size-base) * 2.65);
  --motion-distance: calc(var(--gap) * var(--random-number));

  --radius-xl: 1.18rem;
  --radius-lg: 0.76rem;
  --radius-md: 0.51rem;
  --radius-sm: 0.32rem;

  --shadow-sm: 0 2px 6px rgba(0,0,0,0.1);
  --shadow-md: 0 10px 26px rgba(0,0,0,0.13);
  --shadow-lg: 0 16px 30px rgba(0,0,0,0.15);

  --overlay: rgba(15, 23, 42, 0.6);
  --anim-duration: 370ms;
  --anim-ease: ease;
  --random-number: 2;

  --brand: #244238;
  --brand-contrast: #faf8f1;
  --accent: #a45f2a;
  --accent-contrast: #fff7ed;

  --neutral-0: #FFFFFF;
  --neutral-100: #F3F4F6;
  --neutral-300: #D1D5DB;
  --neutral-600: #4B5563;
  --neutral-800: #1F2937;
  --neutral-900: #111827;

  --page-bg: #faf8f1;
  --page-fg: #24211d;
  --muted-bg: #ece7dc;
  --muted-fg: #24211d;
  --card-bg: #ffffff;
  --card-fg: #24211d;
  --card-border: #d9d0c0;
  --inverse-bg: #244238;
  --inverse-fg: #faf8f1;
  --primary-bg: #244238;
  --primary-fg: #faf8f1;
  --primary-hover: #31594c;
  --accent-bg: #a45f2a;
  --accent-fg: #fff7ed;
  --accent-hover: #874b20;
  --gradient-hero-bg: linear-gradient(135deg, #faf8f1 0%, #ece7dc 54%, #244238 100%);
  --gradient-hero-fg: #24211d;
  --gradient-accent-bg: linear-gradient(135deg, #244238 0%, #a45f2a 100%);
  --gradient-accent-fg: #faf8f1;

  --ring: #E85D04;

  --link: #244238;
  --link-hover: #a45f2a;

  --btn-ghost-bg: transparent;
  --btn-ghost-bg-hover: color-mix(in srgb, currentColor 10%, transparent);
  --input-placeholder: rgba(255,255,255,0.55);
}
body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
*{box-sizing:border-box;}
a{color:inherit;}
.btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
.btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
.btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
.btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
.bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
.text-primary{color:var(--primary-bg)!important;}
.border-primary{border-color:var(--primary-bg)!important;}
.bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
.bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}

.site-header {
    width: 100%;
    background: var(--page-bg);
    border-bottom: 1px solid var(--card-border);
    box-shadow: var(--shadow-sm);
  }

  .header-inner {
    max-width: var(--max-w);
    margin: 0 auto;
    padding: var(--space-y) var(--space-x);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap);
  }

  .logo {
    font-size: var(--font-size-h2);
    font-weight: 700;
    color: var(--page-fg);
    text-decoration: none;
    letter-spacing: -0.02em;
    white-space: nowrap;
  }

  .logo:hover {
    color: var(--link-hover);
  }

  .main-nav {
    display: flex;
    align-items: center;
    gap: var(--gap);
  }

  .main-nav a {
    color: var(--page-fg);
    text-decoration: none;
    font-size: var(--font-size-md);
    font-weight: 500;
    padding: 0.5rem 0.75rem;
    border-radius: var(--radius-sm);
    transition: background-color var(--anim-duration) var(--anim-ease), color var(--anim-duration) var(--anim-ease);
  }

  .main-nav a:hover {
    background: var(--muted-bg);
    color: var(--link-hover);
  }

  .header-actions {
    display: flex;
    align-items: center;
    gap: var(--gap);
  }

  .secondary-link {
    color: var(--page-fg);
    text-decoration: none;
    font-size: var(--font-size-sm);
    font-weight: 500;
    padding: 0.5rem 0.75rem;
    border-radius: var(--radius-sm);
    transition: background-color var(--anim-duration) var(--anim-ease), color var(--anim-duration) var(--anim-ease);
  }

  .secondary-link:hover {
    background: var(--muted-bg);
    color: var(--link-hover);
  }

  .btn-cta {
    background: var(--primary-bg);
    color: var(--primary-fg);
    text-decoration: none;
    font-size: var(--font-size-md);
    font-weight: 600;
    padding: 0.625rem 1.25rem;
    border-radius: var(--radius-md);
    transition: background-color var(--anim-duration) var(--anim-ease), transform var(--anim-duration) var(--anim-ease);
  }

  .btn-cta:hover {
    background: var(--primary-hover);
    transform: translateY(-1px);
  }

  .burger {
    display: none;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    width: 44px;
    height: 44px;
    background: var(--card-bg);
    border: 1px solid var(--card-border);
    border-radius: var(--radius-sm);
    cursor: pointer;
    padding: 0;
  }

  .burger span {
    display: block;
    width: 20px;
    height: 2px;
    background: var(--page-fg);
    border-radius: 2px;
    transition: transform var(--anim-duration) var(--anim-ease), opacity var(--anim-duration) var(--anim-ease);
  }

  .burger.active span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .burger.active span:nth-child(2) {
    opacity: 0;
  }

  .burger.active span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  @media (max-width: 767px) {
    .header-inner {
      flex-wrap: wrap;
      padding: var(--space-y) var(--space-x);
    }

    .logo {
      font-size: var(--font-size-h3);
    }

    .main-nav {
      display: none;
      flex-direction: column;
      width: 100%;
      gap: 0.25rem;
      padding: 1rem 0;
      border-top: 1px solid var(--card-border);
      margin-top: 1rem;
    }

    .main-nav.open {
      display: flex;
    }

    .main-nav a {
      width: 100%;
      padding: 0.75rem 0.5rem;
      text-align: left;
    }

    .header-actions {
      display: none;
    }

    .burger {
      display: flex;
      margin-left: auto;
    }
  }

.site-footer {
  background: var(--inverse-bg, #1a1a2e);
  color: var(--inverse-fg, #f5f5f5);
  font-family: var(--font-family, 'Inter', sans-serif);
  font-size: var(--font-size-base, 1rem);
  line-height: var(--line-height-base, 1.6);
  padding: var(--space-section-y, 3rem) var(--space-section-x, 2rem);
  width: 100%;
}

.footer-container {
  max-width: var(--max-w, 1200px);
  margin: 0 auto;
}

.footer-top {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: var(--gap, 2rem);
  padding-bottom: var(--space-block, 2rem);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-brand {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.footer-logo {
  font-size: var(--font-size-h2, 1.75rem);
  font-weight: 700;
  color: var(--inverse-fg, #f5f5f5);
  text-decoration: none;
  letter-spacing: -0.02em;
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.footer-logo:hover {
  color: var(--accent-fg, #4ecdc4);
}

.footer-tagline {
  font-size: var(--font-size-sm, 0.875rem);
  color: rgba(255, 255, 255, 0.7);
  margin: 0;
}

.footer-heading {
  font-size: var(--font-size-md, 1rem);
  font-weight: 600;
  margin: 0 0 1rem;
  color: var(--inverse-fg, #f5f5f5);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.footer-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.footer-menu a {
  color: rgba(255, 255, 255, 0.85);
  text-decoration: none;
  font-size: var(--font-size-base, 1rem);
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.footer-menu a:hover {
  color: var(--accent-fg, #4ecdc4);
}

.footer-contact {
  display: flex;
  flex-direction: column;
}

.contact-info {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.contact-item {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.contact-label {
  font-size: var(--font-size-sm, 0.875rem);
  font-weight: 600;
  color: rgba(255, 255, 255, 0.7);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.contact-value {
  color: rgba(255, 255, 255, 0.9);
  font-size: var(--font-size-sm, 0.875rem);
  text-decoration: none;
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.contact-value:hover {
  color: var(--accent-fg, #4ecdc4);
}

.footer-bottom {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding-top: var(--space-block, 2rem);
  padding-bottom: var(--space-block, 2rem);
}

.footer-legal {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.footer-legal a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  font-size: var(--font-size-sm, 0.875rem);
  transition: color var(--anim-duration, 0.3s) var(--anim-ease, ease);
}

.footer-legal a:hover {
  color: var(--accent-fg, #4ecdc4);
}

.legal-separator {
  color: rgba(255, 255, 255, 0.4);
}

.footer-copyright {
  margin: 0;
  font-size: var(--font-size-sm, 0.875rem);
  color: rgba(255, 255, 255, 0.6);
}

.footer-disclaimer {
  padding-top: var(--space-block, 2rem);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-disclaimer p {
  margin: 0;
  font-size: var(--font-size-sm, 0.875rem);
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.5;
}

@media (max-width: 768px) {
  .footer-top {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  
  .footer-brand {
    align-items: flex-start;
  }
  
  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .footer-legal {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }
  
  .legal-separator {
    display: none;
  }
}

.cookies{position:fixed;left:var(--space-x);right:var(--space-x);bottom:var(--space-y);z-index:1200;}

    .cookies .wrap{max-width:var(--max-w);margin:0 auto;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:calc(var(--space-y) * .9) var(--space-x);display:grid;grid-template-columns:1fr auto;gap:12px var(--gap);align-items:center;color:var(--card-fg);}

    .cookies .title{font-weight:700;}

    .cookies p{margin:0;grid-column:1 / 2;}

    .cookies .actions{grid-row:1 / 3;grid-column:2 / 3;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}

    .cookies .actions button{border:1px solid var(--card-border);background:var(--muted-bg);color:var(--muted-fg);border-radius:var(--radius-sm);padding:8px 12px;cursor:pointer;}

    .cookies .actions button.cookie-accept{background:var(--accent-bg);color:var(--accent-fg);border-color:transparent;font-weight:700;}

    @media (max-width: 760px){.cookies .wrap{grid-template-columns:1fr;}
        .cookies p,.cookies .actions{grid-column:auto;grid-row:auto;}
        .cookies .actions{justify-content:flex-start;}
    }

.main___front {
    padding: clamp(3.8rem, 8vw, 6.9rem) var(--space-x);
    background: radial-gradient(circle at 50% 0, color-mix(in srgb, currentColor 16%, transparent), transparent 30%), var(--gradient-hero-bg);
    color: var(--gradient-hero-fg);
}

.main___front .wrap {
    max-width: var(--max-w);
    margin: 0 auto;
    display: grid;
    grid-template-columns:1.15fr .85fr;
    gap: 1rem;
    align-items: center;
}

.main___front .copy p {
    margin: 0;
    color: color-mix(in srgb, currentColor 76%, transparent);
    text-transform: uppercase;
    letter-spacing: .1em;
    font-size: .82rem;
}

.main___front .copy h1 {
    margin: .6rem 0 0;
    font-size: clamp(2.5rem, 5vw, 4.8rem);
    line-height: 1;
}

.main___front .copy strong {
    display: block;
    margin-top: .7rem;
}

.main___front .copy span {
    display: block;
    margin-top: .9rem;
    max-width: 38rem;
}

.main___front .cards {
    display: grid;
    gap: .75rem;
}

.main___front .cards div {
    padding: 1rem;
    border-radius: var(--radius-lg);
    background: color-mix(in srgb, currentColor 12%, transparent);
    border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
}

@media (max-width: 860px) {
    .main___front .wrap {
        grid-template-columns:1fr;
    }
}

.service-list__ledger{padding:clamp(48px,8vw,80px) 0;color:var(--page-fg);background:var(--page-bg);}

.service-list__ledger .inner{max-width:var(--max-w);margin:0 auto;padding:0 var(--space-x);}

.service-list__ledger .title{text-align:center;margin-bottom:calc(var(--space-y) * 2);font-size:clamp(28px,4vw,40px);}

.service-list__ledger .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:calc(var(--gap) * 1.5);}

.service-list__ledger .card{background-color:var(--card-bg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--anim-duration) var(--anim-ease);border:1px solid var(--card-border);color:var(--card-fg);}

.service-list__ledger .card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);}

.service-list__ledger .card-image{width:100%;height:220px;object-fit:cover;}

.service-list__ledger .card-content{padding:clamp(16px,3vw,28px);}

.service-list__ledger .card-content h3{margin-bottom:var(--space-y);}

.service-list__ledger .card-content p{margin-bottom:var(--space-y);}

.service-list__ledger .card-meta{font-size:0.9rem;margin-bottom:0.75rem;color:var(--accent-bg);font-weight:600;}

.service-list__ledger .card-btn{display:inline-block;padding:12px 30px;border-radius:var(--radius-md);font-weight:500;text-align:center;transition:all var(--anim-duration) var(--anim-ease);cursor:pointer;border:1px solid var(--primary-bg);font-size:1rem;background-color:var(--primary-bg);color:var(--primary-fg);}

.service-list__ledger .card-btn:hover{background-color:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--primary-fg);}

.active__trust-reasons{padding:var(--space-section-y) var(--space-section-x);background:var(--gradient-hero-bg);color:var(--gradient-hero-fg)}
.active__trust-reasons .wrap{max-width:var(--max-w);margin:0 auto}
.active__trust-reasons .intro{max-width:38rem;margin-bottom:var(--space-block)}
.active__trust-reasons h2{margin:0;font-size:var(--font-size-h1);line-height:1}
.active__trust-reasons .intro p{margin:var(--space-y) 0 0;font-size:var(--font-size-lg);line-height:var(--line-height-base)}
.active__trust-reasons .matrix{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--space-y)}
.active__trust-reasons .cell{grid-column:span 4;padding:var(--space-y) 0;font-size:var(--font-size-h3);line-height:1.08}
.active__trust-reasons p{margin:var(--space-card) 0 0;line-height:var(--line-height-base)}
@media(max-width:760px){.active__trust-reasons .matrix{display:flex;flex-direction:column}.active__trust-reasons .cell{grid-column:auto}}

.action-inline{padding:clamp(56px,8vw,96px) clamp(16px,4vw,40px);background:var(--page-bg);color:var(--page-fg);}
.action-inline .wrap{max-width:var(--max-w);margin:0 auto;display:grid;grid-template-columns:1.1fr .9fr;gap:12px;}
.action-inline .main{border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:14px;background:var(--muted-bg);color:var(--muted-fg);}
.action-inline .main h2{margin:0;font-size:clamp(28px,4vw,42px);}
.action-inline .main p{margin:8px 0 10px;}
.action-inline .main a{display:inline-flex;padding:9px 12px;border-radius:var(--radius-sm);background:var(--primary-bg);color:var(--primary-fg);text-decoration:none;}
.action-inline .notes{border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:14px;background:var(--muted-bg);color:var(--muted-fg);}
.action-inline .notes p{margin:0 0 8px;}
.action-inline .notes p:last-child{margin-bottom:0;}
@media(max-width:820px){.action-inline .wrap{grid-template-columns:1fr;}}

.stacked--choices {
  background: var(--muted-bg);
  color: var(--muted-fg);
  padding: var(--space-section-y) var(--space-section-x);
}
.stacked--choices .wrap {
  width: min(100%, var(--max-w));
  margin: 0 auto;
  display: flex;
  gap: var(--space-block);
  align-items: flex-start;
}
.stacked--choices h2,
.stacked--choices p { margin: 0; }
.stacked--choices h2 {
  flex: 0 0 min(30rem, 44%);
  font-size: var(--font-size-h1);
  line-height: 1;
}
.stacked--choices .lane {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-y);
}
.stacked--choices .intro {
  color: var(--page-fg);
  font-size: var(--font-size-lg);
  line-height: var(--line-height-base);
}
.stacked--choices .note {
  display: flex;
  gap: var(--space-y);
  padding-top: var(--space-y);
  border-top: 1px solid var(--card-border);
}
.stacked--choices strong {
  flex: 0 0 min(14rem, 36%);
  color: var(--primary-bg);
  font-size: var(--font-size-h3);
  line-height: 1.14;
}
.stacked--choices .note p {
  line-height: var(--line-height-base);
}
@media (max-width: 820px) {
  .stacked--choices .wrap,
  .stacked--choices .note { flex-direction: column; }
}

.service-list-bar{color:var(--accent-fg);background:linear-gradient(180deg,var(--accent-bg) 0%,var(--page-bg) 40%);padding:clamp(24px,4vw,56px) clamp(16px,4vw,40px);}

    .service-list-bar .c{max-width:var(--max-w);margin:0 auto;}

    .service-list-bar .header-wrapper{display:grid;grid-template-columns:1fr auto;gap:clamp(24px,4vw,48px);align-items:start;margin-bottom:clamp(32px,5vw,56px);}

    /* Si randomNumber es par (2) - el primer hijo recibe order: 2 */
    .service-list-bar .header-wrapper > *:first-child{order:calc((var(--random-number) % 2) * 2);}

    @media (max-width: 1023px){.service-list-bar .header-wrapper{grid-template-columns:1fr;}
    }

    .service-list-bar .h{text-align:left;}

    .service-list-bar h1{font-size:clamp(32px,6vw,56px);margin:0 0 0.75rem;font-weight:700;line-height:1.1;}

    .service-list-bar .h p{font-size:clamp(16px,2.4vw,20px);margin:0;line-height:1.6;}

    .service-list-bar .filters{display:flex;flex-direction:column;gap:0.5rem;min-width:200px;}

    /* Si randomNumber es par (2) - el primer hijo recibe order: 2 */
    .service-list-bar .filters > *:first-child{order:calc((var(--random-number) % 2) * 2);}

    @media (max-width: 1023px){.service-list-bar .filters{flex-direction:row;flex-wrap:wrap;min-width:auto;}
    }

    .service-list-bar .filter{padding:0.75rem 1.5rem;border-radius:var(--radius-lg);border:2px solid var(--ring);background:var(--page-bg);color:var(--page-fg);cursor:pointer;transition:all var(--anim-duration) var(--anim-ease);font-weight:500;text-align:left;}

    @media (max-width: 1023px){.service-list-bar .filter{text-align:center;}
    }

    .service-list-bar .filter:hover{background:var(--primary-bg);color:var(--primary-fg);border-color:var(--primary-bg);transform:translateX(4px);}

    .service-list-bar .list{display:flex;flex-direction:column;gap:clamp(16px,2.5vw,24px);}

    .service-list-bar .card{background:var(--card-bg);border:2px solid var(--card-border);border-radius:var(--radius-xl);padding:clamp(20px,3vw,32px);box-shadow:var(--shadow-sm);transition:all var(--anim-duration) var(--anim-ease);display:grid;grid-template-columns:50% 1fr auto;gap:clamp(20px,3vw,32px);align-items:center;color:var(--card-fg);}

    .service-list-bar .card:hover{border-color:var(--primary-bg);box-shadow:var(--shadow-lg);transform:translateX(8px);}

    .service-list-bar .image{width:100%;height:180px;border-radius:var(--radius-lg);overflow:hidden;}

    .service-list-bar .image img{width:100%;height:100%;object-fit:cover;transition:transform var(--anim-duration) var(--anim-ease);}

    .service-list-bar .card:hover .image img{transform:scale(1.05);}

    .service-list-bar .info{display:flex;flex-direction:column;gap:1rem;flex:1;}

    .service-list-bar .main{display:flex;flex-direction:column;gap:0.75rem;}

    .service-list-bar h3{margin:0;font-size:clamp(20px,2.8vw,24px);font-weight:600;}

    .service-list-bar .description{line-height:1.6;margin:0;font-size:0.95rem;}

    .service-list-bar .meta{display:flex;gap:0.5rem;align-items:center;font-size:0.875rem;}

    .service-list-bar .rating{font-weight:600;}

    .service-list-bar .actions{display:flex;flex-direction:column;gap:1rem;align-items:flex-end;min-width:180px;}

    .service-list-bar .btn{padding:0.875rem 2rem;border-radius:var(--radius-lg);background:var(--gradient-hero-bg);color:var(--gradient-hero-fg);text-decoration:none;transition:all var(--anim-duration) var(--anim-ease);font-weight:600;width:100%;text-align:center;}

    .service-list-bar .btn:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-md);color:var(--primary-fg);}

    .service-list-bar .image img{width:100%;}
    @media (max-width: 1023px){.service-list-bar .card{grid-template-columns:1fr;}

        .service-list-bar .image{height:240px;}

        .service-list-bar .actions{flex-direction:row;justify-content:space-between;align-items:center;width:100%;min-width:auto;}

        .service-list-bar .btn{width:auto;}
    }

.core---toolkit {
  background:#f7f7f7;
  color:#0a0f1a;
  padding:var(--space-section-y,78px) var(--space-section-x,20px);
}
.core---toolkit .wrap {
  width:min(100%,var(--max-w,1120px));
  margin:0 auto;
}
.core---toolkit .head {
  max-width:660px;
  margin-bottom:var(--space-block,30px);
}
.core---toolkit h2 {
  margin:0;
  font-size:clamp(var(--font-size-h2,32px),5vw,var(--font-size-h1,64px));
  line-height:1.05;
  letter-spacing:0;
}
.core---toolkit p {
  margin:var(--space-y,18px) 0 0;
  max-width:55ch;
  color:#475467;
  font-size:var(--font-size-lg,18px);
  line-height:1.65;
}
.core---toolkit .matrix {
  display:grid;
  grid-template-columns:1.25fr .85fr .9fr;
  gap:12px;
}
.core---toolkit .item {
  min-width:0;
  padding:var(--space-card,22px);
  border-radius:var(--radius-md,12px);
  background:#ffffff;
  border:1px solid #e1e6ee;
}
.core---toolkit .item:first-child {
  grid-row:span 2;
  background:#e9eef4;
}
.core---toolkit strong,
.core---toolkit span {
  display:block;
}
.core---toolkit span {
  margin-top:10px;
  color:#475467;
  line-height:1.55;
}
@media (max-width:820px) {
  .core---toolkit .matrix { grid-template-columns:1fr; }
  .core---toolkit .item:first-child { grid-row:auto; }
}
@media (max-width:520px) {
  .core---toolkit { padding:var(--space-section-y,56px) var(--space-section-x,16px); }
}

.single-product_-tint{color:var(--page-fg);background:var(--page-bg);padding:clamp(16px,3vw,40px);}

    .single-product_-tint .c{max-width:var(--max-w);margin:0 auto;display:grid;gap:var(--space-x);}

    @media (min-width: 1024px){.single-product_-tint .c{grid-template-columns:1fr 300px;}
    }

    .single-product_-tint .header{margin-bottom:var(--space-y);}

    .single-product_-tint h1{font-size:clamp(28px,5vw,42px);margin:0 0 1rem;}

    .single-product_-tint .meta{display:flex;gap:1rem;font-size:0.875rem;}

    .single-product_-tint .content{line-height:1.8;}

    .single-product_-tint .related{background:var(--card-bg);padding:clamp(16px,2vw,24px);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--card-fg);}

    .single-product_-tint .related h3{margin:0 0 1rem;font-size:1.25rem;}

    .single-product_-tint .related-list{display:flex;flex-direction:column;gap:0.75rem;}

    .single-product_-tint .related a{text-decoration:none;}

    .single-product_-tint .related a:hover{text-decoration:underline;}

.product-item__calm{color:var(--page-fg);background:var(--page-bg);padding:clamp(16px,3vw,40px);}

    .product-item__calm .c{max-width:var(--max-w);margin:0 auto;display:grid;gap:var(--space-x);}

    @media (min-width: 1024px){.product-item__calm .c{grid-template-columns:1fr 300px;}
    }

    .product-item__calm .header{margin-bottom:var(--space-y);}

    .product-item__calm h1{font-size:clamp(28px,5vw,42px);margin:0 0 1rem;}

    .product-item__calm .meta{display:flex;gap:1rem;font-size:0.875rem;}

    .product-item__calm .content{line-height:1.8;}

    .product-item__calm .content ul{margin:1.5rem 0;padding-left:1.25rem;}

    .product-item__calm .content li{margin-bottom:0.75rem;}

    .product-item__calm .content a{color:var(--link);}

    .product-item__calm .content a:hover{color:var(--link-hover);}

    .product-item__calm .related{background:var(--card-bg);padding:clamp(16px,2vw,24px);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--card-fg);}

    .product-item__calm .related h3{margin:0 0 1rem;font-size:1.25rem;}

    .product-item__calm .related-list{display:flex;flex-direction:column;gap:0.75rem;}

    .product-item__calm .related a{text-decoration:none;color:var(--link);}

    .product-item__calm .related a:hover{text-decoration:underline;color:var(--link-hover);}

.route__reach {
  overflow: hidden;
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--primary-bg);
  color: var(--primary-fg);
}
.route__reach .wrap {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--space-y) var(--gap);
  max-width: var(--max-w);
  margin: 0 auto;
}
.route__reach h2 {
  grid-column: 1 / 8;
  margin: 0;
  font-size: var(--font-size-h1);
  line-height: 1.02;
}
.route__reach .summary {
  grid-column: 9 / -1;
  align-self: end;
  margin: 0;
  font-size: var(--font-size-lg);
  line-height: var(--line-height-base);
}
.route__reach .phone,
.route__reach .email,
.route__reach .address,
.route__reach .hours {
  padding: var(--space-y) 0;
  border-top: 1px solid color-mix(in srgb, currentColor 38%, transparent);
  animation: contactCatalogRise calc(var(--anim-duration) * 2.6) var(--anim-ease) both;
}
.route__reach .phone {
  grid-column: 1 / 7;
  margin-top: var(--space-block);
}
.route__reach .address {
  grid-column: 8 / -1;
  margin-top: var(--space-y);
  animation-delay: calc(var(--anim-duration) * .35);
}
.route__reach .email {
  grid-column: 3 / 9;
  animation-delay: calc(var(--anim-duration) * .7);
}
.route__reach .hours {
  grid-column: 9 / -1;
  animation-delay: calc(var(--anim-duration) * 1.05);
}
.route__reach .phone,
.route__reach .email {
  color: inherit;
  text-decoration: none;
}
.route__reach span {
  display: block;
  margin-bottom: var(--space-card);
  font-size: var(--font-size-sm);
  opacity: .68;
}
.route__reach strong {
  font-size: var(--font-size-h3);
  overflow-wrap: anywhere;
}
.route__reach .address p,
.route__reach .hours p {
  margin: 0;
  line-height: var(--line-height-base);
}
.route__reach .channels {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: var(--gap);
  padding-top: var(--space-y);
  border-top: 1px solid color-mix(in srgb, currentColor 38%, transparent);
}
.route__reach .channels a {
  color: inherit;
  text-decoration: none;
  overflow-wrap: anywhere;
}
.route__reach .channels a span {
  display: inline;
  margin: 0 0 0 var(--space-card);
}
@keyframes contactCatalogRise {
  from { opacity: 0; transform: translateY(calc(var(--motion-distance) * .12)); }
  to { opacity: 1; transform: translateY(0); }
}
@media (max-width: 760px) {
  .route__reach .wrap {
    display: block;
  }
  .route__reach .summary,
  .route__reach .phone,
  .route__reach .address,
  .route__reach .email,
  .route__reach .hours {
    margin-top: var(--space-y);
  }
  .route__reach .channels {
    margin-top: var(--space-y);
  }
}
@media (prefers-reduced-motion: reduce) {
  .route__reach .phone,
  .route__reach .email,
  .route__reach .address,
  .route__reach .hours { animation: none; }
}

.item__questions{padding:var(--space-section-y) var(--space-section-x);background:var(--page-bg);color:var(--page-fg)}
.item__questions .wrap{max-width:var(--max-w);margin:0 auto}
.item__questions h2{margin:0;font-size:var(--font-size-h2);line-height:1.08}
.item__questions .context{max-width:40rem;margin:var(--space-y) 0 var(--space-block);color:var(--muted-fg);line-height:var(--line-height-base)}
.item__questions .interview>div{display:flex;gap:var(--space-block);padding:var(--space-y) 0}
.item__questions .interview .question{flex:0 1 34%;margin:0;font-size:var(--font-size-h3);line-height:1.2}
.item__questions .interview .answer{flex:1 1 0;margin:0;color:var(--muted-fg);line-height:var(--line-height-base)}
.item__questions .wrap>a{display:inline-block;margin-top:var(--space-y);color:inherit;text-underline-offset:.22em}
@media(max-width:620px){.item__questions .interview>div{display:block}.item__questions .interview .answer{margin-top:var(--space-card)}}

body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
  *{box-sizing:border-box;}
  a{color:inherit;}
  .btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
  .btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
  .btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
  .btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .text-primary{color:var(--primary-bg)!important;}
  .border-primary{border-color:var(--primary-bg)!important;}
  .bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
  .bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}
.inquiry--accent{padding:var(--space-section-y) var(--space-section-x);background:var(--gradient-accent-bg);color:var(--gradient-accent-fg)}
.inquiry--accent .wrap{max-width:var(--max-w);margin:0 auto}
.inquiry--accent .band{display:flex;gap:var(--space-block);align-items:flex-start;background:var(--accent-bg);color:var(--accent-fg);border-radius:var(--radius-xl);padding:var(--gap)}
.inquiry--accent h2{flex:0 1 30rem;min-width:0;margin:0;font-size:var(--font-size-h1);line-height:1.02}
.inquiry--accent form{flex:1 1 42rem;min-width:0;display:flex;flex-wrap:wrap;gap:var(--space-y);align-items:flex-end}
.inquiry--accent label{flex:1 1 15rem;min-width:0}
.inquiry--accent label span{display:block;margin-bottom:var(--space-card);font-size:var(--font-size-sm)}
.inquiry--accent input{width:100%;max-width:100%;border:1px solid color-mix(in srgb,var(--accent-fg) 24%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent-bg) 90%,var(--accent-fg));color:var(--accent-fg);font:inherit;padding:var(--space-card);outline:none}
.inquiry--accent input::placeholder{color:color-mix(in srgb,var(--accent-fg) 55%,transparent)}
.inquiry--accent input:focus{border-color:var(--primary-bg)}
.inquiry--accent button{border:0;border-radius:var(--radius-md);background:var(--primary-bg);color:var(--primary-fg);font:inherit;padding:var(--space-card) var(--space-y);cursor:pointer;white-space:nowrap}
.inquiry--accent .below{display:flex;flex-wrap:wrap;gap:var(--gap);align-items:flex-start;margin-top:var(--space-y)}
.inquiry--accent .below p{flex:1 1 28rem;min-width:0;margin:0;font-size:var(--font-size-lg);line-height:var(--line-height-base)}
.inquiry--accent .links{flex:1 1 24rem;min-width:0;display:flex;flex-wrap:wrap;gap:var(--space-card);justify-content:flex-end}
.inquiry--accent .links a{border-radius:var(--radius-md);background:var(--primary-bg);color:var(--primary-fg);padding:calc(var(--space-card)*.75) var(--space-card);text-decoration:none;font-size:var(--font-size-sm)}
@media(max-width:860px){.inquiry--accent .band{display:block;padding:var(--space-y)}.inquiry--accent form{margin-top:var(--space-block);display:block}.inquiry--accent label+label,.inquiry--accent button{margin-top:var(--space-y)}.inquiry--accent .links{justify-content:flex-start}.inquiry--accent h2{font-size:var(--font-size-h2)}}

.product-_thread{color:var(--page-fg);background:var(--page-bg);padding:clamp(16px,3vw,40px);}

    .product-_thread .c{max-width:var(--max-w);margin:0 auto;display:grid;gap:var(--space-x);}

    @media (min-width: 1024px){.product-_thread .c{grid-template-columns:1fr 300px;}
    }

    .product-_thread .header{margin-bottom:var(--space-y);}

    .product-_thread h1{font-size:clamp(28px,5vw,42px);margin:0 0 1rem;}

    .product-_thread .meta{display:flex;gap:1rem;font-size:0.875rem;}

    .product-_thread .content{line-height:1.8;}

    .product-_thread .related{background:var(--card-bg);padding:clamp(16px,2vw,24px);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);color:var(--card-fg);}

    .product-_thread .related h3{margin:0 0 1rem;font-size:1.25rem;}

    .product-_thread .related-list{display:flex;flex-direction:column;gap:0.75rem;}

    .product-_thread .related a{text-decoration:none;}

    .product-_thread .related a:hover{text-decoration:underline;}

body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
  *{box-sizing:border-box;}
  a{color:inherit;}
  .btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
  .btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
  .btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
  .btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .text-primary{color:var(--primary-bg)!important;}
  .border-primary{border-color:var(--primary-bg)!important;}
  .bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
  .bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}
.rights-notes-card {
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.rights-notes-card .wrap {
  max-width: min(var(--max-w), 74rem);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr);
  gap: var(--space-block);
}

.rights-notes-card h2 {
  margin: 0;
  font-size: var(--font-size-h2);
  line-height: 1.08;
}

.rights-notes-card .summary p {
  margin: var(--space-card) 0 0;
  color: var(--neutral-300);
  font-size: var(--font-size-lg);
}

.rights-notes-card .items {
  display: flex;
  flex-direction: column;
  gap: var(--space-card);
}

.rights-notes-card .item {
  border: 1px solid var(--neutral-800);
  border-radius: var(--radius-md);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.rights-notes-card button {
  width: 100%;
  border: 0;
  padding: var(--space-card);
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: var(--font-size-h3);
  text-align: left;
  cursor: pointer;
}

.rights-notes-card .item p {
  margin: 0;
  padding: 0 var(--space-card) var(--space-card);
  color: var(--neutral-300);
}

.rights-notes-card .item:not(.is-open) p {
  display: none;
}

@media (max-width: 760px) {
  .rights-notes-card .wrap {
    grid-template-columns: 1fr;
  }
}

body{margin:0;padding:0;font-family:var(--font-family);box-sizing: border-box;}
  *{box-sizing:border-box;}
  a{color:inherit;}
  .btn-primary,.btn.btn-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;border-color:var(--primary-bg)!important;}
  .btn-primary:hover,.btn.btn-primary:hover{background:var(--primary-hover)!important;color:var(--primary-fg)!important;border-color:var(--primary-hover)!important;}
  .btn-outline-primary{color:var(--primary-bg)!important;border-color:var(--primary-bg)!important;}
  .btn-outline-primary:hover{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .bg-primary{background:var(--primary-bg)!important;color:var(--primary-fg)!important;}
  .text-primary{color:var(--primary-bg)!important;}
  .border-primary{border-color:var(--primary-bg)!important;}
  .bg-light{background:var(--page-bg)!important;color:var(--page-fg)!important;}
  .bg-dark{background:var(--inverse-bg)!important;color:var(--inverse-fg)!important;}
.terms-list_ribbon {
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.terms-list_ribbon .wrap {
  max-width: min(var(--max-w), 74rem);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .75fr) minmax(0, 1.25fr);
  gap: var(--space-block);
}

.terms-list_ribbon h2 {
  margin: 0;
  font-size: var(--font-size-h2);
  line-height: 1.08;
}

.terms-list_ribbon .summary p {
  margin: var(--space-card) 0 0;
  color: var(--muted-bg);
  font-size: var(--font-size-lg);
}

.terms-list_ribbon .items {
  display: flex;
  flex-direction: column;
  gap: var(--space-card);
}

.terms-list_ribbon .item {
  border: 1px solid var(--card-border);
  border-radius: var(--radius-md);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.terms-list_ribbon button {
  width: 100%;
  border: 0;
  padding: var(--space-card);
  background: transparent;
  color: inherit;
  font: inherit;
  font-size: var(--font-size-h3);
  text-align: left;
  cursor: pointer;
}

.terms-list_ribbon .item p {
  margin: 0;
  padding: 0 var(--space-card) var(--space-card);
  color: var(--muted-bg);
}

.terms-list_ribbon .item:not(.is-open) p {
  display: none;
}

@media (max-width: 760px) {
  .terms-list_ribbon .wrap {
    grid-template-columns: 1fr;
  }
}

.confirmation_cluster {
  padding: var(--space-section-y) var(--space-section-x);
  background: var(--accent-bg);
  color: var(--accent-fg);
}

.confirmation_cluster .wrap {
  max-width: var(--max-w);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: var(--gap);
}

.confirmation_cluster .panel {
  padding: var(--space-card);
  border-radius: var(--radius-xl);
  background: var(--inverse-bg);
  color: var(--inverse-fg);
}

.confirmation_cluster .panel span {
  color: var(--accent-bg);
  font-size: var(--font-size-sm);
}

.confirmation_cluster h2 {
  margin: var(--space-card) 0 0;
  font-size: var(--font-size-h2);
  line-height: 1.08;
}

.confirmation_cluster .panel p {
  margin: var(--space-card) 0 0;
  color: var(--neutral-300);
  font-size: var(--font-size-lg);
}

.confirmation_cluster .details {
  display: grid;
  gap: var(--space-card);
}

.confirmation_cluster .details div {
  padding: var(--space-card);
  border-radius: var(--radius-md);
  background: var(--card-bg);
  color: var(--card-fg);
  border: 1px solid var(--card-border);
}

.confirmation_cluster .details strong {
  font-size: var(--font-size-h3);
}

.confirmation_cluster .details p {
  margin: var(--space-card) 0 0;
  color: var(--muted-fg);
}

.confirmation_cluster .details a {
  color: var(--link);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.confirmation_cluster .details a:hover {
  color: var(--link-hover);
}

@media (max-width: 760px) {
  .confirmation_cluster .wrap {
    grid-template-columns: 1fr;
  }
}

.unavailable-preview {
  background:#f2f2f2;
  color:#0a0f1a;
  padding:var(--space-section-y,78px) var(--space-section-x,20px);
}
.unavailable-preview .wrap {
  width:min(100%,var(--max-w,900px));
  margin:0 auto;
}
.unavailable-preview .column {
  display:flex;
  flex-direction:column;
  gap:var(--space-block,30px);
}
.unavailable-preview .copy {
  padding-left:clamp(0px,10vw,120px);
}
.unavailable-preview h1 {
  margin:0;
  max-width:12ch;
  font-size:clamp(var(--font-size-h2,34px),7vw,var(--font-size-h1,74px));
  line-height:1;
  letter-spacing:0;
}
.unavailable-preview p {
  margin:var(--space-y,20px) 0 0;
  max-width:46ch;
  font-size:var(--font-size-lg,18px);
  line-height:1.65;
  color:#475467;
}
.unavailable-preview .ledger {
  display:flex;
  flex-direction:column;
  gap:0;
  border-top:1px solid #d0d5dd;
}
.unavailable-preview .ledger a {
  display:flex;
  justify-content:space-between;
  gap:18px;
  padding:18px 0;
  border-bottom:1px solid #d0d5dd;
  color:inherit;
  text-decoration:none;
}
.unavailable-preview .ledger span {
  font-weight:700;
}
.unavailable-preview small {
  max-width:30ch;
  color:#5d6674;
  line-height:1.45;
  text-align:right;
}
.unavailable-preview .action {
  align-self:flex-start;
  padding:13px 18px;
  border-radius:var(--radius-md,12px);
  background:#0a0f1a;
  color:#ffffff;
  text-decoration:none;
  font-weight:700;
}
@media (max-width:620px) {
  .unavailable-preview { padding:var(--space-section-y,56px) var(--space-section-x,16px); }
  .unavailable-preview .copy { padding-left:0; }
  .unavailable-preview .ledger a { flex-direction:column; gap:6px; }
  .unavailable-preview small { max-width:none; text-align:left; }
}