@font-face{font-family:GuideSerif;src:local('Georgia');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#f8f8f1;color:#253b30;font:15px/1.6 Arial,Helvetica,sans-serif}body:has(dialog[open]){overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}a{color:inherit}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bd773f;outline-offset:4px}button{transition:background .18s,color .18s,transform .18s}h1,h2,h3,p{margin:0}h1,h2{font-family:GuideSerif,Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.05em;line-height:1.07}h1{font-size:clamp(50px,5.4vw,86px)}h2{font-size:clamp(32px,3.2vw,48px)}h3{font-size:20px;line-height:1.25;font-weight:500}p{color:#627168}svg{display:inline-block;vertical-align:middle}input,select,textarea{min-width:0;max-width:100%;color:#243b30;background:#fff;border:1px solid #d6dbd0;border-radius:4px;padding:11px 12px}input[type=checkbox]{accent-color:#315940;min-width:17px;width:17px;height:17px;margin:0}select{cursor:pointer}input::placeholder,textarea::placeholder{color:#818980;opacity:1}label{font-size:13px;font-weight:500}small{font-size:12px;color:#667367}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-100px;left:20px;background:#fff;padding:12px;z-index:20}.skip:focus{top:10px}[hidden]{display:none!important}.site-header{height:100px;padding:0 4.5%;display:flex;justify-content:space-between;align-items:center;background:#f8f8f1;border-bottom:1px solid #e1e4d9}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Georgia,serif;font-size:19px;letter-spacing:1.1px;line-height:1.2}.brand b{font-weight:400}.brand small{display:block;font:9px/1.5 Arial,sans-serif;letter-spacing:2px;color:#6f7a65;margin-top:8px}.brand>svg{width:38px;height:42px;stroke:#426747;stroke-width:1.5;fill:none}.site-header nav{display:flex;gap:32px;align-items:center}.site-header nav a{text-decoration:none;font-size:13px}.site-header nav a:hover{text-decoration:underline;text-underline-offset:6px}.count{font-size:11px;background:#e7ebdf;padding:2px 6px;border-radius:50%;margin-left:4px}.private{display:flex;align-items:center;gap:7px;border-left:1px solid #d3d9cb;padding-left:26px;color:#6e7868;font-size:11px}.private svg,.private-note svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.2}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:535px;margin:22px 24px 0;background:#254c3a;overflow:hidden;border-radius:3px}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;padding:51px 7% 27px 8%;color:#f4f1dd}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:600;margin-bottom:21px;color:#707b60}.eyebrow.light{color:#c2c9ad;margin-bottom:30px}.hero-description{font-size:14px;line-height:1.8;color:#d1dac6;max-width:380px;margin:22px 0 28px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;text-decoration:none;font-size:13px;font-weight:500;min-height:46px;padding:13px 22px;border:1px solid transparent;border-radius:3px}.button:hover{transform:translateY(-1px)}.button.cream{color:#294c35;background:#e4e9c4}.button.cream:hover{background:#f3f2d8}.button.primary{color:#fffef0;background:#2b513d}.button.primary:hover{background:#3d684b}.button.secondary{background:transparent;border-color:#bdc8b5}.button.secondary:hover{background:#edf0e5}.button.full{width:100%;justify-content:space-between}.hero-bottom{display:flex;align-items:center;gap:13px;font-size:9px;letter-spacing:.4px;color:#c4ceb6;margin-top:auto;padding-top:35px;flex-wrap:wrap}.hero-bottom i{width:3px;height:3px;border-radius:100%;background:#c4ceb6}.hero-art{position:relative;overflow:hidden;min-height:530px}.hero-art>img{position:absolute;width:100%;height:100%;object-fit:cover}.art-note{position:absolute;left:26px;top:26px;color:#264633;background:#f8f8e7d6;border:1px solid #f5f3d9;padding:11px 17px;backdrop-filter:blur(5px)}.art-note span{font-size:10px;font-weight:600;letter-spacing:2px}.art-note small{display:block;font-family:Georgia,serif;font-style:italic;margin-top:2px;color:#536347}.art-caption{position:absolute;bottom:19px;right:24px;color:#ebefd6;font-size:8px;letter-spacing:1.8px}.trust-strip{display:flex;justify-content:space-between;gap:18px;padding:22px 7%;border-bottom:1px solid #dde2d5;font-size:11px;letter-spacing:.2px;color:#728069}.trust-strip span{display:flex;align-items:center;gap:8px}.dot{width:6px;height:6px;background:#738259;border-radius:50%}.section{padding:72px 6%;max-width:1600px;margin:auto}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:36px}.section-heading .eyebrow{margin-bottom:16px}.section-heading p:not(.eyebrow){font-size:12px;line-height:1.8}.filter-top{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #d3dacb;padding-bottom:18px}.destinations{display:flex;gap:8px;flex-wrap:wrap}.destinations button{padding:9px 16px;background:transparent;border:1px solid transparent;border-radius:3px;font-size:12px}.destinations button span{margin-left:6px;font-size:10px;opacity:.65}.destinations button:hover{background:#edf0e3}.destinations button[aria-pressed=true]{background:#2d523c;color:#f5f4e5}.search{display:flex;align-items:center;gap:9px;width:300px;border:1px solid #d6ddce;border-radius:4px;padding-left:12px;background:#fff}.search svg{width:18px;fill:none;stroke:#718167;stroke-width:1.4}.search input{border:0;background:transparent;width:100%;font-size:12px;outline-offset:2px}.filter-bottom{display:flex;justify-content:space-between;align-items:center;padding:16px 0 13px;min-height:70px}.filter-bottom>div{display:flex;gap:28px;align-items:center}.select-inline{display:flex;gap:10px;align-items:center;font-size:11px;color:#6a7663}.select-inline select{padding:7px 10px;background:transparent;font-size:11px}.check-label{display:flex;align-items:center;gap:9px;line-height:1.4;font-size:12px;color:#5d6d59}.text-button{background:transparent;border:0;padding:8px 0;font-size:12px;text-underline-offset:3px}.text-button:hover{text-decoration:underline}.results-line{display:flex;justify-content:space-between;font-size:11px;color:#7a8475;margin:9px 0 18px}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.course-card{background:#fff;border:1px solid #dee3d7;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.course-card:hover{box-shadow:0 7px 26px #23452e0b;transform:translateY(-2px)}.card-art{height:185px;position:relative;overflow:hidden;background:#cfddc2}.course-photo{width:100%;height:100%;display:block;object-fit:cover}.card-landscape{background:#183025b3;padding:3px 6px;border-radius:2px}.card-number{position:absolute;left:15px;top:14px;background:#f8f6e8e3;color:#3a543c;padding:3px 8px;border-radius:2px;font-size:10px;letter-spacing:1px}.compare-toggle{position:absolute;right:13px;top:12px;background:#fcfcedec;border:1px solid #fff;border-radius:3px;padding:5px 9px;font-size:10px;display:flex;align-items:center;gap:6px}.compare-toggle:before{content:'+';font-size:15px;line-height:1}.compare-toggle[aria-pressed=true]{background:#2b513d;color:#fff;border-color:#2b513d}.compare-toggle[aria-pressed=true]:before{content:'✓';font-size:12px}.card-landscape{position:absolute;bottom:10px;right:14px;color:#f6f4e5;font-size:8px;letter-spacing:1.6px}.card-body{padding:24px 23px 18px;display:flex;flex-direction:column;flex:1}.card-location{font-size:9px;letter-spacing:1.5px;color:#71815b;text-transform:uppercase;margin-bottom:9px}.course-card h3{font-family:Georgia,serif;font-size:22px;letter-spacing:-.5px}.chinese{font-size:11px;color:#7b8577;letter-spacing:.4px;margin-top:7px}.card-description{font-size:12px;line-height:1.8;margin:16px 0 20px;min-height:64px}.card-stats{display:flex;gap:15px;font-size:11px;border-top:1px solid #e5e9df;padding-top:15px;margin-top:auto;color:#65745c}.card-stats span+span{border-left:1px solid #dfe4d6;padding-left:15px}.card-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:19px}.card-bottom strong{font-size:12px;font-weight:500}.card-bottom small{display:block;font-size:9px;margin-top:3px}.profile-button{border:0;background:#edf1e5;padding:9px 11px;border-radius:3px;font-size:10px;white-space:nowrap}.profile-button:hover{background:#dfe7ce}.source-note{font-size:10px;line-height:1.7;margin-top:22px;max-width:900px}.empty-results{text-align:center;padding:65px 20px;background:#eef1e5;border-radius:5px}.empty-results p{margin:12px 0 25px}.visitor-guide{margin-top:40px;border-top:1px solid #cdd6c3;border-bottom:1px solid #cdd6c3}.visitor-guide summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;list-style:none;padding:21px 0;font-family:Georgia,serif;font-size:22px}.visitor-guide summary::-webkit-details-marker{display:none}.visitor-guide summary small{display:inline-block;font:11px Arial,sans-serif;margin-left:25px}.plus{font-family:Arial,sans-serif;font-size:25px;font-weight:300}.visitor-guide[open] .plus{transform:rotate(45deg)}.visitor-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:10px 0 30px}.visitor-columns h3{font-size:13px;margin-bottom:10px}.visitor-columns p{font-size:12px;line-height:1.8}.planner{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;background:#edf0e3;max-width:none;padding-top:76px;padding-bottom:80px;border-top:1px solid #e3e7d8}.planner-intro{max-width:420px}.planner-intro h2{font-size:clamp(38px,4vw,60px)}.planner-intro>p:not(.eyebrow){margin:25px 0 32px;max-width:340px;font-size:13px;line-height:1.9}.steps{display:flex;flex-direction:column;gap:19px;font-size:12px}.steps b{font-family:Georgia,serif;font-size:17px;font-weight:400;margin-right:17px;color:#7c8a65}.private-note{display:flex;align-items:flex-start;gap:10px;margin-top:40px;padding-top:25px;border-top:1px solid #cdd5c0;font-size:11px}.private-note svg{margin-top:3px;flex-shrink:0}.private-note small{font-size:10px}.planner-panel{background:#fbfcf6;border:1px solid #d5dec9;border-radius:5px;padding:29px}.form-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:24px}.form-heading h3{font-family:Georgia,serif;font-size:24px;letter-spacing:-.5px}.pill{display:inline-block;background:#e8eddc;font-size:8px;letter-spacing:1.2px;white-space:nowrap;border-radius:3px;padding:5px 8px;color:#516a43}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid>label{display:flex;flex-direction:column;gap:7px;font-size:11px}.form-grid input,.form-grid select,.form-grid textarea{font-size:12px;width:100%;background:#fffffc}.form-grid .check-label{flex-direction:row}.form-grid .check-label input{width:16px;flex-shrink:0}.wide{grid-column:1/-1}.optional{color:#76826b;font-weight:400}.form-grid small{font-size:10px;line-height:1.6}.form-hint{font-size:10px;margin:20px 0 15px}.error{font-size:12px;color:#9a4b29;margin:14px 0}.saved-plans{margin-top:22px}.saved-plans:empty{display:none}.saved-plans h4{font-size:12px;font-weight:500;margin:25px 0 10px}.saved-row{border-top:1px solid #e0e6d6;padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:15px}.saved-row strong{font-size:12px;font-weight:500}.saved-row small{display:block;font-size:10px}.saved-actions{display:flex;gap:13px}.saved-actions button{font-size:10px}footer{display:flex;justify-content:space-between;gap:30px;padding:36px 6% 50px;background:#f9f9f2}footer p{font-size:10px;line-height:1.8;margin-top:7px}footer>p{text-align:right}.footer-brand{text-decoration:none;font-family:Georgia,serif;font-size:21px;letter-spacing:-.7px}.footer-brand span{font:10px Arial,sans-serif;letter-spacing:2px;margin-left:15px;color:#798370}.compare-dock{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:8;width:min(860px,calc(100% - 32px));display:flex;gap:24px;align-items:center;background:#264b39;border:1px solid #5e765e;box-shadow:0 8px 40px #18302538;border-radius:6px;color:#f4f4de;padding:15px 21px}.compare-dock>div{flex:1;min-width:0}.compare-dock strong{font-size:12px;font-weight:500;display:block}.compare-dock span:not(.button span){display:block;font-size:10px;color:#c0cdb5;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.compare-dock .button{font-size:11px;padding:9px 14px;min-height:40px;gap:18px}.compare-dock .button span{color:#264b39}.compare-dock .text-button{color:#dce5cc}dialog{border:1px solid #d4dccb;border-radius:8px;background:#fcfcf5;color:#2b4032;padding:0;max-height:calc(100dvh - 48px);width:min(760px,calc(100% - 32px));max-width:none;overflow:auto;box-shadow:0 20px 100px #152c3155}dialog::backdrop{background:#172e26a8;backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:17px;top:17px;z-index:2;border:1px solid #d3dcc6;background:#fffff3eb;border-radius:50%;width:33px;height:33px;font-size:24px;line-height:1;display:grid;place-items:center}.dialog-close:hover{background:#e3e8d5}.dialog-heading{padding:35px 34px 28px;position:relative}.dialog-heading h2{font-size:33px;margin-right:35px}.dialog-heading .eyebrow{margin-bottom:12px}.wide-dialog{width:min(1100px,calc(100% - 28px))}.profile-visual{aspect-ratio:16/9;overflow:hidden;position:relative}.profile-visual>.course-photo{position:absolute;inset:0}.photo-credit{position:absolute;right:12px;bottom:12px;max-width:calc(100% - 24px);padding:4px 8px;background:#183025d9;color:#fff;font-size:12px;line-height:1.5;border-radius:2px}.art-caption{background:#183025d9;padding:5px 8px;font-size:12px;letter-spacing:0}.profile-main{padding:28px 34px 34px}.profile-main h2{font-size:34px;padding-right:15px}.profile-main .chinese{margin-top:10px}.profile-main .lead{font-size:14px;line-height:1.8;margin:19px 0}.profile-facts{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid #dbe1d0;padding:17px 0;margin:22px 0;gap:15px}.profile-facts small{display:block;font-size:9px;letter-spacing:1px;text-transform:uppercase}.profile-facts b{font-size:12px;font-weight:500}.profile-block{margin:24px 0}.profile-block h3{font-size:14px;margin-bottom:10px}.profile-block p{font-size:12px;line-height:1.8}.profile-block .cn-address{font-size:11px;margin:7px 0}.links{display:flex;gap:16px;flex-wrap:wrap;margin-top:8px;font-size:11px}.links a{color:#486838;text-underline-offset:3px}.callout{padding:15px 18px;border-left:3px solid #899958;background:#eff2e6;margin:20px 0;font-size:12px;line-height:1.8}.callout.amber{background:#f4eddc;border-color:#bca26b;color:#71613f}.callout strong{font-weight:500;display:block;color:#3e5135}.callout a{font-size:11px}.options-heading{display:flex;align-items:center;justify-content:space-between;margin:28px 0 15px}.options-heading h3{font-family:Georgia,serif;font-size:25px}.option-card{padding:18px;border:1px solid #dce2d2;border-radius:4px;margin-bottom:12px;background:#fff}.option-top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.option-top h4{margin:0;font-size:14px;font-weight:500}.option-top small{display:block;font-size:10px;margin-top:4px}.option-top strong{font-size:12px;font-weight:500;white-space:nowrap}.option-card p{font-size:11px;line-height:1.8;margin-top:9px}.option-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:15px}.option-actions a{font-size:10px;text-underline-offset:3px}.option-actions .button{min-height:35px;padding:8px 12px;font-size:10px;gap:10px}.source-list{font-size:10px;margin-top:25px;border-top:1px solid #d9e0cf;padding-top:17px}.source-list p{font-size:10px}.source-list a{display:block;margin-top:6px;text-underline-offset:3px;color:#526744}.comparison-scroll{overflow:auto;padding:0 28px 24px}.comparison-table{border-collapse:collapse;width:100%;min-width:640px;text-align:left;table-layout:fixed;font-size:12px}.comparison-table th,.comparison-table td{border-bottom:1px solid #dce2d2;padding:16px;vertical-align:top;overflow-wrap:anywhere}.comparison-table th:first-child{width:145px}.comparison-table th{font-weight:500;background:#eff2e6;font-size:11px}.comparison-table thead th{font-family:Georgia,serif;font-size:21px;font-weight:400;background:#e7eddb;line-height:1.3}.comparison-table thead th:first-child{font-family:Arial,sans-serif;font-size:11px}.comparison-table .button{font-size:10px;padding:9px 10px;gap:8px;min-height:35px}.comparison-table small{display:block;font:10px/1.7 Arial,sans-serif;margin-top:5px}.comparison-foot{font-size:10px;padding:0 43px 28px}.review-main{padding:36px}.review-main h2{font-size:36px;padding-right:30px}.review-main .eyebrow{margin-bottom:14px}.review-main .lead{margin:17px 0;font-size:13px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;margin:25px 0}.review-grid div{padding:13px 0;border-bottom:1px solid #e1e5d9}.review-grid dt{font-size:10px;color:#78826d;margin-bottom:4px}.review-grid dd{margin:0;font-size:13px;overflow-wrap:anywhere;white-space:pre-wrap}.review-main h3{font-size:14px;margin:22px 0 12px}.review-main ul{font-size:12px;line-height:1.8;color:#65725a;padding-left:18px}.review-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.review-actions .button{font-size:12px}.brief-preview{width:100%;font:11px/1.8 Arial,sans-serif;height:250px;resize:vertical;background:#f6f8ef;margin-top:10px}.saved-indicator{display:inline-flex;align-items:center;gap:8px;font-size:10px;color:#486b38;background:#e8efdb;padding:5px 9px;border-radius:3px;margin-bottom:18px}.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:100;background:#203d2d;color:#fff;padding:13px 22px;border-radius:5px;font-size:12px;max-width:calc(100% - 32px);box-shadow:0 4px 25px #15301b33}.noscript{padding:30px;background:#fff3de;position:fixed;bottom:0;left:0;width:100%;z-index:100}body:has(.compare-dock:not([hidden])) footer{padding-bottom:125px}
@media(min-width:1500px){.hero{max-height:660px}.hero-copy{padding-left:12%}.hero-art{min-height:630px}.course-grid{gap:30px}.card-art{height:220px}.card-description{min-height:50px}}
@media(max-width:1050px){.site-header{padding:0 4%;height:85px}.site-header nav{gap:20px}.private{padding-left:18px}.hero{margin:16px 16px 0;min-height:490px}.hero-copy{padding:36px 8% 25px}.hero-art{min-height:490px}.hero h1{font-size:60px}.hero-description{font-size:13px}.hero-bottom{font-size:8px;gap:9px}.section{padding:58px 5%}.section-heading h2{font-size:35px}.section-heading p:not(.eyebrow){max-width:220px}.course-grid{gap:17px}.card-body{padding:19px 17px 17px}.course-card h3{font-size:21px}.card-art{height:165px}.card-description{min-height:85px}.card-bottom{gap:8px;align-items:flex-start;flex-direction:column}.card-bottom .profile-button{align-self:stretch;text-align:left;display:flex;justify-content:space-between}.planner{gap:6%}.planner-panel{padding:23px}.planner-intro h2{font-size:47px}.destinations button{padding:8px 11px}.search{width:260px}}
@media(max-width:760px){.site-header{height:80px;padding:0 22px}.brand{font-size:16px;gap:8px}.brand small{font-size:7px;letter-spacing:1.5px}.brand>svg{width:28px}.site-header nav{gap:15px}.site-header nav a{font-size:11px}.site-header nav a:first-child{display:none}.private{font-size:0;padding-left:12px}.private svg{width:15px}.hero{grid-template-columns:1fr;margin:12px 12px 0}.hero-copy{padding:34px 25px 26px}.hero h1{font-size:61px}.hero-description{max-width:370px;font-size:13px;margin:19px 0 23px}.hero .eyebrow{font-size:8px;margin-bottom:22px}.hero-bottom{padding-top:30px;font-size:9px;gap:11px}.hero-art{min-height:300px;max-height:300px}.hero-art>img{object-position:center 59%}.art-note{top:17px;left:20px;padding:7px 12px}.art-note span{font-size:8px}.art-note small{font-size:10px}.art-caption{font-size:7px;right:18px;bottom:12px}.trust-strip{padding:19px 24px;font-size:10px;justify-content:center}.trust-strip span:nth-child(2){display:none}.trust-strip span:last-child{display:none}.section{padding:44px 22px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:36px;max-width:400px}.section-heading p:not(.eyebrow){margin-top:16px;max-width:100%;font-size:12px}.section-heading p:not(.eyebrow) br{display:none}.eyebrow{font-size:8px;letter-spacing:1.8px}.filter-top{align-items:stretch;flex-direction:column;gap:16px}.destinations{justify-content:space-between;gap:3px}.destinations button{font-size:11px;padding:8px 9px}.destinations button span{font-size:9px;margin-left:4px}.search{width:100%}.filter-bottom{align-items:flex-start}.filter-bottom>div{gap:13px;align-items:flex-start;flex-direction:column}.filter-bottom .text-button{font-size:10px}.select-inline select{font-size:10px}.check-label{font-size:11px}.results-line{margin-top:14px;font-size:9px}.course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.card-art{height:140px}.card-number{left:9px;top:9px;font-size:8px}.compare-toggle{right:8px;top:8px;font-size:8px;padding:4px 6px}.card-landscape{font-size:6px;right:9px}.card-body{padding:17px 15px}.course-card h3{font-size:20px}.card-location{font-size:8px;letter-spacing:1px}.chinese{font-size:9px}.card-description{font-size:11px;min-height:105px;margin:13px 0 15px}.card-stats{font-size:10px;gap:10px}.card-stats span+span{padding-left:10px}.card-bottom{margin-top:15px}.card-bottom strong{font-size:11px}.profile-button{font-size:9px;padding:8px}.source-note{font-size:9px}.visitor-guide{margin-top:27px}.visitor-guide summary{font-size:22px}.visitor-guide summary small{display:block;margin:6px 0 0;font-size:10px}.visitor-columns{grid-template-columns:1fr;gap:20px}.visitor-columns p{font-size:12px}.planner{grid-template-columns:1fr;gap:32px;padding:40px 22px}.planner-intro{max-width:100%}.planner-intro h2{font-size:43px}.planner-intro h2 br{display:none}.planner-intro>p:not(.eyebrow){max-width:100%;margin:20px 0}.steps{flex-direction:row;flex-wrap:wrap;gap:14px;font-size:10px}.steps b{font-size:14px;margin-right:6px}.private-note{margin-top:22px;padding-top:19px}.planner-panel{padding:22px 19px}.form-heading h3{font-size:22px}.form-grid{gap:15px 12px}.form-grid input,.form-grid select,.form-grid textarea{font-size:16px;padding:10px;width:100%}.form-grid>label{font-size:10px}.form-grid small{font-size:10px}.form-heading .pill{font-size:7px}footer{padding:30px 22px 40px;flex-direction:column;gap:15px}footer>p{text-align:left;margin-top:0}.compare-dock{gap:11px;padding:12px 14px;bottom:12px;width:calc(100% - 24px)}.compare-dock strong{font-size:10px}.compare-dock>div>span{font-size:8px;max-width:130px}.compare-dock .text-button{font-size:10px}.compare-dock .button{font-size:10px;gap:6px;padding:8px;min-height:37px}.compare-dock .button span{display:none}.dialog-heading{padding:30px 22px 24px}.dialog-heading h2{font-size:30px}.profile-visual{aspect-ratio:16/9}.profile-main{padding:25px 22px}.profile-main h2{font-size:30px}.profile-main .lead{font-size:12px}.profile-facts{grid-template-columns:1fr 1fr;gap:15px}.profile-block p{font-size:12px}.option-top{gap:10px}.option-top h4{font-size:13px}.option-top strong{font-size:10px;white-space:normal;text-align:right;max-width:95px}.option-actions{gap:9px}.option-actions .button{font-size:9px;padding:8px}.option-actions a{font-size:9px}.option-card{padding:15px}.review-main{padding:30px 22px}.review-main h2{font-size:32px}.review-grid{gap:0 17px}.review-grid dd{font-size:12px}.review-grid dt{font-size:9px}.review-main .lead{font-size:12px}.review-actions{gap:9px}.review-actions .button{padding:10px 12px;font-size:11px}.comparison-scroll{padding:0 16px 20px}.comparison-foot{padding:0 25px 23px}}
@media(max-width:450px){.course-grid{grid-template-columns:1fr}.card-art{height:185px}.course-card h3{font-size:25px}.card-description{min-height:0;font-size:12px}.card-body{padding:22px}.card-bottom{flex-direction:row;align-items:center}.card-bottom .profile-button{align-self:auto;gap:15px;padding:10px}.card-location{font-size:9px}.chinese{font-size:11px}.card-stats{font-size:11px}.card-number{left:14px;top:13px;font-size:10px}.compare-toggle{right:13px;top:12px;font-size:10px;padding:4px 9px}.card-landscape{font-size:8px;right:13px}.hero h1{font-size:56px}.hero-art{min-height:270px}.brand b{display:block}.brand small{font-size:6px;margin-top:4px}.brand{line-height:1.1;font-size:15px}.brand>svg{height:35px}.hero-bottom{font-size:8px;gap:9px}.card-bottom strong{font-size:12px}.destinations button{padding:8px}.destinations button span{margin-left:3px}.planner-intro h2{font-size:39px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Intermediary booking panel */
.course-overview{margin:26px 0 30px;background:#fff;border:1px solid #dbe2d9;border-radius:7px;overflow:hidden}.course-overview h3{margin:0;padding:17px 22px;color:#237148;font-size:20px;font-family:Georgia,serif;font-weight:600;border-bottom:1px solid #dbe2d9}.course-overview dl{margin:0;padding:0 22px}.course-overview dl>div{display:grid;grid-template-columns:minmax(185px,40%) 1fr;gap:22px;align-items:start;padding:16px 0;border-bottom:1px solid #e1e6de;font-size:14px;line-height:1.55}.course-overview dt{font-weight:700;color:#414a46}.course-overview dd{margin:0;text-align:right;overflow-wrap:anywhere;color:#414a46}.course-overview>p{margin:0;padding:14px 22px 18px;font-size:13px;line-height:1.55;color:#607166;background:#f6f8f3}@media(max-width:520px){.course-overview dl{padding:0 16px}.course-overview h3{padding:15px 16px}.course-overview dl>div{grid-template-columns:minmax(115px,39%) 1fr;gap:12px;padding:14px 0;font-size:13px}.course-overview>p{padding:13px 16px;font-size:12px}}
.booking-contact{background:var(--cream,#f5f3e9);border:1px solid #d8dfd3;border-radius:6px;padding:18px 20px}.booking-contact .eyebrow{display:block;margin:0 0 7px;font-size:10px}.booking-contact strong{display:block;color:#254c3a;font-size:17px}.booking-contact p{font-size:13px;line-height:1.6;margin:8px 0 0;color:#586256}.profile-booking{border-top:1px solid #d8dfd3;margin-top:28px;padding-top:25px}.profile-booking h3{margin:0 0 10px}.profile-booking p{line-height:1.65}.booking-cta{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px 0 14px}.profile-booking small{display:block;line-height:1.6;color:#586256}.source-list li{margin:5px 0;line-height:1.6}.source-list ul{padding-left:18px}.card-stats{flex-wrap:wrap}@media(max-width:420px){.booking-cta{align-items:stretch;flex-direction:column}.booking-cta .button{justify-content:center}}

.profile-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px 10px 0}.profile-gallery figure{margin:0;position:relative;overflow:hidden;aspect-ratio:3/2;background:#e5e8dd}.profile-gallery img{width:100%;height:100%;object-fit:cover}.profile-gallery figcaption{position:absolute;right:8px;bottom:8px;background:#183025df;color:white;padding:3px 6px;font-size:12px}@media(max-width:580px){.profile-gallery{gap:6px;padding:6px 6px 0}.profile-gallery figcaption{font-size:11px}}
.profile-gallery.single{grid-template-columns:1fr}.profile-gallery.single figure{aspect-ratio:16/9}

.faq-section{padding-top:80px;padding-bottom:90px;background:#edf1e9}.faq-section .section-heading{margin-bottom:28px}.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.faq-grid article{padding:24px 26px;background:#fff;border:1px solid #dce3d7;border-radius:5px;scroll-margin-top:110px}.faq-grid h3{font-size:19px;line-height:1.35;color:#254c3a;margin-bottom:10px}.faq-grid p{font-size:15px;line-height:1.7;color:#44564b}.faq-grid a{color:#25573c;text-decoration:underline;text-underline-offset:3px}@media(max-width:700px){.faq-section{padding-top:55px;padding-bottom:65px}.faq-grid{grid-template-columns:1fr}.faq-grid article{padding:21px}}

.weather-section{scroll-margin-top:100px;padding-top:80px;padding-bottom:82px;border-top:1px solid #dce3d7}.weather-intro{max-width:850px}.weather-intro h2{max-width:780px}.weather-intro>p:last-child{font-size:17px;line-height:1.8;color:#43554a;margin-top:22px}.weather-intro strong{color:#254c3a}.weather-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px}.weather-grid article{background:#fff;border:1px solid #dce3d7;border-radius:5px;padding:25px}.weather-grid .weather-period{font-size:14px;font-weight:600;color:#4e7151;letter-spacing:.02em;margin-bottom:15px}.weather-grid h3,.weather-region h3{font-family:Georgia,serif;font-size:24px;color:#254c3a;margin-bottom:14px}.weather-grid article>p:last-child,.weather-region p{font-size:16px;line-height:1.7;color:#43554a}.weather-region{border-top:1px solid #dce3d7;margin-top:34px;padding-top:29px;max-width:940px}.weather-region a{color:#25573c;text-underline-offset:3px}.weather-region>a{display:inline-block;margin-top:18px;font-size:15px}@media(max-width:900px){.weather-grid{grid-template-columns:1fr 1fr}}@media(max-width:650px){.weather-section{padding-top:56px;padding-bottom:62px}.weather-grid{grid-template-columns:1fr;gap:12px}.weather-grid article{padding:22px}.weather-intro>p:last-child{font-size:16px}}

.about-main{max-width:1600px;margin:auto}.about-hero{display:grid;grid-template-columns:1fr 1fr;background:#254c3a;color:#f4f1dd;margin:22px 24px 0;min-height:430px}.about-hero-copy{padding:64px clamp(26px,7vw,100px);align-self:center}.about-hero h1{font-size:clamp(38px,4vw,62px);max-width:650px}.about-hero-copy>p:last-child{font-size:18px;line-height:1.7;color:#d7e0d3;margin-top:28px;max-width:550px}.about-hero-image{position:relative;margin:0;min-height:400px}.about-hero-image img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.about-hero-image figcaption{position:absolute;bottom:15px;right:20px;color:#fff;background:#183025dd;padding:6px 9px;font-size:12px}.about-content{max-width:980px;margin:0 auto;padding:72px 30px 100px}.about-content section{padding:0 0 48px;margin-bottom:46px;border-bottom:1px solid #dce3d7}.about-content section:last-child{border:0;margin-bottom:0;padding-bottom:0}.about-content .eyebrow{margin-bottom:14px}.about-content h2{font-size:clamp(32px,3.4vw,44px);margin-bottom:23px}.about-content p:not(.eyebrow){font-size:17px;line-height:1.8;color:#43554a;max-width:760px}.about-content p+p{margin-top:17px}.about-content a:not(.button){color:#254c3a;text-decoration:underline;text-underline-offset:4px}.about-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:30px}.about-text-link{font-size:16px}.site-header nav [aria-current=page]{text-decoration:underline;text-underline-offset:6px}@media(max-width:760px){.about-hero{grid-template-columns:1fr;margin:12px 12px 0}.about-hero-copy{padding:42px 28px}.about-hero-image{min-height:275px}.about-content{padding:55px 25px 70px}.about-content section{padding-bottom:35px;margin-bottom:35px}}@media(max-width:450px){.site-header{height:auto;min-height:91px;flex-wrap:wrap;gap:8px;padding:12px 18px}.site-header nav{width:100%;justify-content:space-between;gap:9px}.site-header nav a{font-size:12px}.about-hero-copy>p:last-child{font-size:17px}.about-hero-image{min-height:230px}.about-content p:not(.eyebrow){font-size:16px}}
.site-header nav a:first-child{display:inline}
.contact-main{max-width:1160px;margin:auto;padding:66px 30px 90px}.contact-intro{max-width:750px;margin-bottom:48px}.contact-intro .eyebrow{margin-bottom:15px}.contact-intro h1{font-size:clamp(42px,5vw,68px)}.contact-intro>p:not(.eyebrow){font-size:18px;line-height:1.75;margin-top:20px}.contact-plan-link{display:inline-block;margin-top:23px;color:#254c3a;text-underline-offset:4px;font-size:16px}.contact-section{border-top:1px solid #dce3d7;padding-top:28px;margin-top:40px}.contact-section h2{font-size:clamp(29px,3vw,39px);margin-bottom:26px}.contact-methods{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-method,.contact-qr{margin:0;background:#fff;border:1px solid #dce3d7;border-radius:5px;padding:23px}.contact-method h3{font-size:16px;font-family:Arial,Helvetica,sans-serif;font-weight:600;color:#254c3a;margin-bottom:9px}.contact-method a,.contact-handle{font-size:19px;line-height:1.4;color:#253b30;overflow-wrap:anywhere}.contact-method a{text-underline-offset:4px}.contact-method p:not(.contact-handle){font-size:14px;line-height:1.6;margin-top:9px}.contact-qr-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.contact-qr{display:flex;flex-direction:column;align-items:center;gap:18px}.contact-qr-frame{width:min(100%,320px);aspect-ratio:1;background:#fff;overflow:hidden}.contact-qr-frame img{width:100%;height:100%;object-fit:cover;object-position:center}.contact-qr figcaption{align-self:stretch;display:flex;flex-direction:column;gap:4px}.contact-qr figcaption strong{font-size:18px;color:#254c3a}.contact-qr figcaption span{font-size:14px;color:#526156}.contact-qr figcaption a{font-size:14px;margin-top:8px;color:#254c3a;text-underline-offset:4px}.contact-note{font-size:15px;line-height:1.7;background:#edf1e9;border-left:3px solid #456c4e;padding:17px 20px;margin-top:34px}.booking-contact a{color:#254c3a;text-underline-offset:3px}@media(max-width:650px){.contact-main{padding:46px 20px 68px}.contact-methods,.contact-qr-grid{grid-template-columns:1fr}.contact-intro>p:not(.eyebrow){font-size:16px}.contact-method{padding:20px}.contact-method a,.contact-handle{font-size:17px}}@media(max-width:450px){.site-header nav{justify-content:flex-start;flex-wrap:wrap;column-gap:17px;row-gap:7px}}
.review-contact{font-size:16px;line-height:1.65;margin-top:16px}.review-contact a{color:#254c3a;text-underline-offset:3px}
.enquiry-form{border-top:1px solid #dce3d7;margin-top:28px;padding-top:28px}.enquiry-form h3{font-size:23px;color:#254c3a}.enquiry-form>p:not(.enquiry-status){font-size:15px;line-height:1.7;margin:10px 0 20px}.enquiry-form a{color:#254c3a;text-underline-offset:3px}.enquiry-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:18px}.enquiry-fields label{display:flex;flex-direction:column;gap:7px;font-size:15px;font-weight:600}.enquiry-fields label.wide{grid-column:1/-1}.enquiry-fields input,.enquiry-fields textarea{width:100%;font-size:16px}.enquiry-fields textarea{min-height:90px;resize:vertical}.enquiry-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:400;line-height:1.5;max-width:560px;margin:0 0 19px}.enquiry-consent input{width:18px;height:18px;flex-shrink:0;margin-top:2px}.enquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.enquiry-status{min-height:24px;font-size:15px;line-height:1.6;margin-top:13px}.enquiry-sent .enquiry-status{color:#245b38}@media(max-width:580px){.enquiry-fields{grid-template-columns:1fr}}
.enquiry-form{border-top:1px solid #dce3d7;margin-top:28px;padding-top:28px}.enquiry-form h3{font-size:23px;color:#254c3a}.enquiry-form>p:not(.enquiry-status){font-size:15px;line-height:1.7;margin:10px 0 20px}.enquiry-form a{color:#254c3a;text-underline-offset:3px}.enquiry-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-bottom:18px}.enquiry-fields label{display:flex;flex-direction:column;gap:7px;font-size:15px;font-weight:600}.enquiry-fields label.wide{grid-column:1/-1}.enquiry-fields input,.enquiry-fields textarea{width:100%;font-size:16px}.enquiry-fields textarea{min-height:90px;resize:vertical}.enquiry-consent{display:flex;align-items:flex-start;gap:10px;font-size:14px;font-weight:400;line-height:1.5;max-width:560px;margin:0 0 19px}.enquiry-consent input{width:18px;height:18px;flex-shrink:0;margin-top:2px}.enquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.enquiry-status{min-height:24px;font-size:15px;line-height:1.6;margin-top:13px}.enquiry-sent .enquiry-status{color:#245b38}@media(max-width:580px){.enquiry-fields{grid-template-columns:1fr}}
.course-directory{max-width:620px}.course-directory strong{display:block;font-size:14px;margin-bottom:10px}.course-directory div{display:flex;flex-wrap:wrap;gap:8px 16px}.course-directory a{font-size:13px;color:#315940;text-underline-offset:3px}

/* Compact credits keep course photos unobstructed. */
.profile-visual .photo-credit,.profile-gallery figcaption{font-size:9px;line-height:1.2;padding:2px 4px;letter-spacing:0}
@media(max-width:580px){.profile-gallery figcaption{font-size:9px}}

.destination-hub{padding-bottom:36px}.destination-hub-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px}.destination-hub-grid>a{display:block;padding:24px;background:#fff;border:1px solid #dce3d7;border-radius:5px;text-decoration:none}.destination-hub-grid>a:hover{border-color:#527557}.destination-hub-grid strong{display:block;color:#254c3a;font-family:Georgia,serif;font-size:23px;line-height:1.25;font-weight:400;margin-bottom:12px}.destination-hub-grid span{font-size:15px;line-height:1.6;color:#536653}.site-header nav{gap:clamp(12px,2vw,28px)}@media(max-width:1050px){.site-header{height:auto;min-height:100px;flex-wrap:wrap;gap:15px;padding-top:18px;padding-bottom:18px}.site-header nav{flex-wrap:wrap;gap:12px 20px}}@media(max-width:900px){.destination-hub-grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.destination-hub-grid{grid-template-columns:1fr}.destination-hub{padding-top:45px}.destination-hub-grid>a{padding:21px}}

.card-photo-credit{position:absolute;left:12px;bottom:10px;z-index:1;padding:3px 6px;border-radius:2px;background:#183025d9;color:#fff;font-size:9px;line-height:1.3}

.scorecard-section{margin-top:24px;border-top:1px solid #dbe1d0;padding-top:20px}.scorecard-section h4{font-family:Georgia,serif;font-size:20px;font-weight:400;margin:0 0 8px}.scorecard-section>p{font-size:13px;line-height:1.6;margin:0 0 12px}.scorecard-table-scroll{overflow-x:auto;max-width:100%}.scorecard-table{border-collapse:collapse;width:100%;min-width:520px;font-size:13px}.scorecard-table th,.scorecard-table td{padding:8px 10px;border-bottom:1px solid #dce2d2;text-align:right;white-space:nowrap}.scorecard-table th:first-child{text-align:left}.scorecard-table thead{background:#eff2e6}.scorecard-table caption{text-align:left;font-weight:500;padding:0 0 8px}.scorecard-table tfoot{font-weight:600;background:#edf0e3}

.scorecard-disclosure{margin:12px 0 18px}.scorecard-disclosure summary{cursor:pointer;font-size:14px;font-weight:600;padding:12px 14px;border:1px solid #dbe1d0;border-radius:5px;background:#edf0e3;color:#253b30}.scorecard-disclosure[open] summary{margin-bottom:12px}.scorecard-disclosure>p{font-size:13px;line-height:1.6;margin:0 0 12px}

.scorecard-subtitle{font-size:15px;font-weight:600;margin:0 0 12px;color:#253b30}

.scorecard-table-wide{min-width:600px}.scorecard-table .subtotal{font-weight:600;background:#edf0e3}

.scorecard-ratings{margin-top:18px}

.course-card h3 a{text-decoration:none}.course-card h3 a:hover{text-decoration:underline;text-underline-offset:3px}
.card-actions{display:flex;flex-direction:column;align-items:flex-end;gap:7px}.card-actions .profile-button{display:inline-flex;align-items:center;gap:14px;background:#edf1e5;padding:9px 11px;text-decoration:none;font-weight:600}.card-actions .profile-button:hover{background:#dfe7ce;color:#253b30}.full-course-link{display:inline-block;padding:3px 2px;font-size:10px;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}.full-course-link:hover{color:#315940}@media(max-width:450px){.card-actions .profile-button{padding:10px}.full-course-link{font-size:11px}}

/* The course archive is part of the main navigation. */
.site-header nav{flex-wrap:wrap;justify-content:flex-end}@media(max-width:1180px){.site-header{height:auto;min-height:100px;flex-wrap:wrap;gap:15px;padding-top:18px;padding-bottom:18px}.site-header nav{justify-content:flex-start;gap:12px 20px}}

.profile-full-link{display:inline-block;color:#315940;font-size:13px;font-weight:600;text-underline-offset:3px;margin:0 0 4px}

.profile-price{margin:20px 0;padding:18px 20px;background:#edf1e9;border:1px solid #d8dfd3;border-radius:6px}.profile-price>span{display:block;font-size:12px;color:#536653}.profile-price>strong{display:block;margin:5px 0 9px;font-size:clamp(22px,4vw,28px);line-height:1.25;color:#254c3a}.profile-price>p{margin:0;font-size:13px;line-height:1.65;color:#43554a}
.course-card[data-course="jialize-wetland"] .card-bottom strong{display:block;line-height:1.5}

.scorecard-table th[scope=row]{position:sticky;left:0;background:#f8f8f1;z-index:1}.scorecard-table .subtotal th[scope=row],.scorecard-table tfoot th[scope=row]{background:#edf0e3}

/* Desktop home: wider content and a more readable type scale. */
@media (min-width:1100px){
body:has(#explore) .section{max-width:1760px;padding-left:4%;padding-right:4%;padding-top:60px;padding-bottom:60px}
body:has(#explore) .destination-hub{padding-bottom:28px}
body:has(#explore) .section-heading h2{font-size:clamp(44px,3.2vw,56px)}
body:has(#explore) .section-heading p:not(.eyebrow){font-size:16px;max-width:380px}
body:has(#explore) .eyebrow{font-size:12px}
body:has(#explore) .destination-hub-grid{gap:20px}
body:has(#explore) .destination-hub-grid>a{padding:28px 26px}
body:has(#explore) .destination-hub-grid strong{font-size:27px}
body:has(#explore) .destination-hub-grid span{font-size:18px}
body:has(#explore) .destinations button{font-size:15px;min-height:44px;padding:10px 18px}
body:has(#explore) .destinations button span{font-size:12px}
body:has(#explore) .search{width:330px;flex-shrink:0}
body:has(#explore) .search input{font-size:15px;min-height:44px}
body:has(#explore) .filter-bottom label,body:has(#explore) .filter-bottom select,body:has(#explore) .text-button{font-size:14px}
body:has(#explore) .results-line{font-size:14px}
body:has(#explore) .card-art{height:250px}
body:has(#explore) .card-body{padding:28px}
body:has(#explore) .card-body h3{font-size:26px}
body:has(#explore) .card-description{font-size:16px;min-height:0}
body:has(#explore) .card-location{font-size:12px}
body:has(#explore) .card-stats{font-size:14px;flex-wrap:wrap}
body:has(#explore) .card-bottom strong{font-size:16px}
body:has(#explore) .card-bottom small,body:has(#explore) .full-course-link{font-size:12px}
body:has(#explore) .profile-button,body:has(#explore) .button{font-size:15px}
body:has(#explore) .planner-intro>p:not(.eyebrow){font-size:17px;max-width:480px}
body:has(#explore) .planner-intro{max-width:520px}
body:has(#explore) .filter-top{flex-wrap:wrap}
}
