.appointment-page{padding:clamp(56px,7vw,92px) 0 clamp(80px,8vw,118px);background:radial-gradient(circle at top left,rgba(var(--color-primary-rgb,47,107,59),0.035),transparent 32%),linear-gradient(180deg,#ffffff 0%,#fffdf8 100%)}.appointment-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,0.9fr);gap:30px;align-items:start}.card-surface,.appointment-form.card-surface,.appointment-info.card-surface{background:#ffffff;border:1px solid rgba(15,47,36,0.075);border-radius:30px;box-shadow:0 18px 48px rgba(15,47,36,0.075)}.appointment-form.card-surface{padding:clamp(26px,4vw,38px)}.appointment-info.card-surface{padding:clamp(26px,3vw,34px)}.appointment-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.appointment-form .form-group{margin-bottom:18px}.appointment-form .form-group-full{grid-column:1 / -1}.appointment-form label{font-weight:850;color:var(--color-text)}.form-group label span{color:#c0392b}.appointment-form input,.appointment-form select,.appointment-form textarea{width:100%;min-height:50px;border-radius:16px;border:1px solid rgba(15,47,36,0.1);background:#ffffff}.appointment-form textarea{min-height:178px;resize:vertical}.appointment-form input:focus,.appointment-form select:focus,.appointment-form textarea:focus{border-color:rgba(var(--color-primary-rgb,47,107,59),0.34);box-shadow:0 0 0 4px rgba(var(--color-primary-rgb,47,107,59),0.08)}.form-actions{margin-top:8px}.field-error{display:block;margin-top:8px;color:#b91c1c;font-size:0.88rem;font-weight:650}.form-alert{margin-bottom:22px;padding:15px 18px;border-radius:16px;font-size:0.95rem;font-weight:650;line-height:1.6}.form-alert-success{background:rgba(34,197,94,0.10);border:1px solid rgba(34,197,94,0.22);color:#166534}.form-alert-error{background:rgba(239,68,68,0.10);border:1px solid rgba(239,68,68,0.22);color:#991b1b}.appointment-info{position:sticky;top:106px}.appointment-info h3{margin:0 0 18px;color:var(--color-primary-dark);font-family:var(--font-heading);font-size:clamp(1.45rem,2.5vw,2rem);line-height:1.2}.appointment-points{margin:0;padding:0;list-style:none}.appointment-points li{position:relative;margin-bottom:14px;padding-left:20px;color:var(--color-text);line-height:1.65}.appointment-points li::before{content:"";position:absolute;left:0;top:0.72em;width:7px;height:7px;border-radius:999px;background:var(--color-primary)}.appointment-help{margin-top:30px;padding-top:24px;border-top:1px solid rgba(15,47,36,0.08)}.appointment-help h4{margin:0 0 10px;color:var(--color-primary-dark);font-size:1.08rem}.appointment-help p{margin:0;color:var(--color-text-light);line-height:1.75}.policy-agreement{display:flex;align-items:flex-start;gap:10px;color:var(--color-text);font-size:0.92rem;font-weight:600;line-height:1.7;text-align:left}.policy-agreement input{width:18px;min-width:18px;height:18px;margin-top:4px}.policy-agreement a{color:var(--color-primary);font-weight:800;text-decoration:underline}@media (max-width:991px){.appointment-layout{grid-template-columns:1fr}.appointment-info{position:static}}@media (max-width:767px){.appointment-page{padding:54px 0 72px;text-align:center}.appointment-form .form-grid{grid-template-columns:1fr;gap:0}.appointment-form .form-group-full{grid-column:auto}.appointment-form.card-surface,.appointment-info.card-surface{padding:22px;border-radius:24px}.appointment-points li{padding-left:0}.appointment-points li::before{display:none}}