.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.course-card{padding:0;overflow:hidden}.course-card-header{padding:28px 28px 20px;background:var(--color-primary-light);border-bottom:4px solid var(--color-border);text-align:center}.course-card.feature .course-card-header{background:var(--color-secondary-light)}.course-card-header .course-label{display:inline-block;padding:4px 14px;margin-bottom:10px;font-family:var(--font-accent);font-size:.82rem;font-weight:900;color:#fff;background:var(--color-primary);border:3px solid var(--color-border);border-radius:var(--radius-full)}.course-card.feature .course-card-header .course-label{background:var(--color-secondary)}.course-card-header h3{font-size:1.6rem;font-weight:900}.course-card-header .course-desc{margin-top:8px;color:var(--color-text-secondary);font-size:.93rem}.course-card-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.course-card-photo{position:relative;display:grid;aspect-ratio:4 / 3;place-items:center;overflow:hidden;color:var(--color-text-primary);font-family:var(--font-heading);font-size:1.05rem;font-weight:900;text-align:center;background:linear-gradient(135deg,#fefcf8bd,#e8f5e9c7),repeating-linear-gradient(35deg,rgba(62,39,35,.08) 0 12px,transparent 12px 24px);border-bottom:4px solid var(--color-border)}.course-card.feature .course-card-photo{background:linear-gradient(135deg,#fefcf8b8,#fff3e0c7),repeating-linear-gradient(-35deg,rgba(62,39,35,.08) 0 12px,transparent 12px 24px)}.course-card-body{padding:24px 28px 28px}.course-includes{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px}.course-includes li{padding:7px 14px;font-weight:700;font-size:.9rem;background:#fff;border:3px solid var(--color-border);border-radius:var(--radius-full);box-shadow:3px 3px 0 var(--color-primary)}.course-card.feature .course-includes li{box-shadow:3px 3px 0 var(--color-secondary)}.price-section-note{max-width:720px;margin:0 auto 36px;padding:18px 24px;text-align:center;font-weight:700;font-size:.93rem;color:var(--color-text-secondary);background:#fff;border:3px solid var(--color-border);border-radius:var(--radius-md)}.price-category{margin-bottom:48px}.price-category:last-child{margin-bottom:0}.price-category-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}.price-category-num{display:inline-grid;width:44px;height:44px;flex-shrink:0;place-items:center;font-family:var(--font-accent);font-size:1rem;font-weight:700;color:#fff;background:var(--color-primary);border:3px solid var(--color-border);border-radius:50%}.price-category-head h3{font-size:1.3rem;font-weight:900}.price-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.price-table{width:100%;border-collapse:collapse;font-size:.95rem;background:var(--color-cream);border:4px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.price-table thead{background:var(--color-primary);color:#fff}.price-table th{padding:14px 18px;font-family:var(--font-heading);font-weight:900;font-size:.95rem;text-align:center;white-space:nowrap}.price-table thead th:first-child{text-align:left}.price-table tbody tr{border-bottom:2px dashed rgba(62,39,35,.15)}.price-table tbody tr:last-child{border-bottom:none}.price-table tbody tr:hover{background:var(--color-primary-light)}.price-table td{padding:14px 18px;vertical-align:middle}.price-table td:first-child{font-weight:700;white-space:nowrap}.price-table td:not(:first-child){text-align:center;font-family:var(--font-accent);font-weight:700;font-size:1rem}.price-table .sub-row td:first-child{padding-left:36px;font-weight:500;color:var(--color-text-secondary)}.price-dash{color:var(--color-text-secondary);opacity:.4}.notes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.note-card{padding:24px;text-align:center}.note-icon{display:inline-grid;width:52px;height:52px;place-items:center;margin-bottom:12px;font-size:1.5rem;background:var(--color-secondary-light);border:3px solid var(--color-border);border-radius:50%}.note-card h3{font-size:1.1rem;font-weight:900;margin-bottom:8px}.note-card p{color:var(--color-text-secondary);font-size:.9rem}.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:800px;margin:0 auto}.option-item{display:flex;align-items:center;gap:14px;padding:18px 22px}.option-item .option-dot{display:block;width:12px;height:12px;flex-shrink:0;background:var(--color-secondary);border:2px solid var(--color-border);border-radius:50%}.option-item .option-name{flex:1;font-weight:700;font-size:1rem}.option-item .option-price{font-family:var(--font-accent);font-weight:700;font-size:1.05rem;color:var(--color-secondary-dark);white-space:nowrap}.option-item .option-price.ask{font-family:var(--font-heading);font-size:.85rem;color:var(--color-text-secondary)}.option-item span{font-weight:700;font-size:1rem}.option-note{max-width:640px;margin:24px auto 0;padding:16px 22px;text-align:center;font-weight:700;font-size:.93rem;background:#ffffffb3;border:3px solid var(--color-border);border-radius:var(--radius-md)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.feature-card{position:relative;padding:32px 26px 28px;overflow:hidden}.feature-header{display:flex;align-items:center;gap:14px;margin-bottom:12px}.feature-num{display:inline-grid;width:52px;height:52px;flex-shrink:0;place-items:center;font-family:var(--font-accent);font-size:1.1rem;font-weight:700;background:var(--color-secondary);border:3px solid var(--color-border);border-radius:50%}.feature-card-photo{position:relative;display:grid;aspect-ratio:16 / 9;place-items:center;overflow:hidden;margin:-32px -26px 20px;color:var(--color-text-primary);font-family:var(--font-heading);font-size:.95rem;font-weight:900;text-align:center;border-bottom:4px solid var(--color-border)}.feature-card:nth-child(1) .feature-card-photo{background:linear-gradient(145deg,#ffffffdb,#e8f5e9e6),repeating-linear-gradient(-35deg,rgba(62,39,35,.07) 0 14px,transparent 14px 28px)}.feature-card:nth-child(2) .feature-card-photo{background:linear-gradient(145deg,#ffffffdb,#fff3e0eb),repeating-linear-gradient(35deg,rgba(62,39,35,.07) 0 14px,transparent 14px 28px)}.feature-card:nth-child(3) .feature-card-photo{background:linear-gradient(145deg,#ffffffdb,#f5ede4eb),repeating-linear-gradient(45deg,rgba(62,39,35,.07) 0 14px,transparent 14px 28px)}.feature-card h3{font-size:1.3rem}.feature-card p{margin:12px 0 0;color:var(--color-text-secondary);font-size:.95rem}.concern-panel{max-width:800px;margin:0 auto;display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;padding:36px 40px;background:#fff;border:4px solid var(--color-primary);border-radius:var(--radius-lg);box-shadow:8px 8px #5ba65c38}.concern-icon{display:grid;width:80px;height:80px;place-items:center;font-size:2.4rem;background:var(--color-primary-light);border:3px solid var(--color-border);border-radius:50%}.concern-panel h3{font-size:1.3rem;font-weight:900;margin-bottom:8px}.concern-panel p{color:var(--color-text-secondary);font-size:.95rem}.concern-panel .concern-cta{margin-top:16px}.link-blocks{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:900px;margin:0 auto 48px}.link-block{display:grid;gap:8px;padding:24px 20px;text-align:center;transition:transform .16s ease}.link-block:hover{transform:translateY(-4px)}.link-block .link-en{font-family:var(--font-handwritten);font-size:1.4rem;color:var(--color-primary-dark)}.link-block h3{font-size:1.05rem;font-weight:900}.link-block p{color:var(--color-text-secondary);font-size:.85rem}.final-cta{position:relative;overflow:hidden;color:#fff;background:var(--color-primary-dark)}.final-cta-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;padding-block:72px}.final-cta h2{font-size:clamp(1.9rem,4vw,3rem);text-shadow:none}.final-cta p{max-width:620px;margin:14px 0 0;font-weight:500;opacity:.9}.cta-actions{display:grid;gap:14px;min-width:240px}@media(max-width:1080px){.course-grid,.notes-grid,.feature-grid,.option-grid,.link-blocks,.final-cta-inner{grid-template-columns:1fr}}@media(max-width:720px){.feature-card-photo{margin:-32px -26px 20px}.concern-panel{grid-template-columns:1fr;text-align:center;padding:28px 24px}.concern-icon{margin:0 auto}.price-table{font-size:.88rem}.price-table th,.price-table td{padding:12px}}
