.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.875rem 1.875rem;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);line-height:1;border-radius:var(--radius-md);border:var(--border-width-2) solid transparent;cursor:pointer;text-align:center;white-space:nowrap;overflow:hidden;isolation:isolate;transition:background-color var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),transform var(--duration-fast) var(--ease-out)}.btn::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.22) 50%,transparent 70%);transform:translateX(-120%);transition:transform .6s var(--ease-out)}.btn:hover{transform:translateY(-2px)}.btn:hover::after{transform:translateX(120%)}.btn:active{transform:translateY(0) scale(.985)}.btn:disabled,.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none;pointer-events:none}.btn .icon{width:1.125em;height:1.125em;flex-shrink:0}.btn.is-loading{pointer-events:none;color:transparent!important}.btn.is-loading .icon{opacity:0}.btn.is-loading::before{content:"";position:absolute;inset:0;margin:auto;width:1.125rem;height:1.125rem;border:2px solid rgba(255,255,255,.35);border-top-color:currentColor;border-radius:var(--radius-full);animation:spin .8s linear infinite}.btn--primary{background:linear-gradient(135deg,var(--color-primary-700),var(--color-primary-800));color:var(--color-text-inverse);box-shadow:var(--shadow-sm)}.btn--primary:hover{background:linear-gradient(135deg,var(--color-primary-600),var(--color-primary-700));color:var(--color-text-inverse);box-shadow:0 12px 28px rgba(11,31,58,.3)}.btn--secondary{background:var(--gradient-teal);color:var(--color-text-inverse);box-shadow:var(--shadow-sm)}.btn--secondary:hover{color:var(--color-text-inverse);box-shadow:var(--shadow-glow-teal);filter:brightness(1.06)}.btn--gold{background:var(--gradient-amber);color:var(--color-primary-950);box-shadow:var(--shadow-sm)}.btn--gold:hover{color:var(--color-primary-950);box-shadow:var(--shadow-gold);filter:brightness(1.05)}.btn--outline{background:var(--color-surface);color:var(--color-primary-800);border-color:var(--color-border-strong)}.btn--outline:hover{background:var(--color-primary-800);border-color:var(--color-primary-800);color:var(--color-text-inverse);box-shadow:var(--shadow-md)}.btn--outline-light{background:rgba(255,255,255,.06);color:var(--color-text-inverse);border-color:rgba(255,255,255,.32);backdrop-filter:blur(6px)}.btn--outline-light:hover{background:var(--color-text-inverse);color:var(--color-primary-800);border-color:var(--color-text-inverse);box-shadow:0 12px 32px rgba(0,0,0,.28)}.btn--ghost{background:0 0;color:var(--color-secondary-600)}.btn--ghost:hover{background:var(--color-secondary-50)}.btn--white{background:var(--color-neutral-0);color:var(--color-primary-800);box-shadow:var(--shadow-sm)}.btn--white:hover{box-shadow:var(--shadow-lg)}.btn--sm{padding:.5625rem 1.25rem;font-size:var(--text-xs)}.btn--lg{padding:1.125rem 2.5rem;font-size:var(--text-base);border-radius:var(--radius-lg)}.btn--block{display:flex;width:100%}.btn--icon{padding:.75rem;border-radius:var(--radius-full)}.btn--icon .icon{width:1.25em;height:1.25em}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:.3125rem .75rem;font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wide);line-height:1;border-radius:var(--radius-full);white-space:nowrap}.badge--gold{background:var(--color-highlight-100);color:var(--color-highlight-800)}.badge--navy{background:var(--color-primary-100);color:var(--color-primary-800)}.badge--blue{background:var(--color-accent-100);color:var(--color-accent-700)}.badge--teal{background:var(--color-secondary-100);color:var(--color-secondary-700)}.badge--success{background:var(--color-success-100);color:var(--color-success-800)}.badge--warning{background:var(--color-warning-soft);color:var(--color-warning)}.badge--danger{background:var(--color-danger-soft);color:var(--color-danger)}.badge--neutral{background:var(--color-neutral-100);color:var(--color-neutral-700)}.badge--solid{background:var(--color-primary-800);color:var(--color-text-inverse)}.badge--gradient{background:var(--gradient-teal);color:var(--color-text-inverse)}.badge--outline{background:0 0;border:var(--border-width) solid var(--color-border-strong);color:var(--color-text-secondary)}.badge .badge-dot{width:.375rem;height:.375rem;border-radius:var(--radius-full);background:currentColor}.alert{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:var(--border-width) solid transparent;border-left-width:var(--border-width-4);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:var(--leading-normal)}.alert .icon{width:1.25rem;height:1.25rem;flex-shrink:0;margin-top:.125rem}.alert--info{background:var(--color-info-soft);border-color:var(--color-info-border);color:var(--color-info)}.alert--success{background:var(--color-success-soft);border-color:var(--color-success-200);color:var(--color-success-800)}.alert--warning{background:var(--color-warning-soft);border-color:var(--color-warning-border);color:var(--color-warning)}.alert--danger{background:var(--color-danger-soft);border-color:var(--color-danger-border);color:var(--color-danger)}.alert__title{font-weight:var(--weight-semibold);margin-bottom:var(--space-1)}.form-group{margin-bottom:var(--space-5)}.form-label{display:block;margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-primary-900)}.form-label .required{color:var(--color-danger);margin-left:.125rem}.form-hint{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--color-text-muted)}.form-input,.form-select,.form-textarea,.input{width:100%;padding:.8125rem 1rem;font-size:var(--text-sm);color:var(--color-text);background:var(--color-surface);border:var(--border-width) solid var(--color-border-strong);border-radius:var(--radius-md);transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.form-input::placeholder,.form-textarea::placeholder,.input::placeholder{color:var(--color-neutral-400)}.form-input:hover,.form-select:hover,.form-textarea:hover,.input:hover{border-color:var(--color-neutral-400)}.form-input:focus,.form-select:focus,.form-textarea:focus,.input:focus{outline:0;border-color:var(--color-accent-500);box-shadow:var(--shadow-focus)}.form-input[aria-invalid=true],.form-textarea[aria-invalid=true],.input--error{border-color:var(--color-danger)}.form-input[aria-invalid=true]:focus{box-shadow:0 0 0 3px rgba(185,28,28,.2)}.form-error{display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-danger)}.form-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234E5D6E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.75rem}.form-textarea{min-height:8rem;resize:vertical}.form-check{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);font-size:var(--text-sm);cursor:pointer}.form-check input[type=checkbox],.form-check input[type=radio]{width:1.125rem;height:1.125rem;margin-top:.125rem;accent-color:var(--color-secondary-600);flex-shrink:0;cursor:pointer}.input-icon{position:relative}.input-icon .icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);width:1.125rem;height:1.125rem;color:var(--color-neutral-400);pointer-events:none}.input-icon .form-input{padding-left:2.75rem}.table-wrap{overflow-x:auto;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-lg)}.table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table td,.table th{padding:var(--space-3) var(--space-4);text-align:left;border-bottom:var(--border-width) solid var(--color-border);vertical-align:top}.table thead th{background:var(--color-primary-800);color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;white-space:nowrap}.table tbody tr:nth-child(2n){background:var(--color-surface-alt)}.table tbody tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--color-accent-50)}.table--striped-less tbody tr:nth-child(2n){background:0 0}.card{position:relative;display:flex;flex-direction:column;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xs);overflow:hidden;transition:transform var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),border-color var(--duration-base) var(--ease-out),background var(--duration-base) var(--ease-out)}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);border-color:var(--color-accent-200);background-image:var(--gradient-card-hover)}.card__body{display:flex;flex-direction:column;flex:1;padding:var(--space-6)}.card__eyebrow{margin-bottom:var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-secondary-600)}.card__title{font-size:var(--text-lg);margin-bottom:var(--space-3)}.card__title a{color:inherit}.card__title a:hover{color:var(--color-secondary-600)}.card__text{font-size:var(--text-sm);color:var(--color-text-secondary);line-height:var(--leading-relaxed);margin-bottom:var(--space-4)}.card__footer{margin-top:auto;padding-top:var(--space-4)}.card__link{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-secondary-600)}.card__link .icon{width:1rem;height:1rem;transition:transform var(--duration-fast) var(--ease-out)}.card__link:hover .icon{transform:translateX(4px)}.card__media{aspect-ratio:16/10;overflow:hidden;background:var(--color-neutral-100)}.card__media img{width:100%;height:100%;object-fit:cover;transition:transform var(--duration-slow) var(--ease-out)}.card:hover .card__media img{transform:scale(1.04)}.feature-card{text-align:left}.feature-card__icon{display:inline-flex;align-items:center;justify-content:center;width:3.5rem;height:3.5rem;margin-bottom:var(--space-4);border-radius:var(--radius-lg);background:linear-gradient(140deg,var(--color-secondary-50),var(--color-accent-100));color:var(--color-secondary-600);box-shadow:inset 0 0 0 1px rgba(14,116,144,.14);transition:background var(--duration-base) var(--ease-out),color var(--duration-base) var(--ease-out),box-shadow var(--duration-base) var(--ease-out),transform var(--duration-base) var(--ease-out)}.feature-card__icon .icon{width:1.5rem;height:1.5rem}.feature-card:hover .feature-card__icon{background:var(--gradient-teal);color:var(--color-text-inverse);box-shadow:var(--shadow-glow-cyan);transform:translateY(-2px) scale(1.04)}.service-card{border-top:3px solid transparent;background-clip:padding-box}.service-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-teal);opacity:.65;transition:opacity var(--duration-base) var(--ease-out)}.service-card:hover::before{opacity:1}.industry-card{position:relative;min-height:16rem;justify-content:flex-end}.industry-card__bg{position:absolute;inset:0;background:linear-gradient(160deg,var(--color-primary-700),var(--color-primary-950))}.industry-card__bg img{width:100%;height:100%;object-fit:cover;opacity:.35;transition:opacity var(--duration-base) var(--ease-out),transform var(--duration-slow) var(--ease-out)}.industry-card:hover .industry-card__bg img{opacity:.5;transform:scale(1.05)}.industry-card .card__body{position:relative;color:var(--color-text-inverse)}.industry-card .card__title{color:var(--color-text-inverse)}.industry-card .card__text{color:var(--color-primary-100)}.industry-card .card__link{color:var(--color-accent-300)}.country-card{flex-direction:row;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5)}.country-card:hover{transform:translateY(-2px)}.country-card__flag{font-size:var(--text-2xl);line-height:1;flex-shrink:0}.country-card__name{font-weight:var(--weight-semibold);color:var(--color-primary-900)}.country-card__meta{font-size:var(--text-xs);color:var(--color-text-muted)}.blog-card__meta{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);font-size:var(--text-xs);color:var(--color-text-muted)}.blog-card__meta time{display:inline-flex;align-items:center;gap:var(--space-1)}.team-card{text-align:center}.team-card__photo{aspect-ratio:1;overflow:hidden;background:linear-gradient(160deg,var(--color-primary-100),var(--color-primary-200))}.team-card__photo img{width:100%;height:100%;object-fit:cover}.team-card .card__body{align-items:center}.team-card__role{font-size:var(--text-xs);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--color-secondary-600);margin-bottom:var(--space-2)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:0;margin:0;list-style:none;font-size:var(--text-sm)}.breadcrumb__item{display:inline-flex;align-items:center;gap:var(--space-2)}.breadcrumb__item+.breadcrumb__item::before{content:"";width:.875rem;height:.875rem;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239AA9BA' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E") center/contain no-repeat}.breadcrumb__link{color:var(--color-text-secondary)}.breadcrumb__link:hover{color:var(--color-secondary-600);text-decoration:underline}.breadcrumb__current{color:var(--color-text);font-weight:var(--weight-medium)}.on-dark .breadcrumb__link{color:var(--color-primary-200)}.on-dark .breadcrumb__link:hover{color:var(--color-text-inverse)}.on-dark .breadcrumb__current{color:var(--color-text-inverse)}.on-dark .breadcrumb__item+.breadcrumb__item::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23AFC4E2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E")}