/* Comfortable reading scale while preserving the original artwork. */
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { background:#f2f1e9; }
main > section:first-child { background:#eeeee5; }
main > section:first-child > div { max-width:760px; margin-inline:auto; }
#signup-form { scroll-margin-top:88px; }
#signup-form > div { max-width:760px; }
header nav { height:72px; }
header nav > div { max-width:1120px; margin-inline:auto; }
header nav a[aria-label="River 靈氣"] { width:64px; height:64px; background-size:contain; }
header nav ul { top:72px; }
form input { font-size:16px; }
@media (min-width:900px) {
  main > section:first-child { padding:28px 32px 40px; }
  main > section:first-child > div { overflow:hidden; border-radius:14px; box-shadow:0 10px 40px #31483b0c; }
  #signup-form { padding-block:56px 64px; }
  #signup-form h2 { font-size:30px; letter-spacing:2px; }
  #signup-form form { padding:36px 40px; border:1px solid #e9e5dc; border-radius:20px; }
  body > div.fixed > div { max-width:1000px; gap:20px; }
  body > div.fixed p { font-size:13px; }
  body > div.fixed a { font-size:15px; padding:11px 28px; }
}
@media (max-width:899px) {
  main > section:first-child > div { max-width:680px; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto; }
}
.registration-card{background:#fffdf9;border:1px solid #e5dfd2;border-radius:20px;padding:32px;color:#34554b;line-height:1.8}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.registration-card label{display:block;font-size:15px}.registration-card input:not([type=radio]):not([type=checkbox]){display:block;width:100%;border:1px solid #d9d4c7;border-radius:9px;padding:10px 12px;background:#fff;margin:6px 0;font:16px system-ui}.registration-card small{display:block;font-size:12px;color:#77786d}.registration-card fieldset{border:1px solid #e5dfd2;border-radius:12px;padding:20px;margin:25px 0}.registration-card legend{padding:0 8px;font-weight:600}.plan-option{padding:10px 0;cursor:pointer}.registration-card input[type=radio],.registration-card input[type=checkbox]{accent-color:#9e8a68;margin-right:10px}.terms-box{max-height:230px;overflow:auto;background:#f7f5ee;border:1px solid #e5dfd2;border-radius:12px;padding:20px;margin:25px 0;font-size:13px}.consent{font-size:13px!important;margin:20px 0}.submit-button,.success-card button{background:#9e8a68;color:white;border:0;border-radius:28px;padding:14px 24px;cursor:pointer}.submit-button{width:100%;font-size:16px}.submit-button:disabled{opacity:.6}.success-card{margin-top:24px;border:1px solid #d5c8af;background:#f5f1e6;padding:24px;border-radius:14px;white-space:pre-line}.success-card h3{font-size:24px}.success-card pre{white-space:pre-wrap;overflow-wrap:anywhere;font:13px/1.9 system-ui;background:white;padding:15px;margin:15px 0}.success-card a{display:block;color:#247242;text-decoration:underline;padding:15px 0}.course-info{max-width:760px;margin:0 auto;padding:35px 28px;background:#faf8ef;color:#34554b;line-height:1.9}.course-info h2{font-size:26px}.course-info p{margin:12px 0}.course-info a{display:inline-block;background:#9e8a68;padding:10px 26px;border-radius:30px;color:white} [hidden]{display:none!important}@media(max-width:600px){.field-grid{grid-template-columns:1fr}.registration-card{padding:24px 18px}.registration-card fieldset{padding:14px}}

.nav-section{scroll-margin-top:88px}
.faq-section{padding:64px 24px;background:#f2f1e9;color:#34554b}
.faq-inner{max-width:712px;margin:auto}.faq-eyebrow{font-size:11px;letter-spacing:3px;color:#8d7b59;margin-bottom:10px}.faq-inner h2{font-size:30px;font-weight:400;letter-spacing:2px;margin-bottom:12px}.faq-intro{font-size:15px;color:#70756b;margin-bottom:28px}
.faq-inner details{border-bottom:1px solid #dcded2}.faq-inner summary{cursor:pointer;list-style:none;position:relative;padding:21px 32px 21px 0;font-size:16px;font-weight:500;line-height:1.7}.faq-inner summary::-webkit-details-marker{display:none}.faq-inner summary:after{content:'＋';position:absolute;right:2px;color:#8d7b59}.faq-inner details[open] summary:after{content:'−'}.faq-inner details p{font-size:14px;line-height:1.95;color:#606c62;padding:0 26px 23px 0;margin:0}.faq-inner summary:focus-visible{outline:2px solid #9e8a68;outline-offset:3px}.faq-cta{display:inline-block;margin-top:28px;padding:12px 24px;border-radius:30px;color:white;background:#9e8a68;font-size:14px}
@media(max-width:600px){.faq-section{padding:44px 24px}.faq-inner h2{font-size:26px}.faq-inner summary{font-size:15px}}

/* Larger type on phones, without changing the desktop layout. */
@media(max-width:600px){
 body{font-size:18px;line-height:1.85}
 .registration-card label,.registration-card legend{font-size:18px}
 .registration-card input:not([type=radio]):not([type=checkbox]){font-size:18px;min-height:50px}
 .registration-card small{font-size:15px;line-height:1.85;color:#62695f}
 .terms-box{font-size:16px;line-height:1.95;max-height:300px}
 .consent{font-size:16px!important;line-height:1.9}
 .registration-card input[type=radio],.registration-card input[type=checkbox]{width:19px;height:19px;vertical-align:middle}
 .registration-card fieldset>p{font-size:17px}
 .submit-button,.success-card button{font-size:18px;line-height:1.6}
 .success-card{font-size:18px;padding:20px 16px}
 .success-card pre{font-size:16px;line-height:1.9}
 .faq-inner summary{font-size:18px}
 .faq-inner details p,.faq-intro,.faq-cta{font-size:17px;line-height:1.9}
 .course-info p{font-size:18px;line-height:1.95}
 .course-info{padding-inline:24px}
 footer{font-size:15px!important;line-height:1.9}
}

/* Keep the original course artwork; enlarge only its two syllabus lists on phones. */
.mobile-course-detail{display:none}
@media(max-width:600px){
 .original-course-detail{display:none!important}
 .mobile-course-detail{display:block;background:#f6f6ed;color:#303d4a}
 .course-art-top{aspect-ratio:1800/1535;background-image:url('/usui-assets/img/class-lp-05.webp');background-size:100% 231.7264%;background-position:center top;background-repeat:no-repeat}
 .course-lists{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;padding:8px 24px 16px;background:#f6f6ed}
 .course-lists ol{list-style:decimal outside;padding-left:18px;margin:0}
 .course-lists li{font-size:12px;line-height:1.85;letter-spacing:.2px;margin:0 0 6px;padding-left:1px;overflow-wrap:break-word}
 .course-applications{font-size:12px;line-height:2;letter-spacing:.2px;padding-left:18px;margin:4px 0 0}
 .course-art-bottom{aspect-ratio:1800/1342;background-image:url('/usui-assets/img/class-lp-05.webp');background-size:100% 265.0522%;background-position:center bottom;background-repeat:no-repeat}
}
