.c-btn,.btn,.btn-pill{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:44px;padding:.65rem 1.25rem;border:1px solid transparent;border-radius:var(--radius-sm);font:700 var(--text-sm)/1.25 var(--font-heading);text-align:center;transition:background .2s,color .2s,box-shadow .2s,transform .2s}
.c-btn:hover,.btn:hover,.btn-pill:hover{transform:translateY(-2px)}
.c-btn:active,.btn:active,.btn-pill:active{transform:translateY(0)}
.c-btn--primary,.btn-solid{background:var(--primary-deep);color:#FFFFFF;box-shadow:0 6px 16px -8px rgba(65,80,224,.7)}
.c-btn--primary:hover,.btn-solid:hover{background:#2936AB;color:#FFFFFF}
.c-btn--secondary,.btn-line{border-color:color-mix(in srgb,currentColor 45%,transparent);background:#FFFFFF;color:var(--primary-deep)}
.c-btn--secondary:hover,.btn-line:hover{background:#F2F4F7}
.c-btn--ghost{border-color:color-mix(in srgb,currentColor 45%,transparent);background:transparent;color:inherit}
.c-btn--ghost:hover{background:color-mix(in srgb,currentColor 8%,transparent)}
.btn-pill{min-height:52px;padding:.8rem 1.75rem;border-radius:var(--radius-pill);background:#FFFFFF;color:var(--primary-deep);font-size:var(--text-base);box-shadow:0 14px 30px -14px rgba(10,12,40,.6)}
.btn-pill svg{width:16px;height:16px;flex:none}
.action-row,.hero-cta,.cta-btns{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}
.center .hero-cta,.center .cta-btns{justify-content:center}
.kicker{display:block;width:fit-content;margin-bottom:var(--space-2);color:var(--muted);font:700 var(--text-xs)/1.4 var(--font-heading);letter-spacing:.14em;text-transform:uppercase}
.kicker::before{content:"";display:block;width:16px;height:3px;margin-bottom:14px;border-radius:2px;background:var(--dash)}
.kicker--filled,.c-badge{display:inline-flex;align-items:center;gap:.5rem;width:fit-content;padding:.45em .85em;border-radius:var(--radius-pill);background:var(--cream);color:var(--cream-ink);font:700 var(--text-xs)/1.35 var(--font-heading);letter-spacing:0}
.kicker--filled::before{width:6px;height:6px;margin:0;background:var(--primary)}
.c-badge--mint{background:var(--mint);color:var(--mint-ink)}
.c-badge--apricot{background:var(--apricot);color:var(--apricot-ink)}
.c-badge--lav{background:var(--lav);color:var(--lav-ink)}
.c-card,.card,.c-price-card,.c-callout,.c-cta{min-width:0;padding:var(--space-4);border-radius:var(--radius-md);background:#FFFFFF;color:#1E1C28;box-shadow:var(--shadow)}
.c-card,.card,.c-price-card{display:flex;flex-direction:column;height:100%;transition:transform .22s,box-shadow .22s}
.c-card:hover,.card:hover,.c-price-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-up)}
.c-card h3,.card h3,.c-price-card h3{color:#1E1C28}
.c-card p,.card p,.c-price-card p{color:#565668}
.c-card p,.card p{margin-top:var(--space-2)}
.c-card>a:last-child,.card>a:last-child,.c-price-card>.c-btn:last-child,.c-card cite:last-child{margin-top:var(--space-3)}
.c-card__icon,.ico{display:grid;place-items:center;flex:none;width:48px;height:48px;margin-bottom:var(--space-3);border-radius:12px;background:var(--lav);color:var(--lav-ink)}
.c-card__icon svg,.ico svg{width:24px;height:24px}
.c-callout{background:var(--mint);color:#143B2A;box-shadow:none}
.c-callout h2,.c-callout h3,.c-callout p{color:#143B2A}
.c-cta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4);background:var(--navy);color:#FFFFFF;box-shadow:none}
.c-cta h2,.c-cta p{color:#FFFFFF}
.c-cta p{margin-top:var(--space-2);color:#C7CAE3}
.c-price-card__spec{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:.5rem;margin-block:var(--space-3)}
.c-price-card__spec>*{min-width:0;overflow-wrap:break-word;font:600 var(--text-sm)/1.5 var(--font-mono)}
.c-price-card__amount{font:700 clamp(1.75rem,3vw,2.25rem)/1.2 var(--font-mono);font-variant-numeric:tabular-nums}
.c-price-card .c-btn{width:100%}
.c-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:var(--space-3);color:var(--muted);font:600 var(--text-sm)/1.5 var(--font-body)}
.c-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;list-style:none;margin:0;padding:0}
.c-breadcrumb li+li::before,.c-breadcrumb>span+span::before{content:"/";margin-right:.5rem;color:var(--muted)}
.c-breadcrumb a:hover{color:var(--primary)}
.table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.c-table{display:table;width:100%;min-width:680px;border-collapse:collapse;background:#FFFFFF;color:#171A2C;font-variant-numeric:tabular-nums}
.c-table th,.c-table td{padding:1rem 1.2rem;border-bottom:1px solid #E7E8EE;text-align:left;vertical-align:top;color:#171A2C}
.c-table th{background:#F2F4F7;font-weight:700}
.c-table td{font-family:var(--font-mono);font-size:var(--text-sm)}
.c-table th:first-child,.c-table td:first-child{min-width:10rem;font-family:var(--font-heading);font-weight:700}
.c-table .is-highlight{background:#E5F3EC;color:#143B2A}
.c-code,pre.c-code{max-width:100%;overflow-x:auto;padding:1.25rem;border-radius:var(--radius-md);background:var(--cream);color:var(--cream-ink);white-space:pre}
.c-faq{background:#FFFFFF;color:#1E1C28}
.c-faq details{padding:1.5rem 0;border-bottom:1px solid #E7E8EE;background:#FFFFFF;color:#1E1C28}
.c-faq details:first-child{border-top:1px solid #E7E8EE}
.c-faq summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none;font:700 var(--text-lg)/1.45 var(--font-heading)}
.c-faq summary::-webkit-details-marker{display:none}
.c-faq summary::after{content:"";flex:none;width:.55rem;height:.55rem;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .2s}
.c-faq details[open] summary::after{transform:rotate(225deg)}
.c-faq details>p,.c-faq details>.answer{padding-top:var(--space-2);color:#565668}
.c-field{display:grid;gap:.5rem;min-width:0}
.c-field label{font-weight:700;color:#1E1C28}
.c-input,.c-select,.c-textarea{display:block;width:100%;min-height:46px;padding:.7rem .85rem;border:1px solid #AAAFC1;border-radius:var(--radius-sm);background:#FFFFFF;color:#1E1C28}
.c-input:focus,.c-select:focus,.c-textarea:focus{border-color:var(--primary);outline:2px solid color-mix(in srgb,var(--primary) 24%,transparent)}
.c-select{appearance:none;padding-inline-end:2.5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='m2 4 4 4 4-4' fill='none' stroke='%23171A2C' stroke-width='1.6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center}
.c-textarea{min-height:8rem;resize:vertical}
.c-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));align-items:stretch;gap:var(--space-2)}
.c-choice{position:relative;display:block;min-width:0}
.c-choice input{position:absolute;width:1px;height:1px;opacity:0;appearance:none}
.c-choice__face{display:flex;flex-direction:column;gap:.5rem;height:100%;padding:var(--space-3);border:1px solid #C9CCD7;border-radius:var(--radius-md);background:#FFFFFF;color:#1E1C28}
.c-choice input:checked+.c-choice__face{border-color:var(--primary);background:var(--lav);color:#3A2468}
.c-choice input:focus-visible+.c-choice__face{outline:3px solid var(--primary);outline-offset:3px}
.c-filters{display:flex;flex-wrap:wrap;gap:.5rem}
.c-filter{min-height:38px;padding:.5rem 1rem;border:1px solid #C9CCD7;border-radius:var(--radius-pill);background:#FFFFFF;color:#1E1C28;font:700 var(--text-sm)/1.3 var(--font-heading)}
.c-filter[aria-pressed="true"]{border-color:var(--primary);background:var(--primary-deep);color:#FFFFFF}
.site-header{position:sticky;top:0;z-index:100;overflow:visible;background:#FFFFFF;border-bottom:1px solid var(--line)}
.site-header__inner{display:flex;align-items:center;gap:clamp(.75rem,2vw,2rem);min-height:72px}
.site-brand{display:inline-flex;align-items:center;gap:.6rem;flex:0 0 auto;color:#1E1C28}
.footer-brand{display:inline-flex;align-items:center;gap:.6rem;flex:0 0 auto;color:#1E1C28}
.site-brand img,.footer-brand img{width:32px;height:32px;flex:none}
.site-brand strong,.footer-brand strong{font:800 1.3rem/1 var(--font-heading);letter-spacing:-.01em}
.site-brand small,.footer-brand small{padding-left:.65rem;border-left:1px solid var(--line);font:600 var(--text-xs)/1.2 var(--font-mono);color:#565668}
.site-nav{display:flex;align-items:stretch;gap:clamp(.65rem,1.5vw,1.6rem);min-width:0}
.site-nav a{position:relative;display:inline-flex;align-items:center;min-height:72px;color:#1E1C28;font:600 var(--text-sm)/1.3 var(--font-heading);white-space:nowrap}
.site-nav a:hover,.site-nav a.is-active{color:var(--primary-deep)}
.site-nav a.is-active::after{content:"";position:absolute;right:0;bottom:0;left:0;height:2px;border-radius:2px;background:var(--primary)}
.site-tools{display:flex;align-items:center;gap:.5rem;margin-left:auto;flex:none}
.site-tools>.c-btn{min-height:38px;padding:.5rem .8rem;font-size:var(--text-sm)}
.lang-switch{position:relative}
.lang-button{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;height:29px;padding:0 .45rem;border:1px solid #AAAFC1;border-radius:var(--radius-sm);background:#FFFFFF;color:#171A2C;font:600 var(--text-xs)/1 var(--font-heading)}
.lang-button svg{width:13px;height:13px;flex:none}
.lang-button .chevron{width:9px;height:9px;transition:transform .2s}
.lang-button[aria-expanded="true"] .chevron{transform:rotate(180deg)}
.lang-menu{position:absolute;top:calc(100% + 12px);right:0;z-index:110;width:174px;padding:.5rem;border-radius:var(--radius-md);background:#FFFFFF;color:#171A2C;box-shadow:var(--shadow-up)}
.lang-menu a{display:flex;justify-content:space-between;gap:.5rem;padding:.5rem .65rem;border-radius:var(--radius-sm);font:600 var(--text-sm)/1.4 var(--font-heading)}
.lang-menu a:hover{background:#F2F4F7}
.lang-menu a[aria-current="true"]{color:var(--primary-deep)}
.lang-menu em{font:500 var(--text-xs)/1.5 var(--font-mono);color:#565668;font-style:normal}
.menu-toggle{display:none;align-self:center;flex:none;width:38px;height:38px;padding:9px;border:1px solid #C9CCD7;border-radius:var(--radius-sm);background:#FFFFFF;color:#171A2C}
.menu-toggle svg{width:18px;height:18px}
.site-footer{padding:5rem 0 2.5rem;background:var(--dark);color:#FFFFFF}
.site-footer__top{display:grid;grid-template-columns:minmax(14rem,320px) repeat(4,minmax(0,1fr));gap:2.5rem}
.site-footer .footer-brand{color:#FFFFFF}
.site-footer .footer-brand img{background:var(--paper);padding:.35rem;border-radius:var(--radius-sm)}
.site-footer .footer-brand small{border-left-color:rgba(255,255,255,.2);color:var(--foot-muted)}
.site-footer__intro{max-width:19rem;margin-top:1.25rem;color:var(--foot-muted);font-size:var(--text-sm);line-height:1.7}
.site-footer__mail{display:inline-block;margin-top:1rem;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.3);color:#FFFFFF;font:600 var(--text-sm)/1 var(--font-mono)}
.site-footer h2{margin-bottom:1.25rem;color:#FFFFFF;font:700 var(--text-xs)/1.4 var(--font-heading);letter-spacing:.14em;text-transform:uppercase}
.site-footer li{margin-bottom:.75rem;font-size:var(--text-sm)}
.site-footer a:hover{color:#FFFFFF}
.site-footer li a,.site-footer__bottom{color:var(--foot-muted);font-size:var(--text-sm);line-height:1.5}
.site-footer li a em{margin-left:6px;color:#8F94B0;font:500 var(--text-xs)/1 var(--font-mono);font-style:normal}
.site-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 2rem;margin-top:4rem;padding-top:1.75rem;border-top:1px solid rgba(255,255,255,.1)}
.site-footer__pay{font:500 var(--text-xs)/1.5 var(--font-mono)}
.site-footer__bottom nav{display:flex;gap:1.5rem}
.site-footer__bottom nav a{color:var(--foot-muted)}
@media(max-width:64rem){
  .site-nav{position:absolute;top:100%;right:0;left:0;display:none;flex-direction:column;gap:0;padding:.5rem var(--gutter) 1rem;background:#FFFFFF;box-shadow:var(--shadow-up)}
  .site-nav.is-open{display:flex}
  .site-nav a{min-height:46px;font-size:var(--text-base);white-space:normal}
  .site-nav a.is-active::after{right:auto;width:24px}
  .site-tools{margin-left:auto}
  .menu-toggle{display:grid;place-items:center}
  .site-footer__top{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-footer__top>:first-child{grid-column:1/-1}
}
@media(max-width:42rem){
  .site-header__inner{gap:.4rem;min-height:64px}
  .site-brand{gap:.35rem;flex:1 1 auto;min-width:0}
  .site-brand img{width:28px;height:28px}
  .site-brand strong{font-size:clamp(.75rem,3.5vw,1rem);letter-spacing:-.035em;white-space:nowrap}
  .site-tools{gap:.3rem;flex:0 0 auto}
  .site-tools>.c-btn{min-height:34px;padding:.4rem .5rem}
  .site-tools>.c-btn--secondary{display:none}
  .lang-button__label{display:none}
  .lang-button{width:30px;padding:0}
  .lang-button .chevron{width:7px}
  .menu-toggle{width:34px;height:34px;padding:7px}
  .site-footer__top{grid-template-columns:minmax(0,1fr)}
  .site-footer__bottom nav{flex-wrap:wrap;gap:.5rem 1rem;min-width:0}
  .site-footer__bottom nav a{min-width:0;overflow-wrap:break-word}
  .c-cta{align-items:flex-start;flex-direction:column}
  .action-row .c-btn,.cta-btns .c-btn{flex:1 1 100%}
}
