.agreement-page{background-image:linear-gradient(to bottom,var(--color-section-start),var(--color-section-end) 90%)}.agreement-layout{display:flex;flex-direction:column;gap:28px;padding-block:32px 48px}.agreement-intro h1{margin:0 0 16px;font-family:Philosopher,sans-serif;font-size:28px;font-weight:700;color:var(--color-brand);word-wrap:break-word}.agreement-notice p{margin:0 0 12px;font-size:15px;line-height:1.6;color:var(--color-text)}.agreement-body{overflow-x:auto;padding:8px 0 16px;color:#333;word-wrap:break-word;overflow-wrap:break-word}.agreement-body h1,.agreement-body h2,.agreement-body h3,.agreement-body h4{color:inherit;font-weight:500;line-height:1.3}.agreement-body p,.agreement-body li{font-size:16px;line-height:1.5}.agreement-body ul{margin:0 0 1rem;padding-left:1.5rem}.agreement-form-panel{width:100%;padding:20px 16px;background-color:var(--color-white);border:1px solid var(--color-surface-border);border-radius:16px;box-shadow:var(--shadow-contact-card)}.agreement-form__row{display:flex;flex-direction:column;gap:0}.agreement-form__group{margin-bottom:20px}.agreement-form__group label,.agreement-form__accept label{display:block;margin-bottom:6px;font-family:Philosopher,sans-serif;font-size:15px;font-weight:700;color:var(--color-text)}.agreement-form__label--required:after{content:"*";color:#c0392b;padding-inline-start:.2em}.agreement-form__group input[type=text],.agreement-form__group input[type=email]{display:block;width:100%;padding:14px 16px;border:1px solid var(--color-input-border);border-radius:10px;background-color:var(--color-input-bg);font-family:inherit;font-size:16px}.agreement-signature{position:relative;display:inline-block;max-width:100%;margin-bottom:8px;padding:10px;border:1px solid var(--color-input-border);border-radius:10px;background-color:var(--color-white)}.agreement-signature__canvas{display:block;max-width:100%;touch-action:none;-webkit-user-select:none;user-select:none}.agreement-signature__clear{position:absolute;top:6px;right:8px;padding:4px;border:none;background:none;color:var(--color-text);cursor:pointer}.agreement-signature__clear:hover{color:var(--color-brand)}.agreement-form__accept{display:flex;align-items:flex-start;gap:10px;margin-bottom:20px}.agreement-form__accept input{margin-top:4px;flex-shrink:0}.agreement-form__accept label{margin-bottom:0;font-weight:500}.agreement-form__submit{display:inline-flex;align-items:center;justify-content:center;width:100%;height:52px;margin-bottom:16px;padding:10px 20px;border:1px solid var(--color-brand);border-radius:16px;background-color:var(--color-brand);color:var(--color-text-inverse);font-family:Philosopher,sans-serif;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .3s,color .3s}.agreement-form__submit:hover{background-color:var(--color-white);color:var(--color-brand)}.agreement-form__submit:disabled{opacity:.75;cursor:wait}.agreement-form__spinner{display:none;align-items:center;gap:8px}.agreement-form__spinner.is-visible{display:inline-flex}.agreement-form__spinner-icon{display:inline-block;width:1.25rem;height:1.25rem;border:.2em solid currentColor;border-right-color:transparent;border-radius:50%;animation:agreement-spinner .75s linear infinite}@keyframes agreement-spinner{to{transform:rotate(360deg)}}.agreement-form__alert{display:none;margin-bottom:1rem;padding:.75rem 1.25rem;border:1px solid transparent;border-radius:.25rem}.agreement-form__alert.is-visible{display:block}.agreement-form__alert--success{color:var(--color-alert-success-text);background-color:var(--color-alert-success-bg);border-color:var(--color-alert-success-border)}.agreement-form__alert--error{color:var(--color-alert-error-text);background-color:var(--color-alert-error-bg);border-color:var(--color-alert-error-border)}.agreement-form__alert ul{margin:0;padding-left:1.25rem}@media(min-width:601px){.agreement-layout{max-width:900px;gap:32px;padding-block:40px 56px}.agreement-intro h1{font-size:36px}.agreement-form-panel{padding:28px 24px;border-radius:20px}.agreement-form__row{flex-direction:row;gap:16px}.agreement-form__row .agreement-form__group{flex:1 1 0;min-width:0}.agreement-form__submit{width:190px;height:56px;font-size:18px;border-radius:20px}}@media(min-width:1025px){.agreement-layout{max-width:1000px;padding-block:50px 60px}.agreement-intro h1{font-size:44px}.agreement-form__submit{height:65px}}
