.c-btn{
  min-height:2.625rem;
  padding:.7rem 1.125rem;
  border:1px solid transparent;
  border-radius:var(--radius-sm);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:var(--space-2);
  background:transparent;
  color:var(--color-ink);
  font-family:var(--font-body);
  font-size:var(--text-sm);
  line-height:1.25;
  font-weight:700;
  text-align:center;
  cursor:pointer;
  transition:transform .2s var(--motion),background-color .2s ease,color .2s ease,border-color .2s ease
}
.c-btn:hover{transform:translateY(-1px)}
.c-btn:active{transform:translateY(0)}
.c-btn-primary{background:#59155f;color:#fff}
.c-btn-primary:hover{background:#6b2473}
.c-btn-dark{background:#19151b;color:#fff}
.c-btn-dark:hover{background:#59155f}
.c-btn-secondary{border-color:color-mix(in srgb,currentColor 45%,transparent);background:#fff;color:#19151b}
.c-btn-secondary:hover{border-color:#59155f;color:#59155f}
.c-btn-ghost{border-color:color-mix(in srgb,currentColor 35%,transparent);color:currentColor}
.c-btn-light{background:#fff;color:#19151b}
.c-actions{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-6)}
.c-kicker{
  width:fit-content;
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.45rem .75rem;
  border-radius:999px;
  background:#f1f1ef;
  color:#514b52;
  font-size:var(--text-xs);
  line-height:1.2;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase
}
.c-kicker::before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:#7b3f91}
.c-badge{display:inline-flex;align-items:center;width:fit-content;padding:.35rem .6rem;border-radius:999px;background:#edf2e8;color:#1d2b1a;font-size:var(--text-xs);line-height:1.25;font-weight:700}
.c-card{
  min-width:0;
  padding:var(--space-6);
  border-radius:var(--radius-md);
  background:var(--color-neutral);
  color:var(--color-ink)
}
.c-card-equal{display:flex;flex-direction:column;height:100%}
.c-card-equal>:last-child{margin-top:var(--space-4)}
.c-card-cream{background:#f4f1e8;color:#29231d}
.c-card-blue{background:#eaf1f3;color:#19292e}
.c-card-peach{background:#f5ece7;color:#30201b}
.c-card-green{background:#edf2e8;color:#1d2b1a}
.c-card-white{background:#fff;color:#19151b}
.c-card-dark{background:#19151b;color:#fff}
.c-card p{margin-top:var(--space-3);color:inherit;opacity:.75}
.c-icon-well{width:2.75rem;height:2.75rem;border-radius:.75rem;display:grid;place-items:center;background:#fff;color:#59155f}
.c-icon-well svg{width:1.25rem;height:1.25rem}
.c-price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));align-items:stretch;gap:var(--space-4)}
.c-price-card{min-width:0;height:100%;padding:var(--space-6);border-radius:var(--radius-lg);display:flex;flex-direction:column}
.c-price-card:nth-child(3n+1){background:#f4f1e8;color:#29231d}
.c-price-card:nth-child(3n+2){background:#eaf1f3;color:#19292e}
.c-price-card:nth-child(3n){background:#f5ece7;color:#30201b}
.c-price-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}
.c-price-card__price{margin-top:var(--space-7);font-family:var(--font-mono);font-size:clamp(2.2rem,6cqi,2.875rem);line-height:1;font-weight:700;letter-spacing:-.05em;font-variant-numeric:tabular-nums}
.c-price-card__price small{font-family:inherit;font-size:var(--text-sm);letter-spacing:0}
.c-price-card__sub{margin-top:var(--space-3);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.4}
.c-spec-list{width:100%;padding:0;list-style:none;margin-block:var(--space-6)}
.c-spec-list li{display:flex;justify-content:space-between;gap:var(--space-3);padding-block:.7rem;border-bottom:1px solid rgba(25,21,27,.12)}
.c-spec-list b{font-family:var(--font-mono);font-size:var(--text-sm);overflow-wrap:anywhere}
.c-price-card .c-btn{margin-top:var(--space-4)}
.c-notice{padding:var(--space-5) var(--space-6);border-radius:var(--radius-md);background:#eaf1f3;color:#19292e}
.c-notice strong{display:block;font-size:var(--text-base);line-height:1.4}
.c-notice p{margin-top:var(--space-2);font-size:var(--text-sm);line-height:var(--leading-body)}
.c-faq-list{display:grid;gap:var(--space-3)}
.c-faq{padding:var(--space-5) var(--space-6);border-radius:.75rem;background:#fff;color:#19151b}
.c-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);cursor:pointer;font-size:var(--text-base);line-height:1.45;font-weight:700}
.c-faq summary::-webkit-details-marker{display:none}
.c-faq summary::after{content:"+";flex:0 0 auto;width:1.5rem;height:1.5rem;display:grid;place-items:center;font-family:var(--font-mono);font-size:var(--text-base);line-height:1}
.c-faq[open] summary::after{content:"−"}
.c-faq__body{padding-top:var(--space-4);color:#5f565f;font-size:var(--text-sm);line-height:var(--leading-body)}
.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.c-table{display:table;width:100%;min-width:48rem;border-collapse:collapse;background:#fff;color:#19151b}
.c-table th,.c-table td{padding:1rem;text-align:left;vertical-align:top;border-bottom:1px solid #e8e6e7}
.c-table th{background:#f7f7f5;color:#19151b;font-weight:700}
.c-table th:first-child,.c-table td:first-child{min-width:11rem}
.c-table td:not(:first-child){font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.c-field{display:grid;gap:.45rem}
.c-field input,.c-field textarea,.c-field select{
  width:100%;
  min-height:3rem;
  padding:.75rem .875rem;
  border:1px solid #aaa4aa;
  border-radius:var(--radius-sm);
  background:#fff;
  color:#19151b;
  font-size:var(--text-base);
  line-height:1.4
}
.c-field textarea{min-height:9rem;resize:vertical}
.c-field select{appearance:none;padding-inline-end:2.5rem;background-image:linear-gradient(45deg,transparent 50%,#59155f 50%),linear-gradient(135deg,#59155f 50%,transparent 50%);background-position:calc(100% - 1.15rem) 1.25rem,calc(100% - .85rem) 1.25rem;background-size:.32rem .32rem,.32rem .32rem;background-repeat:no-repeat}
.c-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));gap:var(--space-3)}
.c-choice{position:relative;display:block}
.c-choice input{position:absolute;opacity:0;pointer-events:none;appearance:none}
.c-choice span{padding:var(--space-5);border:1px solid #aaa4aa;border-radius:var(--radius-md);display:flex;flex-direction:column;justify-content:flex-start;background:#fff;color:#19151b;cursor:pointer}
.c-choice input:checked+span{border-color:#59155f;box-shadow:inset 0 0 0 1px #59155f;background:#f4f1e8;color:#29231d}
.c-choice input:focus-visible+span{outline:3px solid color-mix(in srgb,#7b3f91 42%,transparent);outline-offset:3px}
.c-filters{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}
.c-filter{padding:.55rem .8rem;border:1px solid color-mix(in srgb,currentColor 35%,transparent);border-radius:999px;background:#fff;color:#19151b;font-size:var(--text-sm);line-height:1.2;cursor:pointer}
.c-filter[aria-pressed="true"]{background:#59155f;color:#fff;border-color:#59155f}
.c-breadcrumb{margin-bottom:var(--space-5);color:#5f565f;font-size:var(--text-sm);line-height:1.4}
.c-breadcrumb ol{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;list-style:none;margin:0;padding:0}
.c-breadcrumb li{font-size:var(--text-sm);line-height:1.4}
.c-breadcrumb li+li::before{content:"/";margin-right:.5rem;color:#918b91}
.c-portal-band{padding:var(--space-7) var(--space-8);border-radius:var(--radius-lg);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--space-7);background:#19151b;color:#fff}
.c-portal-band p{margin-top:var(--space-3);color:#b8b1b9}
.c-portal-band__meta{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-5);color:#d9d4d9;font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.5}
.site-header{position:sticky;top:0;z-index:100;width:100%;max-width:none;margin:0;overflow:visible;background:rgba(255,255,255,.96);color:#19151b;backdrop-filter:blur(12px)}
.site-announcement{width:calc(100% - 1.5rem);min-height:3.125rem;margin:.75rem auto 0;padding:.65rem var(--gutter);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap;background:#f4f4f3;color:#4e494f;font-size:var(--header-control-size);line-height:1.4;text-align:center}
.site-announcement strong{color:#19151b}
.site-announcement a{color:#19151b;text-decoration:underline;text-underline-offset:.22rem}
.site-nav{width:100%;max-width:none;border-bottom:1px solid #eceaec;background:#fff}
.site-nav__inner{position:relative;width:100%;max-width:none;min-height:4.625rem;margin-inline:0;padding-inline:var(--gutter);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem}
.site-brand{flex:0 0 auto;display:inline-flex;align-items:center;gap:.6rem;color:#19151b;font-family:var(--font-heading);font-size:1rem;line-height:1.2;font-weight:700;letter-spacing:-.025em}
.site-brand img{width:1.75rem;height:1.75rem;flex:none}
.site-brand small{display:none}
.site-nav__panel{margin-left:auto;display:flex;align-items:center;gap:1.2rem}
.site-nav__links{display:flex;align-items:center;gap:clamp(.65rem,1.5vw,1.25rem)}
.site-nav__links a{position:relative;padding:.7rem .15rem;color:#403b41;font-size:var(--header-control-size);line-height:1.25;white-space:nowrap}
.site-nav__links a:hover{color:#59155f}
.site-nav__links a.active,.site-nav__links a[aria-current="page"]{color:#59155f}
.site-nav__links a.active::after,.site-nav__links a[aria-current="page"]::after{content:"";position:absolute;left:.15rem;right:.15rem;bottom:.25rem;height:2px;border-radius:2px;background:#59155f}
.site-nav__tools{flex:0 0 auto;display:flex;align-items:center;gap:.5rem}
.site-nav__tools .c-btn{font-size:var(--header-control-size)}
.lang-switch{position:relative}
.lang-switch__button{height:1.875rem;min-height:1.875rem;padding:0 .55rem;border:1px solid #c8c3c8;border-radius:999px;display:inline-flex;align-items:center;gap:.35rem;background:#fff;color:#19151b;font-size:var(--text-xs);line-height:1;cursor:pointer}
.lang-switch__button svg{width:.8rem;height:.8rem}
.lang-switch__button .chevron{width:.6rem;height:.6rem;transition:transform .2s ease}
.lang-switch__button[aria-expanded="true"] .chevron{transform:rotate(180deg)}
.lang-switch__menu{position:absolute;top:calc(100% + .5rem);right:0;width:11rem;padding:.45rem;border:1px solid #e8e6e7;border-radius:.75rem;display:grid;background:#fff;color:#19151b;box-shadow:var(--shadow-soft)}
.lang-switch__menu a{padding:.55rem .65rem;border-radius:.45rem;font-size:var(--text-sm);line-height:1.3}
.lang-switch__menu a:hover,.lang-switch__menu a[aria-current="true"]{background:#f4f1e8;color:#59155f}
.nav-toggle{display:none;width:2.25rem;height:2.25rem;padding:.45rem;border:1px solid #c8c3c8;border-radius:var(--radius-sm);align-self:center;place-items:center;background:#fff;color:#19151b}
.nav-toggle svg{width:1.1rem;height:1.1rem}
.site-footer{padding:4.5rem 0 2.25rem;background:#19151b;color:#fff}
.site-footer__inner{width:100%;max-width:none;margin-inline:auto;padding-inline:var(--gutter)}
.site-footer__top{display:grid;grid-template-columns:minmax(15rem,1.25fr) repeat(3,minmax(0,1fr));gap:clamp(2rem,5vw,4.5rem);padding-bottom:3.5rem}
.footer-brand{color:#fff}
.site-footer .footer-brand img{width:1.75rem;height:1.75rem;padding:.35rem;border-radius:var(--radius-sm);background:#fff}
.footer-brand p{max-width:19rem;margin-top:var(--space-4);color:#b8b1b9;font-size:var(--text-sm);line-height:var(--leading-body)}
.footer-group h2{margin-bottom:var(--space-4);color:#918b92;font-family:var(--font-body);font-size:var(--text-xs);line-height:1.3;letter-spacing:.08em;text-transform:uppercase}
.footer-links{display:grid;gap:.65rem}
.footer-links a{color:#ddd7de;font-size:var(--text-sm);line-height:1.4}
.footer-links a:hover{color:#fff}
.footer-keywords{padding-block:var(--space-5);border-top:1px solid var(--color-line-dark);border-bottom:1px solid var(--color-line-dark);display:flex;align-items:center;flex-wrap:wrap;gap:.6rem}
.footer-keywords a{padding:.4rem .6rem;border-radius:.4rem;background:#272227;color:#c6c0c7;font-size:var(--text-xs);line-height:1.3}
.footer-bottom{padding-top:var(--space-5);display:flex;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;color:#918b92;font-size:var(--text-xs);line-height:1.5}
@media(max-width:64rem){
  .site-nav__panel{display:none;position:absolute;top:100%;left:var(--gutter);right:var(--gutter);padding:var(--space-4);border:1px solid #e8e6e7;border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-soft)}
  .site-nav__panel.is-open{display:block}
  .site-nav__links{display:grid;gap:.25rem}
  .site-nav__links a{min-height:3rem;padding:.8rem;font-size:1rem;line-height:1.4}
  .site-nav__links a.active::after,.site-nav__links a[aria-current="page"]::after{left:.8rem;right:auto;bottom:.45rem;width:2rem}
  .nav-toggle{display:grid}
  .site-nav__tools{margin-left:auto}
  .site-footer__top{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:42rem){
  .site-announcement{justify-content:flex-start;text-align:left}
  .site-brand{font-size:.75rem;letter-spacing:-.045em;gap:.35rem}
  .site-brand img{width:1.5rem;height:1.5rem}
  .site-nav__inner{gap:.35rem}
  .site-nav__tools{gap:.25rem}
  .site-nav__tools .c-btn{min-height:2rem;padding:.4rem .5rem;font-size:var(--text-xs)}
  .nav-toggle{width:2rem;height:2rem;padding:.35rem}
  .lang-switch__label{display:none}
  .lang-switch__button{width:1.875rem;padding:0;justify-content:center}
  .lang-switch__button .chevron{display:none}
  .c-actions{align-items:stretch}
  .c-actions .c-btn{flex:1 1 100%}
  .c-portal-band{padding:var(--space-6);grid-template-columns:1fr}
  .c-portal-band .c-btn{width:100%}
  .site-footer__top{grid-template-columns:1fr}
  .footer-bottom{display:grid}
}
