/* Generated 390px mobile baseline; rebuild with build-mobile-rem.py. */
.features-page main{overflow: hidden; background: rgb(255, 255, 255);}
.features-page .gnb-item.active > .gnb-link{color: var(--blue);}
.features-page .submenu a[aria-current="page"]{padding-left: 1.375rem; background: rgb(243, 246, 252); color: var(--blue);}
.features-page .next-page{border-top: 1px solid rgb(227, 230, 233);}
.features-page .page-progress i{background: rgb(47, 107, 255);}
.features-page .breadcrumb{top: 1.6875rem;}
.features-hero-visual{position: absolute; inset: 0 6.25rem 0 auto; width: 65%; overflow: hidden;}
.subpage-hero--features .subpage-hero-media img{width: 100%; object-position: right top; transform-origin: left center;}
.subpage-hero--features .subpage-hero-media::after{content: ""; position: absolute; inset: 0 6.25rem 0 auto; width: 65%; background: linear-gradient(90deg, rgb(17, 24, 32) 0%, rgba(17, 24, 32, 0) 30%, rgba(17, 24, 32, 0) 91%, rgb(17, 24, 32) 100%); pointer-events: none;}
.features-label{display: block; margin-bottom: 1.3125rem; color: rgb(40, 100, 184); font-size: max(10px,0.6875rem); font-weight: 760; letter-spacing: 0.08em; text-transform: uppercase;}
.features-intro{padding: 6.75rem 0 6.875rem; background: rgb(255, 255, 255);}
.features-intro-head{max-width: 65rem; margin: 0 auto; text-align: center;}
.features-intro h2, .curriculum-head h2, .depth-head h2, .image-check-copy h2, .consult-principle h2{font-size: clamp(2.5rem, 3.45vw, 3.375rem); line-height: 1.28; letter-spacing: -0.055em; font-weight: 650; text-wrap: balance; word-break: keep-all;}
.features-intro h2{font-size: clamp(2.25rem, 3.2vw, 3rem); line-height: 1.42; letter-spacing: -0.05em;}
.features-intro h2 > br{display: none;}
.features-intro-opening{display: block; margin-bottom: 0.625rem; color: rgb(89, 99, 110); font-size: clamp(1.5625rem, 2.05vw, 1.9375rem); font-weight: 450; letter-spacing: -0.04em;}
.features-intro-message{display: block; font-weight: 680; text-wrap: balance;}
.features-intro-narrative{display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3.25rem; width: min(58.75rem, 100%); margin: 2.625rem auto 0; text-align: left;}
.features-intro-narrative p{color: rgb(89, 99, 110); font-size: max(13px,0.9375rem); line-height: 1.92; word-break: keep-all;}
.features-standards{max-width: 65rem; margin: 3.5rem auto 0; border-top: 1px solid rgb(207, 212, 217);}
.features-standards article{display: grid; grid-template-columns: 15rem minmax(0, 1fr); gap: 0.1875rem 2.5rem; align-items: center; padding: 1.5rem 0; border-bottom: 1px solid rgb(220, 225, 230);}
.features-standards span{grid-area: 2 / 1; color: rgb(120, 131, 142); font-size: 0.625rem; font-weight: 550; letter-spacing: 0.04em; text-transform: uppercase;}
.features-standards strong{grid-area: 1 / 1; font-size: max(13px,1.25rem); font-weight: 680; letter-spacing: -0.03em;}
.features-standards p{grid-area: 1 / 2 / 3; color: rgb(102, 113, 123); font-size: max(13px,0.875rem); line-height: 1.8; word-break: keep-all;}
.curriculum{position: relative; padding: 7.375rem 0 7.75rem; background: rgb(242, 244, 247);}
.curriculum::after{content: ""; position: absolute; right: -10.625rem; top: -10.625rem; width: 30rem; height: 30rem; border: 1px solid rgba(47, 107, 255, 0.12); border-radius: 50%;}
.curriculum-head{position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 26.25rem; gap: 7vw; align-items: end;}
.curriculum-summary{padding-top: 1.5rem; border-top: 1px solid rgb(39, 49, 60); color: rgb(91, 102, 113); font-size: max(13px,0.9375rem); line-height: 1.9; word-break: keep-all;}
.curriculum-flow{position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 4.75rem; border-top: 1px solid rgb(191, 198, 207); border-bottom: 1px solid rgb(191, 198, 207);}
.curriculum-step{position: relative; min-height: 12.125rem; padding: 2.125rem 1.75rem 1.9375rem;}
.curriculum-step + .curriculum-step{border-left: 1px solid rgb(215, 220, 226);}
.curriculum-step::after{content: ""; position: absolute; left: 1.75rem; right: 1.75rem; bottom: -1px; height: 0.125rem; background: rgb(47, 107, 255); transform: scaleX(0); transform-origin: left center; transition: transform 0.3s;}
.curriculum-step:hover::after{transform: scaleX(1);}
.curriculum-step span{display: block; margin-bottom: 1.5rem; color: rgb(123, 133, 143); font-size: max(10px,0.6875rem); font-weight: 720; letter-spacing: 0.06em;}
.curriculum-step strong{display: block; font-size: max(13px,1.25rem); font-weight: 680; letter-spacing: -0.035em;}
.curriculum-step p{margin-top: 0.8125rem; color: rgb(104, 114, 124); font-size: max(10px,0.8125rem); line-height: 1.75; word-break: keep-all;}
.curriculum-step .flow-arrow{position: absolute; right: -0.625rem; top: 2.625rem; z-index: 2; width: 1.25rem; height: 1.25rem; border: 1px solid rgb(191, 198, 207); border-radius: 50%; background: rgb(242, 244, 247); color: rgb(82, 97, 112); font-size: max(10px,0.75rem); line-height: 1.125rem; text-align: center;}
.dedicated{position: relative; min-height: 42.5rem; overflow: hidden; background: rgb(17, 27, 40); color: rgb(255, 255, 255);}
.dedicated-media{position: absolute; inset: 0; margin: 0;}
.dedicated-media::after{content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7, 15, 26, 0.95) 0%, rgba(8, 18, 31, 0.83) 34%, rgba(9, 20, 33, 0.3) 68%, rgba(9, 20, 33, 0.12) 100%);}
.dedicated-media img{display: block; width: 100%; height: 100%; object-fit: cover; object-position: center center;}
.dedicated > .wrap{position: relative; z-index: 1; display: flex; min-height: 42.5rem; align-items: center;}
.dedicated-copy{width: 45%; padding: 4.625rem 0;}
.dedicated .features-label{color: rgb(143, 183, 255);}
.dedicated h2{font-size: clamp(2.625rem, 3.75vw, 3.75rem); line-height: 1.27; letter-spacing: -0.06em; font-weight: 650; text-wrap: balance; word-break: keep-all;}
.dedicated-lead{margin-top: 1.75rem; color: rgba(239, 244, 250, 0.75); font-size: max(13px,0.9375rem); line-height: 1.9; word-break: keep-all;}
.dedicated-points{margin-top: 2.5rem; border-top: 1px solid rgba(255, 255, 255, 0.25);}
.dedicated-points li{display: flex; justify-content: space-between; gap: 1.5625rem; padding: 1.0625rem 0; border-bottom: 1px solid rgba(255, 255, 255, 0.14); color: rgba(239, 244, 250, 0.68); font-size: max(10px,0.8125rem);}
.dedicated-points strong{color: rgb(255, 255, 255); font-size: max(13px,0.875rem); font-weight: 650;}
.depth{padding: 7.75rem 0 8.25rem; background: rgb(255, 255, 255);}
.depth-head{display: grid; grid-template-columns: 1fr 26.25rem; gap: 7vw; align-items: end;}
.depth-head p{padding-top: 1.5rem; border-top: 1px solid rgb(34, 45, 56); color: rgb(91, 102, 113); font-size: max(13px,0.9375rem); line-height: 1.9; word-break: keep-all;}
.depth-grid{display: grid; grid-template-columns: minmax(0, 1.18fr) minmax(20.625rem, 0.82fr); gap: 1.5rem; margin-top: 4.5rem;}
.depth-field{position: relative; min-height: 36.875rem; overflow: hidden; background: url("/cimg/gbabc/renew/features/features-cabin-special-lecture-v4.webp") center top / cover no-repeat rgb(21, 32, 50); color: rgb(255, 255, 255);}
.depth-field figure{position: absolute; inset: 0; margin: 0;}
.depth-field figure::after{content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(8, 15, 25, 0.88) 0%, rgba(8, 15, 25, 0.38) 52%, rgba(8, 15, 25, 0.03) 100%);}
.depth-field img{display: none;}
.depth-field-copy{position: absolute; z-index: 1; left: 3.125rem; right: 3.125rem; bottom: 2.9375rem;}
.depth-field-copy span, .lecture-card > span{display: block; margin-bottom: 0.875rem; color: rgb(158, 191, 255); font-size: 0.625rem; font-weight: 760; letter-spacing: 0.08em; text-transform: uppercase;}
.depth-field-copy h3, .lecture-card h3{font-size: clamp(1.875rem, 2.55vw, 2.5rem); line-height: 1.35; letter-spacing: -0.05em; font-weight: 650; word-break: keep-all;}
.depth-field-copy p{max-width: 36.25rem; margin-top: 1.25rem; color: rgba(239, 244, 250, 0.74); font-size: max(13px,0.875rem); line-height: 1.85; word-break: keep-all;}
.depth-link{display: inline-flex; align-items: center; gap: 0.625rem; margin-top: 1.5625rem; color: rgb(255, 255, 255); font-size: max(10px,0.8125rem); font-weight: 700;}
.depth-link i{font-style: normal; transition: transform 0.2s;}
.depth-link:hover i{transform: translateX(0.3125rem);}
.lecture-card{display: flex; min-height: 36.875rem; flex-direction: column; justify-content: space-between; padding: 3rem 2.75rem; background: rgb(237, 241, 246);}
.lecture-card > span{color: rgb(40, 100, 184);}
.lecture-card p{margin-top: 1.375rem; color: rgb(90, 101, 112); font-size: max(13px,0.875rem); line-height: 1.87; word-break: keep-all;}
.lecture-tags{display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 2.375rem; padding-top: 1.5625rem; border-top: 1px solid rgb(189, 198, 207);}
.lecture-tags span{padding: 0.5625rem 0.75rem; border: 1px solid rgb(200, 208, 216); border-radius: 1.125rem; background: rgba(255, 255, 255, 0.52); color: rgb(79, 92, 105); font-size: max(10px,0.6875rem);}
.lecture-card .depth-link{color: rgb(30, 92, 197);}
.image-check{padding: 7.75rem 0; background: rgb(244, 240, 235);}
.features-page .image-check::before, .features-page .image-check::after{display: none;}
.features-page .image-check-grid{display: grid; min-height: 0; grid-template-columns: minmax(0, 1.13fr) minmax(23.75rem, 0.87fr); gap: clamp(3.75rem, 8vw, 7.25rem); align-items: center;}
.image-check-media{position: relative; margin: 0; overflow: hidden; background: rgb(224, 216, 207);}
.image-check-media::after{content: ""; position: absolute; inset: 0; border: 1px solid rgba(50, 39, 29, 0.1); pointer-events: none;}
.image-check-media img{display: block; width: 100%; aspect-ratio: 1.32 / 1; object-fit: cover; object-position: center center; transition: transform 0.8s cubic-bezier(0.22, 0.61, 0.36, 1);}
.image-check-media:hover img{transform: scale(1.025);}
.image-check-copy .features-label{color: rgb(131, 98, 71);}
.image-check-copy p{margin-top: 1.625rem; padding-top: 1.5rem; border-top: 1px solid rgb(82, 72, 63); color: rgb(104, 95, 87); font-size: max(13px,0.9375rem); line-height: 1.9; word-break: keep-all;}
.image-check-list{display: flex; flex-wrap: wrap; gap: 0.5rem; margin-top: 1.75rem;}
.image-check-list span{padding: 0.5625rem 0.8125rem; border: 1px solid rgba(91, 70, 52, 0.24); border-radius: 1.125rem; background: rgba(255, 255, 255, 0.37); color: rgb(95, 82, 71); font-size: max(10px,0.6875rem);}
.consult-principle{padding: 7.625rem 0; background: radial-gradient(circle at 88% 12%, rgba(67, 116, 183, 0.2), rgba(67, 116, 183, 0) 42%), linear-gradient(135deg, rgb(231, 237, 244) 0%, rgb(247, 248, 250) 58%, rgb(232, 238, 245) 100%);}
.consult-principle-grid{display: grid; grid-template-columns: minmax(0, 1fr) 25.625rem; gap: 9vw; align-items: end;}
.consult-principle-copy{padding-top: 1.625rem; border-top: 1px solid rgb(32, 42, 52);}
.consult-principle-copy p{color: rgb(89, 99, 110); font-size: max(13px,0.9375rem); line-height: 1.87; word-break: keep-all;}
.consult-actions{display: flex; gap: 0.625rem; margin-top: 1.875rem;}
.consult-actions a{display: inline-flex; height: 3.25rem; align-items: center; justify-content: center; padding: 0 1.5rem; border: 1px solid rgb(174, 184, 196); border-radius: 1.625rem; font-size: max(10px,0.8125rem); font-weight: 720; transition: transform 0.2s, background 0.2s, border-color 0.2s, color 0.2s;}
.consult-actions .primary{border-color: rgb(47, 107, 255); background: rgb(47, 107, 255); color: rgb(255, 255, 255);}
.consult-actions a:hover{transform: translateY(-0.125rem);}
.consult-actions .primary:hover{border-color: rgb(31, 82, 214); background: rgb(31, 82, 214);}
.consult-actions .secondary:hover{border-color: rgb(127, 140, 153); background: rgb(255, 255, 255);}
.features-intro h2, .features-intro-narrative p, .features-standards p, .curriculum-head h2, .curriculum-summary, .curriculum-step p, .dedicated h2, .dedicated-lead, .depth-head h2, .depth-head p, .depth-field-copy h3, .depth-field-copy p, .lecture-card h3, .lecture-card p, .image-check-copy h2, .image-check-copy p, .consult-principle h2, .consult-principle-copy p{overflow-wrap: break-word;}
.features-hero-visual{right: 0; width: 100%;}
.subpage-hero--features .subpage-hero-media img{object-position: center top;}
.subpage-hero--features .subpage-hero-media::after{display: none;}
.curriculum-head, .depth-head, .consult-principle-grid{grid-template-columns: 1fr; gap: 2.875rem;}
.features-intro-narrative{gap: 2.25rem;}
.features-standards article{grid-template-columns: 12.5rem minmax(0, 1fr); column-gap: 2rem;}
.curriculum-summary, .depth-head p, .consult-principle-copy{max-width: 45rem;}
.curriculum-flow{grid-template-columns: repeat(2, minmax(0, 1fr));}
.curriculum-step:nth-child(3){border-left: 0; border-top: 1px solid rgb(215, 220, 226);}
.curriculum-step:nth-child(4){border-top: 1px solid rgb(215, 220, 226);}
.curriculum-step:nth-child(2) .flow-arrow{display: none;}
.dedicated-media img{height: 25rem; object-position: right top;}
.dedicated-media::after{background: linear-gradient(rgba(7, 15, 26, 0.12) 0, rgba(7, 15, 26, 0.28) 11.25rem, rgb(7, 15, 26) 25rem);}
.dedicated > .wrap{align-items: flex-end;}
.dedicated-copy{width: 100%; padding: 18.75rem 0 4rem;}
.depth-grid{grid-template-columns: 1fr;}
.depth-field, .lecture-card{min-height: 32.5rem;}
.lecture-card{max-width: 45rem; min-height: 27.5rem; margin-left: auto;}
.features-page .image-check-grid{grid-template-columns: 1fr; gap: 3.375rem;}
.image-check-media{width: 90%;}
.image-check-copy{max-width: 43.75rem; margin-left: auto;}
.subpage-hero--features .subpage-hero-media img{object-position: 90% top;}
.subpage-hero--features .subpage-hero-media::before{background: linear-gradient(90deg, rgba(8, 14, 23, 0.86) 0%, rgba(8, 14, 23, 0.67) 55%, rgba(8, 14, 23, 0.25) 100%), linear-gradient(0deg, rgba(6, 11, 18, 0.35), transparent 70%);}
.features-label{margin-bottom: 0.9375rem; font-size: 0.5625rem;}
.features-intro{padding: 4.75rem 0 4.875rem;}
.curriculum-head, .depth-head, .consult-principle-grid{gap: 2.125rem;}
.features-intro h2, .curriculum-head h2, .depth-head h2, .image-check-copy h2, .consult-principle h2{font-size: 2.125rem; line-height: 1.35;}
.features-intro h2{font-size: clamp(1.6875rem, 4.5vw, 2.125rem); line-height: 1.4;}
.features-intro-opening{margin-bottom: 0.75rem; font-size: 1.375rem;}
.features-intro-narrative{grid-template-columns: 1fr; gap: 1rem; max-width: 32.5rem; margin-top: 1.875rem;}
.features-standards{margin-top: 2.375rem;}
.features-standards article{grid-template-columns: 1fr; gap: 0.25rem; padding: 1.375rem 0;}
.features-standards span{font-size: 0.5625rem;}
.features-standards strong{font-size: max(13px,1.125rem);}
.features-standards p{grid-area: 3 / 1; margin-top: 0.5rem; font-size: max(10px,0.8125rem);}
.curriculum-summary, .depth-head p, .consult-principle-copy{padding-top: 1.3125rem;}
.features-intro-narrative p, .curriculum-summary, .depth-head p, .image-check-copy p, .consult-principle-copy p{font-size: max(10px,0.8125rem); line-height: 1.85;}
.curriculum{padding: 4.9375rem 0 5.25rem;}
.curriculum-flow{grid-template-columns: 1fr; margin-top: 3rem;}
.curriculum-step{min-height: 0; padding: 1.625rem 1.25rem 1.5625rem;}
.curriculum-step + .curriculum-step, .curriculum-step:nth-child(3), .curriculum-step:nth-child(4){border-left: 0; border-top: 1px solid rgb(215, 220, 226);}
.curriculum-step .flow-arrow{display: none;}
.curriculum-step span{margin-bottom: 0.8125rem; font-size: 0.625rem;}
.curriculum-step strong{font-size: max(13px,1.125rem);}
.curriculum-step p{font-size: max(10px,0.75rem);}
.dedicated, .dedicated > .wrap{min-height: 41.25rem;}
.dedicated-media::after{background: linear-gradient(rgba(7, 15, 26, 0.1) 0, rgba(7, 15, 26, 0.2) 6.25rem, rgb(7, 15, 26) 16.25rem);}
.dedicated-media img{height: 16.25rem; object-position: right top;}
.dedicated > .wrap{align-items: flex-end;}
.dedicated-copy{width: 100%; padding: 14.375rem 0 3.5625rem;}
.dedicated h2{font-size: 2.25rem; line-height: 1.34;}
.dedicated-lead{margin-top: 1.25rem; font-size: max(10px,0.8125rem); line-height: 1.82;}
.dedicated-points{margin-top: 1.75rem;}
.dedicated-points li{font-size: max(10px,0.6875rem);}
.dedicated-points strong{font-size: max(10px,0.75rem);}
.depth{padding: 5.125rem 0 5.375rem;}
.depth-grid{gap: 0.875rem; margin-top: 2.9375rem;}
.depth-field{min-height: 31.875rem;}
.depth-field-copy{left: 1.5rem; right: 1.5rem; bottom: 1.875rem;}
.depth-field-copy h3, .lecture-card h3{font-size: 1.8125rem; line-height: 1.4;}
.depth-field-copy p, .lecture-card p{font-size: max(10px,0.75rem); line-height: 1.82;}
.lecture-card{min-height: 25rem; padding: 2.0625rem 1.625rem; margin-left: 0;}
.lecture-tags{margin-top: 1.6875rem;}
.image-check{padding: 5.125rem 0 5.375rem;}
.features-page .image-check-grid{display: grid; padding-top: 0; padding-bottom: 0; flex-direction: initial; align-items: center; gap: 2.375rem;}
.image-check-media{width: calc(100% + 2.5rem); margin-left: -1.25rem;}
.image-check-media img{aspect-ratio: 1.12 / 1;}
.image-check-copy{margin-left: 0;}
.image-check-copy p{margin-top: 1.3125rem; padding-top: 1.25rem;}
.consult-principle{padding: 5.125rem 0;}
.consult-actions{align-items: stretch; flex-direction: column;}
.consult-actions a{width: 100%;}
.dedicated-points li{align-items: flex-start; flex-direction: column; gap: 0.3125rem;}
@media (prefers-reduced-motion: reduce){.curriculum-step::after, .depth-link i, .image-check-media img, .consult-actions a{transition: none;}}
