    :root {
        --inquiry-brand: #ff2a00;
		--inquiry-blue: #2534ff;
        --inquiry-text: #232732;
        --inquiry-muted: #626a76;
        --inquiry-line: #dfe3ea;
        /* 750px 캔버스에서 390px 화면 기준 간격을 가장 가까운 정수로 환산 */
        --inquiry-space-4: 8px;
        --inquiry-space-6: 12px;
        --inquiry-space-8: 15px;
        --inquiry-space-12: 23px;
        --inquiry-space-16: 31px;
        --inquiry-space-20: 38px;
        --inquiry-space-24: 46px;
        --inquiry-space-48: 92px;
        --inquiry-space-64: 123px;
        --inquiry-space-80: 154px;
        --inquiry-space-88: 169px;
        --inquiry-space-96: 185px;
        --inquiry-space-104: 200px;

        /* 750px 캔버스에서 390px 화면 기준 폰트를 가장 가까운 정수로 환산 */
        --inquiry-font-12: 23px;
        --inquiry-font-14: 27px;
        --inquiry-font-15: 29px;
        --inquiry-font-16: 31px;
        --inquiry-font-18: 35px;
        --inquiry-font-20: 38px;
        --inquiry-font-24: 46px;
    }

    html.inquiry-dialog-open,
    body.inquiry-dialog-open {
        overflow: hidden !important;
        overscroll-behavior: none;
        touch-action: none;
    }
    /*
    html.inquiry-dialog-open {
        overflow: hidden !important;
        overscroll-behavior: none;
    }

    body.inquiry-dialog-open {
        position: fixed !important;
        right: 0;
        left: 0;
        width: 750px !important;
        margin: 0 auto;
        overflow: hidden !important;
        overscroll-behavior: none;
    }
        */




	.inquiry-counsel-section {
		display: block;
		padding: var(--inquiry-space-80) 0 var(--inquiry-space-104);
		background: #fff;
		color: var(--inquiry-text);
		text-align: left;
		
		&, & * {
			box-sizing: border-box;
		}
		
		div, label {
			position: static;
		}
		
		button, input, textarea {
			margin: 0;
			font: inherit;
			letter-spacing: -0.5px;
			-webkit-appearance: none;
			appearance: none;
		}
		
		button {
			border: 0;
			cursor: pointer;
		}
		
		.inquiry-counsel-inner {
			width: 670px;
			margin: 0 auto;
		}
		
		.inquiry-section-head {
			display: block;
			margin-bottom: var(--inquiry-space-48);
			
			h1 {
				margin: 0;
				color: #17191f;
				font-size: var(--inquiry-font-24);
				font-weight: 700;
				line-height: 1.25;
				letter-spacing: -2px;
			}
			
			p {
				margin-top: var(--inquiry-space-4);
				color: var(--inquiry-muted);
				font-size: var(--inquiry-font-14);
				line-height: 1.5;
			}
		}
		
	.inquiry-counsel-form,
	.inquiry-field-group,
	.inquiry-info-content,
	.inquiry-contact-inputs,
	.inquiry-message-consent-group,
	.inquiry-textarea-field {
		display: grid;
		}
		
		.inquiry-counsel-form {
			gap: var(--inquiry-space-48);
			width: 100%;
			counter-reset: inquiry-mobile-step;
		}
		
		.inquiry-field-group {
			gap: var(--inquiry-space-16);
		}
		
		.inquiry-field-head {
			display: flex;
			align-items: center;
			gap: var(--inquiry-space-4);
			
			&::before {
				content: counter(inquiry-mobile-step);
				display: grid;
				flex: 0 0 36px;
				place-items: center;
				width: 36px;
				height: 36px;
				border-radius: 50%;
				background: linear-gradient(90deg, #f5c8c2 0%, var(--inquiry-brand) 100%);
				color: #fff;
				font-size: var(--inquiry-font-12);
				font-weight: 700;
				line-height: 1;
				counter-increment: inquiry-mobile-step;
			}
			
			strong {
				color: var(--inquiry-text);
				font-size: var(--inquiry-font-16);
				font-weight: 700;
				line-height: 1.35;
			}

			em {
				color: var(--inquiry-muted);
				font-size: var(--inquiry-font-12);
				font-style: normal;
				font-weight: 500;
				line-height: 1;
			}

			&.inquiry-field-head--with-count {
				gap: var(--inquiry-space-8);
			}
		}
		
		.inquiry-choice-grid {
			width: 100%;
		}
		
		.branch-choice {
			display: grid;
			grid-template-columns: repeat(4, minmax(0, 1fr));
			gap: var(--inquiry-space-12);
			
			button {
				min-height: 88px;
				padding: 0 var(--inquiry-space-8);
				border: 2px solid var(--inquiry-line);
				border-radius: 12px;
				background: #f7f7f7;
				color: #3d444f;
				font-size: var(--inquiry-font-14);
				font-weight: 500;
				
				&.is-selected {
					border-color: var(--inquiry-brand);
					background: var(--inquiry-brand);
					color: #fff;
					font-weight: 700;
				}
			}
		}
		
		.field-choice {
			display: flex;
			flex-wrap: wrap;
			gap: var(--inquiry-space-12);
			
			button {
				display: flex;
				flex: 0 0 auto;
				align-items: center;
				gap: var(--inquiry-space-4);
				width: auto;
				min-height: 80px;
				max-width: 100%;
				padding: var(--inquiry-space-8) var(--inquiry-space-16);
				border: 1px solid #d5dae2;
				border-radius: 999px;
				background: #fff;
				color: #3d444f;
				font-size: var(--inquiry-font-15);
				font-weight: 500;
				line-height: 1;
				white-space: normal;
				word-break: keep-all;
				
				&.is-selected {
					border-color: rgba(255, 42, 0, 0.62);
					background: #fff4f1;
					color: #d41f00;
					font-weight: 500;
				}
			}
		}
		
		.inquiry-course-list {
			display: block;
		}

		.inquiry-course-group {
			display: grid;
			gap: var(--inquiry-space-16);
			padding: var(--inquiry-space-16);
			border-radius: 12px;
			background: #f5f5f5;

			label {
				display: grid;
				grid-template-columns: 30px minmax(0, 1fr);
				align-items: start;
				gap: var(--inquiry-space-6);
				min-height: auto;
				padding: 0;
				border: 0;
				border-radius: 0;
				background: transparent;
				color: #3d444f;
				font-size: var(--inquiry-font-14);
				font-weight: 400;
				line-height: 1.4;
				cursor: pointer;

				&.is-disabled {
					cursor: default;
				}
			}

			input {
				display: block;
				flex: 0 0 30px;
				width: 30px;
				height: 30px;
				margin: 4px 0 0;
				border: 2px solid #cdd2da;
				border-radius: 4px;
				background: #fff;
				-webkit-appearance: checkbox;
				appearance: checkbox;
				accent-color: var(--inquiry-brand);
			}
		}
		
		.inquiry-info-content {
			gap: var(--inquiry-space-12);
		}

		.inquiry-contact-inputs {
			gap: var(--inquiry-space-12);

			> input {
				display: block;
				width: 100%;
				height: 94px;
				padding: 0 var(--inquiry-space-24);
				border: 2px solid var(--inquiry-line);
				border-radius: 12px;
				background: #fff;
				color: #17191f;
				font-size: 30px;
				font-weight: 400;
				outline: 0;
				
				&[type="text"],
				&[type="password"],
				&[type="number"],
				&[type="tel"],
				&[type="email"],
				&[type="date"] {
					padding-right: var(--inquiry-space-12);
					padding-left: var(--inquiry-space-12);
				}
				
				&:focus {
					border-color: rgba(255, 42, 0, 0.55);
				}
			}
		}

		.inquiry-message-consent-group {
			gap: var(--inquiry-space-24);
		}
		
		select {
			padding-right: var(--inquiry-space-24);
			padding-left: var(--inquiry-space-24);
		}
		
		.inquiry-textarea-field {
			gap: var(--inquiry-space-8);
			/*margin-top: var(--inquiry-space-8);*/
			
			label {
				position: static;
				color: var(--inquiry-text);
				font-size: var(--inquiry-font-14);
				font-weight: 700;
			}
			
			textarea {
				display: block;
				width: 100%;
				height: 300px;
				min-height: 300px;
				padding: var(--inquiry-space-12);
				border: 2px solid var(--inquiry-line);
				border-radius: 12px;
				background: #fff;
				color: #17191f;
				font-size: 30px;
				font-weight: 400;
				outline: 0;
				resize: vertical;
				
				&:focus {
					border-color: rgba(255, 42, 0, 0.55);
				}
			}
		}
		
		.inquiry-agree-row {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: var(--inquiry-space-8);
			/*margin-top: var(--inquiry-space-8);*/
		}
		
		.inquiry-agree {
			display: flex;
			align-items: center;
			min-width: 0;
			color: var(--inquiry-muted);
			font-size: var(--inquiry-font-14);
			font-weight: 400;
			line-height: 1.4;
			white-space: nowrap;
			
			input {
				display: block;
				flex: 0 0 30px;
				width: 30px;
				height: 30px;
				margin-right: var(--inquiry-space-6);
				border: 2px solid #cdd2da;
				border-radius: 4px;
				background: #fff;
				-webkit-appearance: checkbox;
				appearance: checkbox;
				accent-color: var(--inquiry-brand);
			}
		}
		
		.inquiry-agree-required {
			flex: 0 0 auto;
			/*color: var(--inquiry-brand);*/
			color:var(--inquiry-text);
			font-weight: 600;
		}
		
		.inquiry-policy-open {
			flex: 0 0 auto;
			/*min-height: 56px;*/
			padding: var(--inquiry-space-4) var(--inquiry-space-8);
			border: 1px solid var(--inquiry-line) !important;
			border-radius: 10px;
			background: #f7f8fa;
			color: var(--inquiry-muted);
			font-size: var(--inquiry-font-12);
			font-weight: 500;
			line-height: 1;
		}
		
		.inquiry-counsel-submit {
			width: 100%;
			min-height: 104px;
			margin-top: 0 !important;
			border-radius: 12px;
			/*background: #1b1d22;*/
			background-color: var(--inquiry-brand);
			color: #fff;
			font-size: var(--inquiry-font-16);
			font-weight: 500;
		}
		
		.inquiry-privacy-dialog {
			position: fixed;
			width: 650px;
			max-width: 650px;
			height: fit-content;
			max-height: none;
			margin: auto;
			padding: 0;
			border: 0;
			border-radius: 20px;
			background: #fff;
			color: var(--inquiry-text);
			box-shadow: 0 30px 90px rgba(18, 22, 31, 0.28);
			overflow: visible;
			
			&::backdrop {
				background: rgba(16, 18, 23, 0.62);
			}
		}
		
		.inquiry-privacy-head {
			display: flex;
			align-items: center;
			justify-content: space-between;
			gap: var(--inquiry-space-24);
			padding: var(--inquiry-space-20);
			border-bottom: 2px solid #e6e8ed;
			
			h2 {
				font-size: var(--inquiry-font-18);
				font-weight: 700;
				line-height: 1.35;
			}
			
			button {
				display: grid;
				flex: 0 0 58px;
				place-items: center;
				width: 58px;
				height: 58px;
				padding: 0;
				border-radius: 50%;
				background: #f2f3f6;
				color: var(--inquiry-text);
				font-size: 42px;
				font-weight: 400;
				line-height: 1;
                -webkit-tap-highlight-color: transparent;

                &:focus {
                    outline: none;
                }

                &:focus-visible {
                    outline: 2px solid #cdd2da;
                    outline-offset: 2px;
                }
			}
		}
		
		.inquiry-privacy-body {
			display: grid;
			gap: var(--inquiry-space-20);
			max-height: none;
			padding: var(--inquiry-space-20);
            padding-bottom: var(--inquiry-space-24);
			overflow: visible;
			
			section {
				display: grid;
				gap: var(--inquiry-space-4);
			}
			
			h3 {
				font-size: var(--inquiry-font-14);
				font-weight: 700;
				line-height: 1.4;
			}
			
			p {
				color: var(--inquiry-muted);
				font-size: var(--inquiry-font-14);
				line-height: 1.7;
			}
			
			.inquiry-privacy-note {
				padding: var(--inquiry-space-24);
				border-radius: 12px;
				background: #f6f7f9;
				color: #7a818d !important;
				font-size: 22px !important;
			}
		}
	}

