.c-btn{display:inline-flex;min-height:3rem;align-items:center;justify-content:center;gap:.6rem;padding:.7rem 1.35rem;border:1px solid transparent;border-radius:999px;font-size:var(--fs-1);line-height:1.25;font-weight:700;text-align:center;cursor:pointer;transition:transform .2s var(--ease),background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}
.c-btn:hover{transform:translateY(-2px)}.c-btn:active{transform:translateY(0)}
.c-btn--primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}
.c-btn--primary:hover{background:var(--color-primary-soft);border-color:var(--color-primary-soft)}
.c-btn--accent{background:var(--color-accent-soft);color:#17151d;border-color:var(--color-accent-soft)}
.c-btn--secondary,.c-btn--ghost{background:transparent;color:inherit;border-color:color-mix(in srgb,currentColor 45%,transparent)}
.c-btn--secondary:hover,.c-btn--ghost:hover{background:color-mix(in srgb,currentColor 7%,transparent)}
.c-card,.c-note,.c-cta-card,.c-price-card{min-width:0;padding:clamp(1.5rem,3vw,2.5rem);border-radius:var(--radius-lg);background:var(--color-paper);color:var(--color-ink)}
.c-card{box-shadow:var(--shadow-soft)}
.c-card--soft{background:var(--color-surface-2);box-shadow:none}
.c-card--dark{background:var(--color-dark);color:#f9f4ee}
.c-card--dark p,.c-card--dark .u-muted{color:#c5c0ca}
.c-card__media{height:clamp(12rem,28vw,20rem);margin:calc(clamp(1.5rem,3vw,2.5rem) * -1) calc(clamp(1.5rem,3vw,2.5rem) * -1) var(--space-3);overflow:hidden;border-radius:var(--radius-lg) var(--radius-lg) 0 0}
.c-card__media img{width:100%;height:100%;object-fit:cover}
.c-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:var(--space-3);align-items:start}
.c-paired{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(17rem,.8fr);gap:var(--space-3);align-items:stretch}
.c-paired__side{display:flex;flex-direction:column;gap:var(--space-3)}
.c-paired__side>*{flex:1}.c-paired__side .c-btn{margin-top:auto}
.c-badge,.c-kicker{display:inline-flex;width:fit-content;max-width:100%;align-self:flex-start;align-items:center;gap:.5rem;border-radius:999px;font-size:var(--fs-0);line-height:1.3;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.c-kicker+h1,.c-kicker+h2,.c-kicker+h3,.c-badge+h1,.c-badge+h2,.c-badge+h3{margin-top:.75rem}
.section-head--center .c-kicker{align-self:center}
.c-badge{padding:.45rem .8rem;background:var(--color-surface);color:var(--color-primary)}
.c-kicker{color:var(--color-primary)}
.c-kicker::before{content:"";width:1.25rem;height:1px;background:currentColor}
.c-note{background:var(--color-light);color:var(--color-ink)}
.c-note--status{background:var(--color-accent-soft);color:#17151d}
.c-note__icon{display:grid;width:2rem;height:2rem;place-items:center;flex:0 0 2rem;border-radius:50%;background:var(--color-primary);color:#fff}
.c-note-row{display:flex;align-items:flex-start;gap:var(--space-2)}
.c-price-card{background:var(--color-light);box-shadow:var(--shadow-soft)}
.c-price{font:500 clamp(2.5rem,7vw,4rem)/1 var(--font-heading);font-variant-numeric:tabular-nums;color:var(--color-primary)}
.c-price small{font-family:var(--font-body);font-size:var(--fs-1)}
.c-price-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));margin-top:var(--space-3);border-top:1px solid var(--line-paper)}
.c-price-list>div{padding:var(--space-2) var(--space-1);border-bottom:1px solid var(--line-paper)}
.c-price-list span,.c-price-list strong{display:block;font-size:var(--fs-1);line-height:1.5}
.c-price-list strong{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
.table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.c-table{display:table;width:100%;border-collapse:collapse;background:var(--color-paper);color:var(--color-ink);font-variant-numeric:tabular-nums}
.c-table th,.c-table td{padding:1rem;text-align:left;border-bottom:1px solid var(--line-paper)}
.c-table th{background:var(--color-surface-2);color:var(--color-ink)}
.c-table tbody tr:hover{background:color-mix(in srgb,var(--color-accent) 6%,white)}
.c-faq{background:transparent;color:inherit}
.c-faq details{background:inherit;color:var(--color-ink);border-radius:0;padding:0 1.5rem;border-bottom:1px solid var(--line-paper)}
.c-faq details+details{margin-top:.5rem}
.c-faq summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.25rem 0;cursor:pointer;list-style:none;font-size:var(--fs-2);line-height:1.5;font-weight:700}
.c-faq summary::-webkit-details-marker{display:none}
.c-faq summary::after{content:"";width:.65rem;height:.65rem;flex:0 0 .65rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .2s var(--ease)}
.c-faq details[open] summary::after{transform:rotate(225deg)}
.c-faq__body{padding:var(--space-1) 0 1.5rem;color:var(--color-muted)}
.c-field{display:grid;gap:.5rem}.c-field+.c-field{margin-top:.5rem}
.c-input,.c-select,.c-textarea{width:100%;border:1px solid #aaa5b1;border-radius:var(--radius-sm);background:#fff;color:var(--color-ink);padding:.85rem 1rem;font-size:var(--fs-2);line-height:1.5}
.c-input:focus,.c-select:focus,.c-textarea:focus{border-color:var(--color-primary);outline:3px solid color-mix(in srgb,var(--color-accent) 30%,transparent)}
.c-select{appearance:none;padding-inline-end:2.75rem;background-image:linear-gradient(45deg,transparent 50%,#29245c 50%),linear-gradient(135deg,#29245c 50%,transparent 50%);background-position:calc(100% - 1.25rem) 52%,calc(100% - .95rem) 52%;background-size:.35rem .35rem,.35rem .35rem;background-repeat:no-repeat}
.c-textarea{min-height:9rem;resize:vertical}
.c-filter{display:flex;flex-wrap:wrap;gap:.5rem}
.c-filter button{padding:.55rem .9rem;border:1px solid color-mix(in srgb,currentColor 40%,transparent);border-radius:999px;background:transparent;color:inherit;font-size:var(--fs-1);line-height:1.25;cursor:pointer}
.c-filter button[aria-pressed="true"]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
.c-breadcrumb{margin:0 0 var(--space-3);font-size:var(--fs-1);line-height:1.5;color:var(--color-muted)}
.c-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.45rem;list-style:none;margin:0;padding:0;font-size:var(--fs-1)}
.c-breadcrumb li{font-size:var(--fs-1)}
.c-breadcrumb li+li::before,.c-breadcrumb span+span::before{content:"/";margin-right:.45rem;color:color-mix(in srgb,currentColor 55%,transparent)}
.c-cta-card{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);background:var(--color-dark);color:#f9f4ee}
.c-cta-card p{color:#c7c1cb}.c-cta-card .u-cluster{justify-content:flex-start}
.site-header{position:sticky;top:0;z-index:var(--header-z);overflow:visible;background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}
.site-announcement{background:var(--color-dark);color:#f9f4ee}
.site-announcement__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.45rem .7rem;min-height:2.7rem;height:auto;padding-block:.55rem;white-space:normal;overflow:visible;font-size:var(--fs-1);line-height:1.4}
.site-announcement__inner>span:not(.site-announcement__dot){flex:1 1 12rem;min-width:0;white-space:normal;overflow-wrap:anywhere}
.site-announcement__inner>a{flex:0 1 auto;white-space:normal}
.site-announcement__dot{width:.45rem;height:.45rem;flex:0 0 .45rem;border-radius:50%;background:var(--color-accent-soft);box-shadow:0 0 0 .25rem rgba(125,143,232,.18)}
.site-nav{position:relative;overflow:visible;background:#fff;border-bottom:1px solid var(--line-paper)}
.site-nav__inner{display:flex;min-height:5rem;align-items:center;gap:clamp(.7rem,2vw,1.5rem)}
.site-brand{display:flex;min-width:0;align-items:center;gap:.65rem}
.site-brand img{width:2.5rem;height:2.5rem;flex:0 0 2.5rem}
.site-nav__portal{font-size:var(--fs-1)}
.site-brand__copy{display:grid;line-height:1.1;white-space:nowrap}
.site-brand__copy strong{font-size:var(--fs-3)}.site-brand__copy small{color:var(--color-muted);font-size:var(--fs-0)}
.site-nav__panel{display:flex;min-width:0;align-items:center;gap:clamp(.7rem,1.8vw,1.45rem);margin-left:auto}
.site-nav__links{display:flex;align-items:stretch;align-self:stretch;gap:clamp(.65rem,1.5vw,1.2rem)}
.site-nav__links a{position:relative;display:inline-flex;align-items:center;padding:0 .1rem;border-radius:0;font-size:var(--fs-1);line-height:1.35;font-weight:700}
.site-nav__links a:hover,.site-nav__links a.is-active,.site-nav__links a[aria-current="page"]{color:var(--color-primary)}
.site-nav__links a.is-active,.site-nav__links a[aria-current="page"]{background:transparent;box-shadow:inset 0 -3px 0 var(--color-accent)}
.site-nav__tools{display:flex;align-items:center;gap:.5rem;margin-left:auto}
.c-lang{position:relative}
.c-lang__button{display:flex;height:1.875rem;align-items:center;gap:.35rem;padding:0 .55rem;border:1px solid var(--line-paper);border-radius:999px;background:#fff;color:var(--color-ink);font-size:var(--fs-1);line-height:1;cursor:pointer}
.c-lang__button svg{width:.8rem;height:.8rem}.c-lang__button .chevron{width:.55rem;height:.55rem;transition:transform .2s var(--ease)}
.c-lang.is-open .chevron{transform:rotate(180deg)}
.c-lang__menu{position:absolute;right:0;top:calc(100% + .65rem);z-index:5;width:12rem;padding:.6rem;border-radius:var(--radius-md);background:#fff;color:var(--color-ink);box-shadow:var(--shadow-soft)}
.c-lang__menu[hidden]{display:none}
.c-lang__menu a{display:flex;justify-content:space-between;padding:.55rem .65rem;border-radius:.55rem;font-size:var(--fs-1);line-height:1.35}
.c-lang__menu a:hover{background:var(--color-surface)}
.site-menu-button{display:none;width:2.5rem;height:2.5rem;place-items:center;border:1px solid var(--line-paper);border-radius:50%;background:#fff}
.site-menu-button svg{width:1.2rem;height:1.2rem}
.site-footer{padding:var(--space-6) 0 var(--space-3);background:var(--color-dark);color:#f4eff5}
.site-footer__lead{display:grid;grid-template-columns:minmax(18rem,1.35fr) repeat(3,minmax(9rem,.65fr));gap:var(--space-4)}
.site-footer__brand{max-width:24rem}.site-footer__brand img{width:2.75rem}.site-footer__brand p{margin-top:var(--space-2);color:#aaa5af}
.site-footer h3{margin-bottom:var(--space-2);font-family:var(--font-body);font-size:var(--fs-0);line-height:1.4;letter-spacing:.1em;text-transform:uppercase;color:#938e99}
.site-footer h3 + .site-footer__links{margin-top:var(--space-2)}
.site-footer__links{display:grid;gap:.55rem}.site-footer__links a{font-size:var(--fs-1);line-height:1.45}
.site-footer__links a:hover{color:var(--color-accent-soft)}
.site-footer__words{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:var(--space-4);padding-block:var(--space-3);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}
.site-footer__words a{padding:.45rem .7rem;border-radius:999px;background:#232029;color:#bbb6c0;font-size:var(--fs-0);line-height:1.35}
.site-footer__bottom{display:flex;justify-content:space-between;gap:var(--space-2);padding-top:var(--space-3);color:#928d98;font-size:var(--fs-0);line-height:1.5}
[data-panel][hidden],[role="dialog"][hidden]{display:none}
@media(max-width:64rem){
.site-nav__inner{min-height:4.5rem}.site-menu-button{display:grid}
.site-nav__panel{position:absolute;left:var(--gutter);right:var(--gutter);top:calc(100% + .5rem);display:none;max-height:calc(100vh - 7rem);overflow:auto;align-items:stretch;padding:1rem;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:0}
.site-nav__links a{padding:.8rem;border-bottom:1px solid var(--line-paper)}
.site-nav__tools{margin-left:auto}.site-nav__portal{padding-inline:.8rem}.site-brand__copy small{display:block}
.c-paired{grid-template-columns:1fr}
.site-footer__lead{grid-template-columns:1fr 1fr}
}
@media(max-width:38rem){
.site-brand img{width:2rem;height:2rem;flex-basis:2rem}.site-brand__copy strong{font-size:var(--fs-1)}.site-brand__copy small{font-size:.625rem}
.c-lang__label{display:none}.c-lang__button{width:1.875rem;justify-content:center;padding:0}.c-lang__button .chevron{display:none}
.site-nav__portal{min-height:2.35rem;padding:.45rem .65rem;font-size:var(--fs-0)}
.c-cta-card{align-items:flex-start;flex-direction:column}
.site-footer__lead{grid-template-columns:1fr}.site-footer__bottom{flex-direction:column}
.c-btn{max-width:100%}
}
