:root {
--purple:#5d35b0;
--deep-purple:#35166f;
--yellow:#ffd23f;
--ink:#2e2445;}
* {
box-sizing:border-box;}
body {
background:#faf9fc;
color:var(--ink);
font-family:'Nunito',Arial,sans-serif;
font-size:15px;}
.public-teacher-rating{color:#8b6716;display:inline-block;font-size:12px;font-weight:800;margin-top:6px}.public-teacher-rating i{color:#d79b00}.public-teacher-rating small{color:#82768b;font-size:10px;font-weight:600}.public-teacher-rating.new{color:#348367}
.navbar {
background:#fff;
border:0;
border-radius:0;
box-shadow:0 2px 12px rgba(53,22,111,.08);
margin:0;
min-height:76px;}
.navbar-brand {
color:var(--deep-purple)!important;
font-size:27px;
font-weight:800;
height:76px;
letter-spacing:-.6px;
padding-top:22px;}
.brand-mark {
background:var(--yellow);
border-radius:8px;
color:var(--deep-purple);
display:inline-block;
font-size:17px;
height:30px;
line-height:30px;
margin-right:7px;
text-align:center;
transform:rotate(-6deg);
width:30px;}
.navbar-nav>li>a {
color:#584e69!important;
font-weight:700;
padding-bottom:28px;
padding-top:28px;}
.navbar-nav>li>a:hover {
color:var(--purple)!important;}
.nav-signin {
color:var(--purple)!important;}
.navbar-default .navbar-nav>li>a.nav-join {
background:var(--purple);
border-radius:23px;
color:#fff!important;
margin:16px 0 16px 12px;
padding:11px 21px!important;}
.navbar-default .navbar-nav>li>a.nav-join:hover {
background:var(--deep-purple)!important;
color:#fff!important;}
.search-banner {
background:linear-gradient(115deg,#f4edff,#fff8dc);
padding:31px 0;}
.search-banner h1 {
color:var(--deep-purple);
font-size:26px;
font-weight:800;
letter-spacing:-.5px;
margin:0 0 15px;}
.search-box {
background:#fff;
border-radius:9px;
box-shadow:0 7px 16px rgba(64,35,119,.10);
display:flex;
max-width:720px;
overflow:hidden;
padding:5px;}
.search-box .input-group {
flex:1;}
.search-box .input-group-addon {
background:#fff;
border:0;
color:#958aa3;
padding-left:12px;}
.search-box .form-control {
border:0;
box-shadow:none;
color:#4d405c;
font-size:14px;
height:43px;}
.btn-search {
background:var(--purple);
border:0;
border-radius:6px;
color:#fff;
font-size:14px;
font-weight:800;
padding:0 21px;}
.btn-search:hover {
background:var(--deep-purple);
color:#fff;}
.page-content {
padding:37px 0 70px;}
.filter-card {
background:#fff;
border:1px solid #ece8f2;
border-radius:11px;
padding:21px 20px;}
.filter-head {
border-bottom:1px solid #eee9f4;
color:var(--deep-purple);
font-size:17px;
font-weight:800;
margin-bottom:19px;
padding-bottom:14px;}
.filter-head a {
color:var(--purple);
float:right;
font-size:11px;
font-weight:800;
padding-top:5px;}
.filter-group {
border-bottom:1px solid #f0edf4;
margin-bottom:18px;
padding-bottom:15px;}
.filter-group:last-child {
border:0;
margin-bottom:0;
padding-bottom:0;}
.filter-group h3 {
color:#4c405c;
font-size:13px;
font-weight:800;
margin:0 0 10px;}
.filter-group label {
color:#786e83;
display:block;
font-size:13px;
font-weight:600;
margin:7px 0;}
.filter-group input {
margin-right:7px;
vertical-align:-1px;}
.stars {
color:#f1b900;
letter-spacing:1px;}
.results-head {
align-items:center;
display:flex;
justify-content:space-between;
margin:0 0 19px;}
.results-head h2 {
color:var(--deep-purple);
font-size:22px;
font-weight:800;
letter-spacing:-.4px;
margin:0 0 2px;}
.results-head p {
color:#857a91;
font-size:13px;
margin:0;}
.sort-select {
border:1px solid #e5dff0;
border-radius:6px;
color:#675b76;
font-size:12px;
height:36px;
padding:0 8px;}
.teacher-card {
background:#fff;
border:1px solid #ece8f2;
border-radius:12px;
margin-bottom:17px;
padding:22px;
transition:.2s ease;}
.teacher-card:hover {
box-shadow:0 10px 25px rgba(63,35,116,.09);
transform:translateY(-2px);}
.teacher-card .row {
align-items:center;
display:flex;}
.teacher-avatar {
align-items:center;
border-radius:50%;
color:#fff;
display:flex;
font-size:21px;
font-weight:800;
height:70px;
justify-content:center;
margin-right:16px;
width:70px;}
.avatar-one {
background:linear-gradient(145deg,#f6bd51,#d37b24);}
.avatar-two {
background:linear-gradient(145deg,#8e77dd,#543398);}
.avatar-three {
background:linear-gradient(145deg,#5bbbab,#247d75);}
.teacher-name {
color:var(--deep-purple);
font-size:18px;
font-weight:800;
margin:0 0 2px;}
.teacher-title {
color:#82778f;
font-size:12px;
margin-bottom:8px;}
.rating {
color:#6f6479;
font-size:12px;
font-weight:700;}
.rating .stars {
margin-right:5px;}
.teacher-description {
color:#71667b;
font-size:13px;
line-height:1.55;
margin:12px 0 0;}
.teacher-meta {
border-left:1px solid #eee9f3;
min-height:73px;
padding-left:23px;}
.teacher-meta .rate {
color:var(--deep-purple);
font-size:18px;
font-weight:800;
line-height:1.2;}
.teacher-meta .rate span {
color:#8a7f95;
font-size:11px;
font-weight:600;}
.availability {
color:#4a9376;
font-size:11px;
font-weight:800;
margin-top:7px;}
.availability i {
margin-right:4px;}
.btn-view {
background:#fff;
border:1px solid var(--purple);
border-radius:6px;
color:var(--purple);
font-size:12px;
font-weight:800;
margin-top:10px;
padding:7px 11px;}
.btn-view:hover {
background:var(--purple);
color:#fff;}
.results-note {
background:#fffbeb;
border:1px solid #fff0ad;
border-radius:9px;
color:#72602a;
font-size:12px;
margin-top:22px;
padding:13px 15px;}
.results-note i {
color:#cf9600;
margin-right:6px;}
@media(max-width:767px) {
.navbar-brand {
padding-left:15px;}
.navbar-toggle {
border-color:#d7cdec;
margin-top:20px;}
.navbar-toggle .icon-bar {
background:var(--purple);}
.navbar-nav {
margin:0 -15px;
padding:7px 18px 15px;}
.navbar-nav>li>a {
padding:10px 15px;}
.navbar-default .navbar-nav>li>a.nav-join {
display:inline-block;
margin:7px 15px;}
.search-banner {
padding:27px 0;}
.search-banner h1 {
font-size:23px;}
.search-box {
display:block;
padding:7px;}
.search-box .input-group {
display:flex;}
.btn-search {
height:42px;
margin-top:5px;
width:100%;}
.page-content {
padding-top:25px;}
.filter-card {
margin-bottom:25px;}
.teacher-card {
padding:18px;}
.teacher-card .row {
display:block;}
.teacher-meta {
border-left:0;
border-top:1px solid #eee9f3;
margin-top:15px;
min-height:0;
padding:14px 0 0;}
.teacher-avatar {
float:left;}
.teacher-description {
clear:both;
padding-top:3px;}
.results-head {
align-items:flex-start;}
.sort-select {
margin-left:12px;}
.teacher-meta .btn-view {
float:right;
margin-top:-26px;}
}

.search-banner>div>p{color:#796e84;margin:-8px 0 16px}.public-filters{align-items:center;background:#fff;border:1px solid #ebe5f0;border-radius:9px;display:flex;gap:9px;margin-bottom:25px;padding:11px}.public-filters select{background:#faf9fc;border:1px solid #e4ddec;border-radius:5px;color:#65586f;font-size:11px;height:38px;padding:0 9px}.public-filters button{background:#5d35b0;border:0;border-radius:5px;color:#fff;font-size:10px;font-weight:800;height:38px;padding:0 13px}.public-filters>a{color:#5d35b0;font-size:10px;font-weight:800}.public-results-grid{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.public-result-card{background:#fff;border:1px solid #eae4ef;border-radius:12px;box-shadow:0 5px 18px rgba(53,22,111,.04);padding:20px}.result-main{align-items:center;display:flex}.result-main .teacher-avatar{align-items:center;background:linear-gradient(145deg,#8e77dd,#543398);display:flex;float:none;font-size:14px;height:49px;justify-content:center;margin-right:11px;width:49px}.result-main h3{color:#35166f;font-size:15px;font-weight:800;margin:2px 0}.result-main p{color:#8a7f94;font-size:10px;margin:0}.public-approved{color:#348367;font-size:9px;font-weight:800}.public-result-card h4{color:#35166f;font-size:14px;font-weight:800;margin:16px 0 6px}.result-copy{color:#71667b;font-size:11px;line-height:1.55}.result-facts{border-bottom:1px solid #eee9f3;border-top:1px solid #eee9f3;display:flex;gap:14px;padding:10px 0}.result-facts span{color:#75697f;font-size:9px}.result-foot{align-items:flex-end;display:flex;justify-content:space-between;padding-top:13px}.result-foot small,.result-foot strong,.result-foot span{display:block}.result-foot small,.result-foot span{color:#91869a;font-size:8px}.result-foot strong{color:#35166f;font-size:18px}.result-foot>a{background:#5d35b0;border-radius:6px;color:#fff;font-size:10px;font-weight:800;padding:9px 11px}.result-foot>a:hover{background:#35166f;text-decoration:none}.public-empty{background:#fff;border:1px dashed #d8cde3;border-radius:10px;color:#8f8499;padding:50px;text-align:center}.public-empty i{font-size:28px}.public-empty h2{color:#35166f;font-size:17px}.public-plan-page{background:#f8f7fb;min-height:calc(100vh - 76px);padding:35px 0 65px}.public-back{color:#5d35b0;font-size:11px;font-weight:800}.public-detail-hero{align-items:center;background:linear-gradient(110deg,#f1eaff,#fff8d8);border-radius:13px;display:flex;justify-content:space-between;margin:18px 0 21px;padding:25px 27px}.public-detail-hero h1{color:#35166f;font-size:28px;font-weight:800;margin:6px 0}.public-detail-hero>div>p{color:#81758b}.public-price{background:#fff;border-radius:9px;min-width:225px;padding:15px;text-align:right}.public-price small,.public-price span,.public-price em{display:block}.public-price small,.public-price span{color:#92879b;font-size:9px}.public-price strong{color:#35166f;font-size:23px}.public-price em{border-top:1px solid #eee9f3;color:#6e6179;font-size:9px;font-style:normal;margin-top:8px;padding-top:8px}.public-detail-grid{display:grid;gap:20px;grid-template-columns:2fr 1fr}.public-detail-card{background:#fff;border:1px solid #ebe5f1;border-radius:11px;padding:23px}.public-detail-card h2{color:#35166f;font-size:15px;font-weight:800}.public-detail-card h2:not(:first-child){border-top:1px solid #eee9f3;margin-top:20px;padding-top:17px}.public-detail-card p,.public-detail-card li{color:#695d74;font-size:11px;line-height:1.7}.public-detail-card ol{background:#faf8fd;border-radius:7px;padding:12px 16px 12px 34px}.public-teacher{align-items:center;background:#faf8fd;border-radius:8px;display:flex;padding:10px}.public-teacher>span{align-items:center;background:#f3d46c;border-radius:50%;color:#4e367e;display:flex;font-size:11px;font-weight:800;height:38px;justify-content:center;margin-right:9px;width:38px}.public-teacher strong,.public-teacher small{display:block}.public-teacher strong{color:#4e405b;font-size:11px}.public-teacher small{color:#958a9f;font-size:9px}.public-summary span{border-bottom:1px solid #eee9f3;color:#8b8095;display:flex;font-size:10px;justify-content:space-between;padding:11px 0}.public-summary strong{color:#4e405b}.public-enrol{background:#5d35b0;border-radius:6px;color:#fff;display:block;font-size:11px;font-weight:800;margin-top:16px;padding:11px;text-align:center}.public-enrol:hover{background:#35166f;color:#fff;text-decoration:none}.public-login-note{font-size:9px!important;text-align:center}@media(max-width:991px){.public-results-grid{grid-template-columns:1fr}}@media(max-width:767px){.public-filters{align-items:stretch;display:grid}.public-detail-hero{align-items:flex-start;display:block}.public-price{margin-top:15px;text-align:left}.public-detail-grid{grid-template-columns:1fr}.result-foot{gap:12px}.public-results-grid{grid-template-columns:1fr}}

/* Public catalogue polish */
.page-content{padding:46px 0 70px}
.public-filters{border-radius:14px;box-shadow:0 8px 28px rgba(53,22,111,.06);gap:12px;margin-bottom:32px;padding:16px}
.public-filters select{border-radius:8px;flex:1;font-size:13px;height:46px;min-width:0;padding:0 13px}
.public-filters button{border-radius:8px;font-size:12px;height:46px;padding:0 20px;transition:background .2s,transform .2s}
.public-filters button:hover{background:#35166f;transform:translateY(-1px)}
.public-filters>a{font-size:12px;padding:10px 6px}
.results-head{margin-bottom:22px}
.results-head h2{font-size:25px;letter-spacing:-.35px;margin-bottom:4px}
.results-head p{font-size:13px}
.public-results-grid{gap:24px}
.public-result-card{border-radius:16px;box-shadow:0 8px 28px rgba(53,22,111,.07);display:flex;flex-direction:column;padding:24px;transition:box-shadow .2s,transform .2s}
.public-result-card:hover{box-shadow:0 15px 35px rgba(53,22,111,.12);transform:translateY(-3px)}
.result-main .teacher-avatar{border:4px solid #f0ebff;flex:0 0 56px;font-size:15px;height:56px;width:56px}
.public-approved{font-size:10px;letter-spacing:.1px}
.result-main h3{font-size:18px;margin:3px 0}
.result-main p{font-size:11px}
.public-result-card h4{font-size:17px;line-height:1.35;margin:20px 0 8px}
.result-copy{font-size:12px;line-height:1.65;margin-bottom:18px}
.result-facts{gap:9px;margin-top:auto}
.result-facts span{background:#f7f3ff;border-radius:20px;color:#655184;font-size:10px;font-weight:700;padding:6px 9px}
.result-foot{padding-top:17px}
.result-foot small,.result-foot span{font-size:9px}
.result-foot strong{font-size:22px}
.result-foot>a{border-radius:8px;font-size:11px;padding:11px 13px}
.public-region-notice{align-items:flex-start;background:#fff8df;border:1px solid #f0d47d;border-radius:12px;color:#725619;display:flex;font-size:13px;gap:11px;line-height:1.5;margin:18px 0 24px;padding:14px 16px}.public-region-notice>i{color:#b07a00;font-size:17px;margin-top:2px}.public-region-notice strong,.public-region-notice span{display:block}.public-region-notice strong{color:#5a4108}.public-region-notice span{color:#826a32;font-size:12px}
@media(max-width:767px){.page-content{padding:28px 0 48px}.public-filters{padding:13px}.public-filters select,.public-filters button{width:100%}.results-head h2{font-size:21px}.public-result-card{padding:18px}.result-foot{align-items:stretch;flex-direction:column}.result-foot>a{text-align:center}.result-facts{flex-wrap:wrap}}
