.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.625rem 1.5rem;border-radius:var(--radius-full);font-family:var(--font-body);font-size:var(--text-label-large);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-decoration:none;cursor:pointer;border:none;position:relative;overflow:hidden;transition:box-shadow var(--transition-base),transform var(--transition-fast),background-color var(--transition-fast);white-space:nowrap}.btn::after{content:'';position:absolute;inset:0;border-radius:inherit;background-color:transparent;transition:background-color var(--transition-fast)}.btn:hover::after{background-color:rgba(255,255,255,.08)}.btn:active{transform:translateY(1px)}.btn:active::after{background-color:rgba(255,255,255,.12)}.btn-primary{background-color:var(--color-primary-btn);color:var(--color-on-primary);box-shadow:var(--shadow-primary-sm)}.btn-primary:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-primary-md);color:var(--color-on-primary);text-decoration:none}.btn-secondary{background-color:var(--color-secondary-container);color:var(--color-on-secondary-container)}.btn-secondary:hover::after{background-color:rgba(29,25,43,.08)}.btn-secondary:hover{box-shadow:var(--shadow-sm);color:var(--color-on-secondary-container);text-decoration:none}.btn-outlined{background-color:transparent;color:var(--color-primary-text);border:1.5px solid var(--color-outline)}.btn-outlined::after{background-color:transparent}.btn-outlined:hover{border-color:var(--color-primary);background-color:var(--color-primary-container);color:var(--color-primary-text);text-decoration:none}.btn-text{background-color:transparent;color:var(--color-primary-text);padding-inline:var(--space-3)}.btn-text:hover{background-color:var(--color-primary-container);color:var(--color-primary-text);text-decoration:none}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-label-medium)}.btn-lg{padding:.875rem 2rem;font-size:1rem}.btn-full{width:100%}.btn-white{background-color:var(--color-on-primary);color:var(--color-primary-btn)}.btn-white:hover{background-color:#f0ebf9;color:var(--color-primary-btn);text-decoration:none}.card{background-color:var(--color-surface-container);border-radius:var(--radius-xl);padding:var(--space-8);border:1px solid var(--color-outline-variant);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base),transform var(--transition-base)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.accordion-item{background-color:var(--color-surface-container);border-radius:var(--radius-lg);border:1px solid var(--color-outline-variant);overflow:hidden;transition:box-shadow var(--transition-fast)}.accordion-item+.accordion-item{margin-top:var(--space-3)}.accordion-item:focus-within{box-shadow:0 0 0 2px var(--color-primary)}.accordion-trigger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%;padding:var(--space-5) var(--space-6);background-color:transparent;color:var(--color-on-surface);font-size:var(--text-title-medium);font-weight:var(--weight-medium);text-align:left;cursor:pointer;border:none;transition:background-color var(--transition-fast);line-height:var(--leading-snug)}.accordion-trigger:hover{background-color:rgba(103,80,164,.06)}.accordion-trigger[aria-expanded=true]{background-color:rgba(103,80,164,.08);color:var(--color-primary-text)}.accordion-icon{flex-shrink:0;width:1.25rem;height:1.25rem;position:relative;border-radius:var(--radius-full);background-color:var(--color-surface-container-low);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast)}.accordion-trigger[aria-expanded=true] .accordion-icon{background-color:var(--color-primary-container)}.accordion-icon img{transition:transform var(--transition-base)}.accordion-trigger[aria-expanded=true] .accordion-icon img{transform:rotate(180deg)}.accordion-content{max-height:0;overflow:hidden;transition:max-height var(--duration-long) var(--ease-standard)}.accordion-body{padding:var(--space-3) var(--space-6) var(--space-5);color:var(--color-on-surface-variant);line-height:var(--leading-relaxed);font-size:var(--text-body-large)}.modal-overlay{position:fixed;inset:0;background-color:rgba(28,27,31,.5);z-index:var(--z-modal);display:flex;align-items:flex-end;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--transition-base);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.modal-overlay.is-active{opacity:1;pointer-events:all}.modal-panel{background-color:var(--color-surface-container);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;width:100%;max-width:40rem;max-height:94vh;overflow-y:auto;padding:var(--space-5) var(--space-5) var(--space-8);box-shadow:var(--shadow-xl);transform:translateY(2rem);transition:transform var(--transition-base);overscroll-behavior:contain}.modal-overlay.is-active .modal-panel{transform:translateY(0)}.modal-panel-legal{max-height:85vh}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-6);gap:var(--space-4)}.modal-header h2{font-size:var(--text-headline-small);color:var(--color-on-surface)}.modal-subtitle{font-size:var(--text-body-medium);color:var(--color-on-surface-variant);margin-top:var(--space-1);line-height:var(--leading-snug)}.modal-contact-info{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-3)}.modal-contact-link{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-label-medium);font-weight:var(--weight-medium);color:var(--color-primary-text);text-decoration:none;padding:var(--space-1) var(--space-3);background-color:var(--color-primary-container);border-radius:var(--radius-full);transition:background-color var(--transition-fast)}.modal-contact-link:hover{background-color:var(--color-secondary-container);text-decoration:none}.modal-close{flex-shrink:0;width:2.5rem;height:2.5rem;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;background-color:var(--color-surface-container-low);color:var(--color-on-surface-variant);border:none;cursor:pointer;transition:background-color var(--transition-fast)}.modal-close:hover{background-color:var(--color-surface-dim)}.legal-content h3{font-size:var(--text-title-medium);color:var(--color-on-surface);margin-top:var(--space-6);margin-bottom:var(--space-2)}.legal-content h3:first-child{margin-top:0}.legal-content li,.legal-content p{font-size:var(--text-body-medium);color:var(--color-on-surface-variant);line-height:var(--leading-relaxed)}.legal-content ul{list-style:disc;padding-left:var(--space-6);margin-bottom:var(--space-4)}.legal-content ul li{margin-bottom:var(--space-2)}.form-group{position:relative;margin-bottom:var(--space-4)}.form-row{display:flex;flex-wrap:wrap;gap:var(--space-4)}.form-row .form-group{flex:1 1 12rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:1rem;background-color:var(--color-surface-container-low);border:1px solid var(--color-outline);border-radius:var(--radius-md);color:var(--color-on-surface);font-size:var(--text-body-large);font-family:var(--font-body);line-height:var(--leading-normal);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);-webkit-appearance:none;appearance:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:0;border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.form-group input::placeholder,.form-group textarea::placeholder{color:transparent}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2349454F' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:1.125rem;padding-right:2.5rem;cursor:pointer}.form-group textarea{resize:vertical;min-height:6rem}.form-group>label{position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:var(--text-body-large);color:var(--color-on-surface-variant);pointer-events:none;transition:.2s cubic-bezier(.2, 0, 0, 1);z-index:1;line-height:1}.form-required{color:var(--color-error)}.form-group:has(textarea)>label{top:1rem;transform:none}.form-group:has(input:focus)>label,.form-group:has(input:not(:placeholder-shown))>label,.form-group:has(textarea:focus)>label,.form-group:has(textarea:not(:placeholder-shown))>label{top:0;transform:translateY(-50%);left:.75rem;font-size:.75rem;font-weight:var(--weight-medium);background-color:var(--color-surface-container);padding:0 .25rem;border-radius:2px;letter-spacing:var(--tracking-wide)}.form-group:has(input:focus)>label,.form-group:has(select:focus)>label,.form-group:has(textarea:focus)>label{color:var(--color-primary)}.form-group:has(input:not(:focus):not(:placeholder-shown))>label,.form-group:has(textarea:not(:focus):not(:placeholder-shown))>label{color:var(--color-on-surface-variant)}.form-group:has(.iti)>label,.form-group:has(select)>label{top:0;transform:translateY(-50%);left:.75rem;font-size:.75rem;font-weight:var(--weight-medium);background-color:var(--color-surface-container);padding:0 .25rem;border-radius:2px;letter-spacing:var(--tracking-wide);color:var(--color-on-surface-variant)}.form-group input.is-invalid,.form-group select.is-invalid,.form-group textarea.is-invalid{border-color:var(--color-error);box-shadow:0 0 0 1px var(--color-error)}.form-group:has(.is-invalid)>label{color:var(--color-error)!important}.field-error{font-size:var(--text-label-medium);color:var(--color-error);display:flex;align-items:center;gap:var(--space-1);margin-top:var(--space-1)}.form-group input:-webkit-autofill{-webkit-background-clip:text;-webkit-text-fill-color:var(--color-on-surface);transition:background-color 9999s ease-in-out 0s}.form-group:has(input:-webkit-autofill)>label{top:0;transform:translateY(-50%);left:.75rem;font-size:.75rem;font-weight:var(--weight-medium);background-color:var(--color-surface-container);padding:0 .25rem;border-radius:2px;letter-spacing:var(--tracking-wide);color:var(--color-on-surface-variant)}.form-status{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);font-size:var(--text-body-medium);font-weight:var(--weight-medium);margin-top:var(--space-4);text-align:center}.form-status-success{background-color:var(--color-success-container);color:var(--color-success);border:1px solid currentColor}.form-status-error{background-color:var(--color-error-container);color:var(--color-error);border:1px solid currentColor}.iti{width:100%}.iti__tel-input{width:100%;padding-top:1rem!important;padding-right:1rem!important;padding-bottom:1rem!important;background-color:var(--color-surface-container-low)!important;border:1px solid var(--color-outline)!important;border-radius:var(--radius-md)!important;color:var(--color-on-surface)!important;font-size:var(--text-body-large)!important;font-family:var(--font-body)!important}.iti__tel-input:focus{border-color:var(--color-primary)!important;box-shadow:0 0 0 1px var(--color-primary)!important}.iti__flag-container{background-color:transparent!important}.iti__country-list{background-color:var(--color-surface-container)!important;border-color:var(--color-outline-variant)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important;font-family:var(--font-body)!important;font-size:var(--text-body-medium)!important;color:var(--color-on-surface)!important;z-index:var(--z-modal)!important}.iti__country:hover{background-color:var(--color-primary-container)!important}.iti__country.iti__highlight{background-color:var(--color-primary-container)!important}.text-arrow{margin:0 .125em}.scroll-to-top{position:fixed;bottom:var(--space-8);right:var(--space-8);z-index:var(--z-sticky);width:3.5rem;height:3.5rem;border-radius:var(--radius-full);background-color:var(--color-primary-btn);color:var(--color-on-primary);display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-primary-md);border:2px solid var(--color-background);cursor:pointer;opacity:0;transform:translateY(1rem) scale(.85);pointer-events:none;transition:opacity var(--transition-base),transform var(--transition-base),background-color var(--transition-fast),box-shadow var(--transition-fast)}.scroll-to-top.is-visible{opacity:1;transform:translateY(0) scale(1);pointer-events:all}.scroll-to-top:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-xl);transform:translateY(-2px) scale(1)}.lightbox{position:fixed;inset:0;z-index:var(--z-top);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity var(--transition-base)}.lightbox.is-active{opacity:1;pointer-events:all}.lightbox-backdrop{position:absolute;inset:0;background-color:rgba(28,27,31,.92);cursor:pointer}.lightbox-content{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;width:90vw;height:85vh;cursor:zoom-in;overflow:hidden}#lightbox-image{max-width:90vw;max-height:80vh;object-fit:contain;border-radius:var(--radius-lg);user-select:none;-webkit-user-drag:none;transform-origin:center center;will-change:transform}.lightbox-controls{position:fixed;top:var(--space-6);right:var(--space-6);z-index:2;display:flex;align-items:center;gap:var(--space-2)}.lightbox-close,.lightbox-reset,.lightbox-zoom-in,.lightbox-zoom-out{width:2.75rem;height:2.75rem;border-radius:var(--radius-full);background-color:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color var(--transition-fast);backdrop-filter:blur(8px);font-size:var(--text-title-medium);font-weight:var(--weight-bold)}.lightbox-close:hover,.lightbox-reset:hover,.lightbox-zoom-in:hover,.lightbox-zoom-out:hover{background-color:rgba(255,255,255,.28)}.lightbox-hint{position:fixed;bottom:var(--space-8);left:50%;transform:translateX(-50%);background-color:rgba(28,27,31,.7);color:rgba(255,255,255,.85);padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);font-size:var(--text-label-medium);pointer-events:none;transition:opacity var(--transition-base);backdrop-filter:blur(8px);white-space:nowrap}.lightbox-hint.is-hidden{opacity:0}