:root{--ink:#242421;--muted:#777870;--paper:#f7f6f2;--accent:#d77716;--line:#deddd5;--dark:#232321}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:22px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Microsoft YaHei","PingFang SC",Arial,sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%;height:auto}button,input,textarea{font:inherit}button,a,input,textarea{outline-offset:5px}button{cursor:pointer}.wrap{width:min(1240px,calc(100% - 88px));margin-inline:auto}.sh-utility{background:#191918;color:#b9b9af;font-size:12px;line-height:36px}.sh-utility .wrap{display:flex;justify-content:space-between}.sh-header{background:var(--dark);color:#fff}.sh-header .wrap{display:flex;justify-content:space-between;align-items:center;height:92px}.sh-brand{display:flex;align-items:center}.sh-brand img{width:186px;height:auto;image-rendering:auto}.sh-header nav{display:flex;align-items:center;gap:36px;font-size:14px}.sh-header .phone{font-size:22px;font-weight:600}.hero{position:relative;min-height:550px;height:min(660px,calc(100svh - 128px));background:#242421;color:#fff;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:80% 57%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,22,21,.98) 0%,rgba(20,22,21,.92) 22%,rgba(20,22,21,.6) 46%,rgba(20,22,21,.08) 80%)}.hero-copy{position:relative;padding-top:52px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--accent);margin:0 0 20px}.hero .eyebrow{color:#f4b968}.hero h1{font-size:58px;letter-spacing:4px;line-height:1.2;margin:0 0 22px;font-weight:600}.hero h2{font-size:34px;line-height:1.55;margin:0 0 20px;font-weight:400}.hero-intro{color:#d4d4ca;font-size:16px;margin:0 0 27px}.button{background:var(--accent);color:white;display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:15px 25px;min-width:210px;border:0;transition:background .2s,transform .2s}.button:hover{background:#b45f0b;color:#fff;transform:translateY(-2px)}.hero-bottom{position:absolute;bottom:24px;left:0;right:0;display:flex;justify-content:space-between;border-top:1px solid #ffffff35;padding-top:15px;font-size:12px;color:#d3d3c9}.hero-copy>*{animation:rise .8s both}.hero-copy h2{animation-delay:.12s}.hero-copy .hero-intro{animation-delay:.2s}.hero-copy .button{animation-delay:.3s}@keyframes rise{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}h2{font-size:38px;line-height:1.5;font-weight:500;margin:0 0 24px}.about{display:grid;grid-template-columns:1fr 1.25fr;gap:100px;padding-block:94px}.about p:not(.eyebrow){color:var(--muted)}.about p.lead{font-size:22px;color:var(--ink);margin-top:0}.principles{display:flex;gap:28px;margin-top:28px;padding-top:20px;border-top:1px solid var(--line);font-size:14px}.course-section{background:#eae8e1;padding:74px 0}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:30px}.section-head h2{margin:0}.section-head>p{font-size:14px;color:var(--muted);margin:0}.course-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:center}.course-image img{display:block;width:100%;border-radius:0}.main-row dl,.main-row dd{margin:0}.main-row .row-img,.main-row .row-time,.main-row .clearfix{display:none}.main-row h3{font-size:24px;margin:0 0 23px;font-weight:500}.main-row .row-place,.main-row .row-fee,.main-row .row-system{display:block;margin:8px 0;color:#686961}.main-row .row-data span{color:var(--ink)}.jz-info{display:flex;gap:25px;margin-top:25px}.jz-info a{border-bottom:1px solid var(--accent);padding-bottom:4px;font-size:15px}.course-note{font-size:12px;color:var(--muted);margin-top:24px}.learning-topics{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:55px;border-top:1px solid #d1cfc4;padding-top:28px}.learning-topics b{color:#bd7b37;font-size:13px;font-weight:400}.learning-topics h3{font-size:19px;font-weight:500;margin:6px 0}.learning-topics p{font-size:13px;color:var(--muted);margin:0}.practice{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-block:90px}.practice-photo{overflow:hidden}.practice-photo img{display:block;width:100%;transition:transform .6s}.practice-photo:hover img{transform:scale(1.035)}.practice>div>p:not(.eyebrow){color:var(--muted);max-width:450px}.text-link{display:inline-block;padding:8px 0;border-bottom:1px solid var(--accent);font-size:14px}.news-section{background:#edece5;padding:72px 0}.news-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:60px}.home-news{list-style:none;padding:0;margin:0}.home-news li{border-bottom:1px solid #d9d8d0;padding:15px 0;line-height:1.6}.home-news li a{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:padding .2s}.home-news li a:hover{padding-left:5px}.home-news li:nth-of-type(n+9),.home-news>.fenye,.home-news li>span{display:none}.consult{padding-block:84px;display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.consult p:not(.eyebrow){color:var(--muted);font-size:14px}.consult-phone{font-size:29px}.sh-form{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-content:start}.sh-form label{font-size:13px}.sh-form input:not([type=hidden]){display:block;width:100%;border:1px solid var(--line);background:#fff;padding:13px 14px;margin-top:6px;border-radius:0}.sh-form button{grid-column:1/-1;background:var(--accent);color:white;border:0;padding:16px 20px;display:flex;justify-content:space-between}.sh-footer{background:var(--dark);color:#c5c5bc;padding:40px 0}.sh-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}.sh-footer strong{font-size:23px;color:white;font-weight:500}.sh-footer p{font-size:12px;margin:8px 0}.sh-footer .copyright{width:100%;border-top:1px solid #ffffff20;padding-top:18px}.sh-mobile{display:none}.position{font-size:13px;color:#828378;padding:28px 0}.position a{color:#64675e}.inner-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:36px;align-items:start;margin-bottom:65px}.content-left{min-width:0;background:#fff;border:1px solid #e5e3d9;padding:35px}.content-left>h2{font-size:29px;text-align:left}.content-info{color:#898b81;font-size:13px;margin:20px 0 30px;text-align:center}.content-info span{margin-right:15px}.content{overflow-wrap:anywhere}.content img{height:auto!important;max-width:100%!important}.content table{max-width:100%!important}.content p{max-width:100%}.sidebar{padding:27px;background:#eae8e0}.sidebar h3{font-size:19px;font-weight:500}.sidebar p:not(.eyebrow){font-size:13px;color:var(--muted)}.side-contact{margin-top:30px;border-top:1px solid #d2cfc4;padding-top:14px}.sidebar .button{min-width:0;width:100%;font-size:14px;padding:12px}.content-left-list1{list-style:none;padding:0;margin:0}.content-left-list1 li{border-bottom:1px solid var(--line);padding:18px 0;display:flex;gap:15px;justify-content:space-between}.content-left-list1 li a{min-width:0}.content-left-list1 li span{color:#898b81;white-space:nowrap;font-size:12px}.fenye{font-size:13px;text-align:center;padding-top:20px}.form-c{background:#f0eee8;margin-top:32px;padding:24px;border-top:2px solid var(--accent);font-family:Arial,"Microsoft YaHei",sans-serif}.form-c h3{font-size:19px;background:transparent!important;color:var(--ink)!important;margin:0 0 20px!important}.form-c input:not([type=hidden]),.form-c textarea{max-width:100%;border:1px solid #d5d3c9;padding:8px;background:white}.form-c input[type=submit]{background:var(--accent)!important;color:white;border:0;padding:10px 28px}.form-c table{width:100%!important}.form-c td{vertical-align:top}.form-c textarea{width:100%!important;min-height:120px}.sh-inner .content-left .content{font-size:16px;line-height:1.9}.sh-inner .content-left.content{overflow-x:auto}.sh-inner form{max-width:100%}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.about,.practice,.consult{gap:35px}.hero{height:600px}.hero h1{font-size:49px}.hero h2{font-size:30px}.course-layout{gap:30px}.inner-layout{grid-template-columns:minmax(0,1fr) 235px;gap:22px}.content-left{padding:24px}.news-layout{gap:30px}.sh-header nav{gap:20px}}
@media(max-width:700px){body{font-size:15px;padding-bottom:58px}.wrap{width:calc(100% - 36px)}.sh-utility{line-height:30px;font-size:11px}.sh-header .wrap{height:73px}.sh-brand img{width:150px}.sh-header nav>a:not(.phone){display:none}.sh-header .phone{font-size:16px}.hero{height:595px;min-height:0}.hero-photo{object-position:67% bottom}.hero-shade{background:linear-gradient(180deg,rgba(20,22,21,.95) 0%,rgba(20,22,21,.8) 36%,rgba(20,22,21,.12) 76%,rgba(20,22,21,.5) 100%)}.hero-copy{padding-top:28px}.hero .eyebrow{font-size:10px;letter-spacing:1.5px;margin-bottom:14px}.hero h1{font-size:39px;letter-spacing:2px;margin-bottom:15px}.hero h2{font-size:28px;line-height:1.45;margin-bottom:14px}.hero-intro{font-size:13px;margin-bottom:20px}.hero .button{padding:12px 19px;min-width:180px;font-size:14px}.hero-bottom{font-size:10px;bottom:15px;padding-top:10px}.about,.practice,.consult,.news-layout{grid-template-columns:1fr;gap:25px}.about,.practice,.consult{padding-block:48px}h2{font-size:29px}.about h2 br,.consult h2 br{display:none}.about h2{margin-bottom:0}.about p.lead{font-size:19px}.principles{gap:22px;font-size:13px}.course-section,.news-section{padding:45px 0}.section-head{display:block}.section-head>p{margin-top:15px}.course-layout{grid-template-columns:1fr;gap:23px}.course-data .eyebrow{margin-bottom:10px}.main-row h3{font-size:23px;margin-bottom:14px}.learning-topics{grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}.practice{gap:26px}.practice h2{font-size:28px}.home-news li{padding:14px 0;font-size:14px}.home-news li a{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.news-layout h2{margin-bottom:10px}.sh-form{gap:14px}.consult-phone{font-size:26px}.sh-footer{padding:28px 0}.sh-footer .wrap{display:block}.sh-footer .wrap>div{margin-bottom:20px}.sh-mobile{position:fixed;bottom:0;left:0;right:0;height:58px;z-index:30;display:grid;grid-template-columns:repeat(4,1fr);background:var(--dark);color:white;padding-bottom:env(safe-area-inset-bottom)}.sh-mobile a{font-size:13px;text-align:center;line-height:58px;border-right:1px solid #ffffff15}.sh-mobile a:last-child{background:var(--accent)}.inner-layout{grid-template-columns:minmax(0,1fr);gap:25px;margin-bottom:35px}.content-left{padding:20px 15px}.content-left>h2{font-size:23px}.content-info{font-size:12px}.content-info span{margin-right:8px}.position{font-size:12px;padding:22px 0}.sidebar{padding:22px}.content-left-list1 li{display:block;padding:14px 0}.content-left-list1 li span{display:block;margin-top:6px}.form-c{padding:15px}.form-c h3{font-size:16px}.form-c td{display:block;width:100%!important}.form-c textarea{height:100px!important}.form-c input{width:100%!important}.sh-inner .content-left .content{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Legacy rich-text tables scroll inside the article on narrow screens. */
.sh-inner .content-left>.content{position:relative;overflow-x:auto;max-width:100%}

.sh-form .sh-wide{grid-column:1/-1}.form-c .sh-form input:not([type=hidden]){width:100%;height:auto}.form-c .sh-form label{display:block}.form-c .sh-form{float:none;width:100%}

/* Sandhill brochure primary action */
.sh-home #courses .jz-info{align-items:center;flex-wrap:wrap;gap:22px}
.sh-home #courses .jz-info a:first-child{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:156px;box-sizing:border-box;padding:12px 26px;background:#c4a16c;color:#242421;border:1px solid #c4a16c;border-radius:2px;font-size:16px;font-weight:600;line-height:1.5;text-decoration:none;transition:background .2s,border-color .2s}
.sh-home #courses .jz-info a:first-child:hover{background:#b69058;border-color:#b69058}
.sh-home #courses .jz-info a:first-child:focus-visible{outline:2px solid #242421;outline-offset:4px}

/* Mobile breadcrumb: retain parent links, ellipsize only the current page. */
@media(max-width:760px){
 .position,.stock-inner .stock-position{display:flex!important;align-items:center;flex-wrap:nowrap!important;gap:6px;min-width:0;max-width:100%;height:auto!important;min-height:30px;overflow:hidden!important;white-space:nowrap!important;font-size:0!important;line-height:1.8!important;margin-top:16px!important;margin-bottom:16px!important;padding-top:6px!important;padding-bottom:6px!important;text-align:left!important;float:none!important}
 .position>*,.stock-position>*{display:block;flex:0 0 auto;font-size:12px!important;line-height:1.8!important;white-space:nowrap!important;padding-left:0!important;max-width:9em;overflow:hidden;text-overflow:ellipsis}
 .position>*:not(:first-child)::before,.stock-position>*:not(:first-child)::before{content:'›';display:inline-block;margin-right:6px;color:#8b8b86;font-size:13px}
 .position>:last-child,.stock-position>:last-child{flex:1 1 0;min-width:0;max-width:none;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
 .position>span>a,.position>span>span,.stock-position>span>span{font-size:12px!important;white-space:nowrap!important}
 .position a,.stock-position a{visibility:visible!important;color:inherit}
 .stock-position>a:nth-child(2){display:none}
}

/* Header hotline: decorative handset, with the original dial link preserved. */
.sh-header .phone{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.sh-header .phone::before{content:"";display:inline-block;flex:0 0 auto;width:.95em;height:.95em;background:#d2a563;-webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2016.92v3a2%202%200%200%201-2.18%202%2019.79%2019.79%200%200%201-8.63-3.07%2019.5%2019.5%200%200%201-6-6A19.79%2019.79%200%200%201%202.12%204.2%202%202%200%200%201%204.11%202h3a2%202%200%200%201%202%201.72c.12.96.35%201.9.69%202.79a2%202%200%200%201-.45%202.11L8.09%209.89a16%2016%200%200%200%206%206l1.27-1.27a2%202%200%200%201%202.11-.45c.9.34%201.83.57%202.79.69A2%202%200%200%201%2022%2016.92z%22/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2016.92v3a2%202%200%200%201-2.18%202%2019.79%2019.79%200%200%201-8.63-3.07%2019.5%2019.5%200%200%201-6-6A19.79%2019.79%200%200%201%202.12%204.2%202%202%200%200%201%204.11%202h3a2%202%200%200%201%202%201.72c.12.96.35%201.9.69%202.79a2%202%200%200%201-.45%202.11L8.09%209.89a16%2016%200%200%200%206%206l1.27-1.27a2%202%200%200%201%202.11-.45c.9.34%201.83.57%202.79.69A2%202%200%200%201%2022%2016.92z%22/%3E%3C/svg%3E") center/contain no-repeat}

/* Bright sand palette for the Sandhill homepage hero. */
.sh-home .hero{background:#f4e7d1;color:#493d2d}
.sh-home .hero-shade{background:linear-gradient(90deg,#f4e7d1 0%,rgba(247,237,219,.97) 25%,rgba(247,237,219,.83) 40%,rgba(247,237,219,.25) 61%,transparent 82%)}
.sh-home .hero .eyebrow{color:#926127}
.sh-home .hero h1{color:#785025;font-weight:700}
.sh-home .hero-intro{color:#64523b}
.sh-home .hero .button{background:#ad702f;color:#fff;font-weight:600}
.sh-home .hero .button:hover{background:#92591f}
.sh-home .hero-bottom{color:#5c482e;border-color:#97744b55;background:linear-gradient(90deg,#f4e7d1cc,#f4e7d1aa);padding:12px 14px}
@media(max-width:700px){
 .sh-home .hero-shade{background:linear-gradient(180deg,#f4e7d1 0%,rgba(247,237,219,.96) 30%,rgba(247,237,219,.74) 49%,rgba(247,237,219,.08) 76%,rgba(247,237,219,.45) 100%)}
 .sh-home .hero-bottom{padding:10px 8px}
}

/* Keep course navigation and introductory copy inside the section heading. */
.sh-home #courses .section-head{align-items:center;gap:24px}
.sh-home #courses .course-audience{margin:12px 0 0;font-size:14px;line-height:1.8;color:#776951}
.sh-home #courses .section-head>.text-link{flex-shrink:0;display:inline-flex;align-items:center;min-height:44px;padding:9px 18px;border:1px solid #b89863;color:#70522c;font-weight:600;white-space:nowrap;background:#faf5eb}
.sh-home #courses .section-head>.text-link:hover{background:#e6d4b7;color:#503d29}
@media(max-width:700px){.sh-home #courses .section-head>.text-link{margin-top:18px}.sh-home #courses .course-audience{font-size:13px}}
