@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
:root{--forest:#204f39;--dark:#173b2c;--ink:#19342b;--text:#42574d;--muted:#71857b;--green:#54a975;--lime:#bbefbe;--mint:#eaf9eb;--mist:#f5fbf6;--white:#fff;--border:#dcebe0;--shadow:0 14px 48px rgba(35,78,49,.09);--shadow-soft:0 4px 18px rgba(24,65,41,.06);--radius:20px;--font:'Plus Jakarta Sans',system-ui,-apple-system,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);color:var(--ink);background:#fff;font-size:15px;line-height:1.65}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em;line-height:1.15}h1{font-size:clamp(2.7rem,5vw,4.6rem);font-weight:800}h2{font-size:clamp(2rem,3.15vw,3rem);font-weight:800}h3{font-size:1.16rem;font-weight:800}p{color:var(--text)}:focus-visible{outline:3px solid #62b978;outline-offset:3px}.container{width:min(1160px,calc(100% - 48px));margin-inline:auto}.section{padding:94px 0}.eyebrow{color:#398a59;text-transform:uppercase;font-size:.72rem;font-weight:800;letter-spacing:.15em;margin:0 0 16px}.section-intro{max-width:610px;margin-bottom:40px}.section-intro p{font-size:1.05rem}.muted{color:var(--muted)}.small{font-size:.82rem}.accent{color:#4eaa74}.dark{color:var(--dark)}.pill{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:100px;font-weight:700;font-size:.75rem;color:#347d51;background:#e7f7e9;white-space:nowrap}.pill.neutral{background:#f0f5f1;color:#5f7369}.pill.gold{background:#fff8e1;color:#916b22}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:1px solid transparent;border-radius:12px;font-weight:800;font-size:.88rem;line-height:1.2;padding:14px 21px;min-height:47px;transition:transform .15s ease,background .15s ease,box-shadow .15s ease;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn svg,.icon{width:18px;height:18px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.btn-primary{background:#255e40;color:white;box-shadow:0 6px 15px rgba(31,91,57,.16)}.btn-primary:hover{background:#1b4932}.btn-outline{background:#fff;border-color:#bedbc5;color:var(--forest)}.btn-outline:hover{background:#f2faf3}.btn-light{background:#e5f8e7;color:var(--forest)}.btn-soft{background:#f3f8f4;color:var(--forest)}.btn-sm{padding:10px 15px;min-height:39px;font-size:.8rem}.btn-block{width:100%}.text-link{color:#2a8150;font-weight:800}.text-link:hover{text-decoration:underline}.notice{border:1px solid #b8e0bf;background:#f0fbf0;color:#356c44;border-radius:13px;padding:14px 17px;font-size:.88rem}.notice.warn{border-color:#f2dda8;background:#fffaf0;color:#85662a}.notice a{text-decoration:underline;font-weight:700}hr{border:0;border-top:1px solid var(--border);margin:24px 0}
/* Header */
.site-header{position:relative;z-index:30;background:#fff;border-bottom:1px solid #edf3ee}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--forest);font-size:1.42rem;font-weight:800;letter-spacing:-.065em;white-space:nowrap}.brand-mark{width:36px;height:36px;border-radius:12px;background:#286747;color:#cdf7cb;display:grid;place-items:center}.brand-mark svg{width:25px;height:25px}.nav-links,.nav-actions{display:flex;align-items:center;gap:29px}.nav-links a{font-size:.87rem;font-weight:700;color:#455b4e}.nav-links a:hover,.nav-links a.active{color:#257848}.nav-actions{gap:11px}.mobile-toggle{display:none;border:0;background:transparent;color:var(--dark);padding:8px}.demo-ribbon{background:#f7fcf7;color:#577867;border-bottom:1px solid #e9f2e9;font-size:.73rem;text-align:center;padding:6px 12px}.demo-ribbon a{color:#207b47;font-weight:800;text-decoration:underline}
/* Home hero */
.hero{overflow:hidden;background:linear-gradient(130deg,#f5fcf4 0%,#ecf9ed 66%,#e7f8e6 100%);position:relative}.hero::before{content:"";position:absolute;width:620px;height:620px;border-radius:50%;border:1px solid rgba(61,145,87,.10);right:-330px;top:-290px;box-shadow:0 0 0 80px rgba(80,170,98,.025),0 0 0 150px rgba(80,170,98,.025)}.hero-layout{display:grid;grid-template-columns:1.14fr .86fr;align-items:center;gap:35px;min-height:600px;padding:72px 0 90px}.hero-copy{position:relative;z-index:1}.hero-copy h1{margin:16px 0 22px;max-width:690px}.hero-copy h1 span{color:#50a873}.hero-copy>p{font-size:1.03rem;max-width:550px;line-height:1.8;margin-bottom:30px}.hero-kicker{display:inline-flex;gap:9px;align-items:center;background:#fff;border:1px solid #e0efdf;border-radius:100px;padding:7px 13px;color:#418455;font-size:.76rem;font-weight:800;box-shadow:0 4px 15px rgba(39,88,41,.05)}.hero-search{display:flex;gap:7px;background:white;padding:7px;border:1px solid #dfece0;border-radius:17px;box-shadow:0 14px 35px rgba(33,90,48,.10);max-width:610px}.hero-search label{display:flex;align-items:center;gap:11px;flex:1;padding:0 11px;min-width:0;color:#639475}.hero-search input{border:0;outline:none;width:100%;min-width:0;color:var(--ink);font-size:.88rem}.hero-search .btn{border-radius:11px}.suggestions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:17px 0}.suggestions span{color:#6c8972;font-size:.76rem}.suggestions a{background:#e1f3df;padding:5px 10px;border-radius:8px;color:#326d49;font-weight:700;font-size:.75rem}.suggestions a:hover{background:#d0edce}.hero-art{position:relative;height:450px;display:flex;align-items:center;justify-content:center}.hero-orbit{position:absolute;inset:28px 14px 10px 30px;border:1.5px dashed #a3d9af;border-radius:50%;transform:rotate(-18deg)}.hero-art::before{content:"";width:340px;height:340px;background:#c4ebc3;border-radius:49% 51% 58% 42%/45% 37% 63% 55%;position:absolute;transform:rotate(20deg);opacity:.7}.mock-card{z-index:2;background:white;border-radius:22px;padding:18px;box-shadow:0 20px 65px rgba(30,88,52,.16);width:298px;transform:rotate(-2deg)}.mock-card-banner{height:145px;border-radius:15px;background:radial-gradient(circle at 65% 35%,#d9ffda,#a7dda9 55%,#9bdbac);position:relative;overflow:hidden;display:grid;place-items:center}.mock-circle{width:103px;height:103px;border-radius:50%;background:#f9ffef;display:grid;place-items:center;color:#2e7750;font-size:2.25rem;font-weight:800;box-shadow:0 10px 22px rgba(47,102,54,.12)}.mock-card-banner::before,.mock-card-banner::after{content:"";width:115px;height:115px;border:1px solid rgba(255,255,255,.7);position:absolute;border-radius:50%;top:-60px;left:-42px}.mock-card-banner::after{top:auto;left:auto;right:-40px;bottom:-60px;width:150px;height:150px}.mock-card-row{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin:17px 0 8px}.mock-card-row strong{font-size:1.1rem;letter-spacing:-.025em}.mock-card-sub{font-size:.8rem;color:#7a8d7d;margin:0 0 14px}.mock-badges{display:flex;gap:7px}.mock-badges .pill{padding:5px 9px;font-size:.66rem}.float-tag{position:absolute;z-index:4;background:white;border:1px solid #e7f2e4;box-shadow:0 12px 40px rgba(42,90,55,.11);border-radius:15px;display:flex;gap:11px;align-items:center;padding:12px 16px;transform:rotate(4deg)}.float-tag.top{top:53px;right:-17px}.float-tag.bottom{bottom:42px;left:-21px;transform:rotate(-5deg)}.float-icon{width:41px;height:41px;border-radius:12px;display:grid;place-items:center;background:#e6f8e5;color:#339c5c}.float-tag strong{display:block;font-size:.8rem}.float-tag span{font-size:.69rem;color:#7d9484}.float-tag .icon{width:20px;height:20px}
/* Shared sections */
.topline{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:33px}.topline p{margin-bottom:0}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.benefit{border:1px solid #e3eee5;border-radius:20px;padding:29px;background:white;transition:transform .2s,box-shadow .2s}.benefit:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}.benefit-icon{display:grid;place-items:center;width:51px;height:51px;border-radius:15px;background:#e7f7e9;color:#348651;margin-bottom:22px}.benefit-icon .icon{width:24px;height:24px}.benefit h3{margin:0 0 8px}.benefit p{font-size:.87rem;line-height:1.8;margin:0}.tint-section{background:#f6fbf6}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.step{position:relative}.step-number{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#d9f2db;color:#236e44;font-size:1rem;font-weight:800;margin-bottom:18px}.step h3{margin:0 0 9px}.step p{font-size:.89rem}.cta-panel{background:linear-gradient(118deg,#1d5138,#2f7a4c);color:white;border-radius:26px;padding:55px 65px;display:flex;align-items:center;justify-content:space-between;gap:35px;overflow:hidden;position:relative}.cta-panel:after{content:"";position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.1);width:430px;height:430px;top:-290px;right:-120px;box-shadow:0 0 0 50px rgba(255,255,255,.03),0 0 0 100px rgba(255,255,255,.02)}.cta-panel>*{position:relative;z-index:1}.cta-panel h2{color:white;font-size:clamp(1.8rem,3vw,2.6rem);margin:0 0 12px}.cta-panel p{color:#ddf2e2;max-width:580px;margin:0}.cta-panel .btn{background:white;color:var(--forest)}
/* Tutor cards */
.tutor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.tutor-card{background:white;border:1px solid #e1ebe2;border-radius:20px;overflow:hidden;box-shadow:0 3px 10px rgba(28,74,44,.025);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.tutor-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-visual{min-height:165px;position:relative;display:grid;place-items:center;overflow:hidden}.card-visual::before{content:"";position:absolute;width:225px;height:225px;border-radius:50%;border:1px solid rgba(255,255,255,.7);left:-75px;top:-105px;box-shadow:0 0 0 40px rgba(255,255,255,.2)}.card-visual::after{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.25);right:-40px;bottom:-60px}.tint-mint{background:linear-gradient(135deg,#d8f4dc,#b1e0c1)}.tint-peach{background:linear-gradient(135deg,#fff0df,#ffddcb)}.tint-lavender{background:linear-gradient(135deg,#eeeafa,#d7d5f4)}.tint-sky{background:linear-gradient(135deg,#e0f3f9,#bedfee)}.tint-butter{background:linear-gradient(135deg,#fff6dc,#f4e7b2)}.tint-rose{background:linear-gradient(135deg,#fae9ef,#f2d3dd)}.avatar{width:99px;height:99px;border-radius:50%;background:rgba(255,255,255,.82);color:#346e4d;display:grid;place-items:center;font-size:1.8rem;font-weight:800;letter-spacing:-.06em;overflow:hidden;box-shadow:0 10px 24px rgba(38,85,49,.1);z-index:1}.avatar img{width:100%;height:100%;object-fit:cover}.card-visual .sample-chip{position:absolute;top:12px;left:12px;z-index:3;background:rgba(255,255,255,.9);border-radius:20px;padding:4px 9px;font-size:.68rem;font-weight:700;color:#64816d}.card-body{padding:22px 22px 19px;display:flex;flex-direction:column;flex:1}.card-top{display:flex;gap:8px;justify-content:space-between;align-items:flex-start}.card-body h3{margin:0 0 4px;font-size:1.14rem;letter-spacing:-.032em}.card-title{font-size:.82rem;color:#6e8074;min-height:24px;margin:0 0 12px}.card-chips{display:flex;flex-wrap:wrap;gap:7px;min-height:34px;margin-bottom:12px}.card-chips .pill{font-size:.69rem;padding:5px 9px}.card-about{font-size:.82rem;line-height:1.65;color:#64786b;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 18px}.card-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eaf0eb;padding-top:16px;margin-top:auto;gap:8px}.price strong{font-size:1.32rem;font-weight:800;letter-spacing:-.06em;color:var(--dark)}.price span{color:#738679;font-size:.74rem}.card-available{color:#5e8868;font-size:.72rem;font-weight:700}.card-bottom .btn{padding:10px 13px;min-height:37px}
/* Search page */
.page-heading{padding:62px 0 30px;background:#f5fbf5}.page-heading h1{font-size:clamp(2.3rem,4.2vw,3.65rem);margin:0 0 13px}.page-heading p{font-size:1rem;margin-bottom:0;max-width:650px}.finder{padding:38px 0 96px}.finder-layout{display:grid;grid-template-columns:260px 1fr;align-items:start;gap:34px}.filter-panel{background:#fff;border:1px solid #e0ebe2;border-radius:20px;padding:23px;position:sticky;top:22px}.filter-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:19px}.filter-top h3{margin:0}.filter-group{border-top:1px solid #e7eee8;padding:17px 0}.filter-group:first-of-type{border-top:0}.filter-label{display:block;font-weight:800;font-size:.8rem;margin-bottom:9px;color:#314b3a}.field,.textarea,.select{display:block;width:100%;border:1px solid #d6e4d9;background:white;border-radius:11px;color:var(--ink);min-height:45px;padding:11px 13px;outline:none;transition:border-color .15s,box-shadow .15s;font-size:.87rem}.field:focus,.textarea:focus,.select:focus{border-color:#6dbb81;box-shadow:0 0 0 3px #dbf5df}.textarea{resize:vertical;min-height:120px}.checkbox-row{display:flex;gap:9px;align-items:center;color:#4d6755;font-size:.81rem;padding:5px 0;cursor:pointer}.checkbox-row input{accent-color:#367b4d;width:16px;height:16px}.range{width:100%;accent-color:#387b4d}.filter-meta{display:flex;justify-content:space-between;color:#6f8c77;font-size:.75rem}.finder-main{min-width:0}.searchbar{display:flex;gap:10px;margin-bottom:22px}.searchbar .search-input-wrap{flex:1;position:relative}.searchbar .field{padding-left:44px;height:52px}.search-input-wrap .icon{position:absolute;top:17px;left:15px;color:#6b957a}.results-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:20px}.results-toolbar strong{font-size:.94rem}.sort-control{display:flex;align-items:center;gap:9px;color:#7b8e7c;font-size:.76rem}.sort-control select{border:1px solid #e0e9e0;background:white;border-radius:10px;padding:9px 10px;max-width:178px;color:#345441}.finder .tutor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-mobile{display:none}.empty-state{text-align:center;background:#f7fbf6;border:1px dashed #c9e5cf;border-radius:20px;padding:55px 25px}.empty-icon{font-size:2.5rem;margin-bottom:12px}.empty-state h3{margin:0 0 7px}.empty-state p{max-width:420px;margin:0 auto 20px}
/* Detail */
.breadcrumb{font-size:.8rem;color:#709079;display:flex;align-items:center;gap:8px;padding:32px 0}.breadcrumb a{color:#287c4f;font-weight:700}.profile-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:35px;align-items:start;padding-bottom:100px}.profile-header{display:flex;align-items:center;gap:23px;padding:27px;background:#f4fbf4;border:1px solid #e2efe3;border-radius:23px;margin-bottom:24px}.profile-header .avatar{width:120px;height:120px;flex:none;box-shadow:none}.profile-header h1{font-size:clamp(1.8rem,3vw,2.5rem);margin:8px 0 6px}.profile-subtitle{margin:0 0 12px;color:#587263}.profile-tags{display:flex;flex-wrap:wrap;gap:8px}.profile-block{padding:28px;border:1px solid #e3eee5;border-radius:20px;margin-bottom:20px}.profile-block h2{font-size:1.2rem;letter-spacing:-.02em;margin-bottom:14px}.profile-block p{margin-bottom:0;line-height:1.9;font-size:.92rem}.detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.detail-fact{display:flex;gap:12px;align-items:flex-start}.detail-fact .icon{color:#3b9760;margin-top:3px}.detail-fact strong{display:block;color:#2e4835;font-size:.8rem}.detail-fact span{display:block;font-size:.82rem;color:#718477}.tag-list{display:flex;flex-wrap:wrap;gap:8px}.tag-list .pill{font-size:.76rem}.booking-card{position:sticky;top:22px;border:1px solid #dce9df;border-radius:20px;padding:25px;box-shadow:var(--shadow-soft);background:white}.booking-card .big-rate{font-weight:800;font-size:2.25rem;letter-spacing:-.07em;line-height:1.2}.booking-card .big-rate span{font-weight:500;font-size:.86rem;letter-spacing:0;color:#748879}.booking-card h3{margin:0 0 12px}.booking-card .booking-fact{display:flex;align-items:center;gap:10px;font-size:.85rem;color:#5f7765;margin:12px 0}.booking-card .booking-fact svg{color:#3d9b60}.booking-card .btn{margin-top:18px}.request-form{margin-top:23px;padding-top:22px;border-top:1px solid #e2ede3}.request-form .form-field{margin-bottom:13px}.request-form h3{font-size:1rem}.request-form .btn{margin-top:5px}
/* Join & forms */
.form-page{padding:62px 0 95px;background:linear-gradient(#f5fbf5 0,#fff 320px)}.form-heading{max-width:760px;margin:0 auto 30px}.form-heading h1{font-size:clamp(2.1rem,4vw,3.3rem);margin-bottom:12px}.form-heading p{font-size:1rem}.form-layout{display:grid;grid-template-columns:minmax(0,760px) 290px;align-items:start;gap:28px;justify-content:center}.form-card{border:1px solid #dfeae1;border-radius:21px;background:#fff;box-shadow:var(--shadow-soft);padding:32px;margin-bottom:18px}.form-card h2{font-size:1.24rem;letter-spacing:-.025em;margin-bottom:8px}.form-card .helper{font-size:.81rem;color:#7b9180;margin-bottom:21px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-field{display:flex;flex-direction:column;gap:7px;margin-bottom:18px}.form-field:last-child{margin-bottom:0}.form-field label,.label{font-size:.81rem;font-weight:800;color:#385440}.required{color:#df625f}.hint{font-size:.72rem;color:#84988a;line-height:1.5}.form-field select{appearance:auto}.span-2{grid-column:span 2}.chip-checks{display:flex;flex-wrap:wrap;gap:9px}.chip-check{position:relative;cursor:pointer}.chip-check input{position:absolute;opacity:0;pointer-events:none}.chip-check span{display:block;border:1px solid #dbe9de;border-radius:100px;color:#5d7764;background:white;font-weight:700;font-size:.78rem;padding:8px 14px;transition:.15s}.chip-check input:checked+span{background:#dff3e2;border-color:#73bd8c;color:#286542}.chip-check input:focus-visible+span{outline:3px solid #81ce93;outline-offset:2px}.profile-upload{display:flex;align-items:center;gap:17px}.profile-upload .avatar{width:76px;height:76px;box-shadow:none;background:#eaf6eb}.profile-upload input{max-width:240px;font-size:.76rem}.form-aside{position:sticky;top:25px}.tip-card{background:#eaf8ea;border-radius:19px;padding:25px;margin-bottom:18px}.tip-card h3{margin:0 0 17px;font-size:1rem}.tip{display:flex;gap:10px;margin-bottom:15px;font-size:.8rem;color:#55735e}.tip:last-child{margin-bottom:0}.tip .icon{color:#3d9a59}.form-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.form-actions p{margin:0;font-size:.76rem}
/* Account / dashboard */
.auth-shell{min-height:calc(100vh - 240px);background:#f5fbf5;padding:70px 24px 90px;display:flex;justify-content:center;align-items:flex-start}.auth-card{width:min(480px,100%);background:#fff;border:1px solid #e3eee5;border-radius:24px;padding:34px;box-shadow:var(--shadow)}.auth-card h1{font-size:2rem;margin-bottom:10px}.auth-card>p{font-size:.9rem}.auth-switch{display:flex;background:#f0f6f1;padding:5px;border-radius:12px;margin:24px 0}.auth-switch button{width:50%;background:transparent;border:0;padding:11px;font-weight:800;color:#728676;border-radius:9px}.auth-switch button.active{background:white;box-shadow:0 2px 8px rgba(30,70,40,.07);color:#326b45}.dashboard{padding:60px 0 95px;background:linear-gradient(#f5fbf5 0,#fff 280px);min-height:70vh}.dashboard-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:33px}.dashboard-head h1{font-size:clamp(2rem,4vw,3rem);margin:6px 0 6px}.dashboard-grid{display:grid;grid-template-columns:360px 1fr;gap:24px}.dash-card{background:white;border:1px solid #e0eae2;border-radius:20px;padding:27px;box-shadow:var(--shadow-soft)}.dash-card h2{font-size:1.13rem;margin-bottom:16px}.dash-avatar{display:flex;gap:14px;align-items:center}.dash-avatar .avatar{width:64px;height:64px;font-size:1.2rem;box-shadow:none}.dash-avatar strong{display:block}.dash-avatar p{font-size:.8rem;margin:0}.request-item{border-top:1px solid #e8f0e9;padding:20px 0}.request-item:first-of-type{border-top:0;padding-top:5px}.request-item h3{font-size:.97rem;margin:0 0 7px}.request-item p{font-size:.82rem;margin:5px 0}.request-item .request-meta{font-size:.74rem;color:#7a937f}.request-item .pill{margin-top:8px}.request-toolbar{display:flex;justify-content:space-between;align-items:center;gap:9px}.request-toolbar select{font-size:.76rem;border-radius:8px;border:1px solid #d8e9db;color:var(--forest);padding:5px}.helper-box{border-radius:16px;background:#eff9ef;border:1px dashed #bcdfc0;padding:19px}.helper-box p{font-size:.82rem;margin:0 0 12px}
/* Footer */
.site-footer{background:#143a2a;color:#fff;padding:55px 0 22px}.footer-main{display:grid;grid-template-columns:1.4fr repeat(2,.8fr);gap:55px;padding-bottom:44px}.site-footer .brand{color:white}.site-footer .brand-mark{background:#c2f0bf;color:#24593c}.site-footer p{color:#bad1c1;font-size:.84rem;max-width:345px;margin:17px 0 0}.site-footer h4{font-size:.82rem;margin:4px 0 16px;color:white}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links a{font-size:.82rem;color:#bdcfc2}.footer-links a:hover{color:white}.footer-bottom{border-top:1px solid #37624b;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;color:#9fbbaa;font-size:.74rem}.footer-bottom p{margin:0;color:inherit}.toast{position:fixed;bottom:24px;right:24px;z-index:200;background:#1d5138;color:white;box-shadow:var(--shadow);padding:14px 18px;border-radius:13px;font-size:.88rem;font-weight:700;max-width:min(360px,calc(100% - 40px));display:none}.toast.show{display:block}.toast.error{background:#9c3c3c}.loading{color:#6a8874;padding:35px 0}.invisible{display:none!important}
@media(max-width:1080px){.hero-layout{grid-template-columns:1fr .78fr;gap:8px}.hero-art{transform:scale(.88);transform-origin:center}.finder-layout{grid-template-columns:230px 1fr;gap:23px}.form-layout{grid-template-columns:minmax(0,1fr) 260px}.profile-layout{grid-template-columns:1fr 290px}.nav-links{gap:17px}}
@media(max-width:840px){.nav{min-height:73px}.mobile-toggle{display:block}.nav-links{display:none;position:absolute;top:73px;left:0;right:0;background:white;border-bottom:1px solid #dcebe1;padding:16px 24px;box-shadow:0 15px 25px rgba(35,83,52,.09);flex-direction:column;align-items:stretch;gap:5px}.nav-links.open{display:flex}.nav-links a{padding:11px 6px}.nav-actions{margin-left:auto}.nav-actions .desktop-join{display:none}.hero-layout{grid-template-columns:1fr;min-height:0;padding:65px 0 35px}.hero-copy{text-align:center}.hero-copy h1,.hero-copy>p{margin-left:auto;margin-right:auto}.hero-search{margin:auto}.suggestions{justify-content:center}.hero-art{height:350px;transform:scale(.75);margin-top:-15px}.tutor-grid{grid-template-columns:repeat(2,1fr)}.benefit-grid{grid-template-columns:repeat(3,1fr);gap:12px}.benefit{padding:22px}.finder .tutor-grid{grid-template-columns:1fr 1fr}.finder-layout{display:block}.filter-panel{position:static;display:none;margin-bottom:22px}.filter-panel.open{display:block}.filter-mobile{display:inline-flex}.form-layout,.profile-layout{grid-template-columns:1fr}.form-aside{position:static;display:grid;grid-template-columns:1fr 1fr;gap:15px}.booking-card{position:static}.dashboard-grid{grid-template-columns:1fr}.footer-main{grid-template-columns:1.5fr 1fr 1fr;gap:26px}.cta-panel{padding:42px}}
@media(max-width:600px){.container{width:min(100% - 34px,1160px)}.section{padding:67px 0}.nav-actions .btn{font-size:.75rem;padding:9px 11px;min-height:37px}.brand{font-size:1.3rem}.brand-mark{width:33px;height:33px}.hero-layout{padding:53px 0 25px}.hero-copy h1{font-size:clamp(2.45rem,11vw,3.35rem);margin-top:19px}.hero-copy>p{font-size:.92rem}.hero-search{display:grid;gap:7px;padding:9px;max-width:470px}.hero-search label{height:44px;padding-left:13px}.hero-search .btn{width:100%}.hero-art{height:255px;transform:scale(.58);margin:-45px 0 -45px}.float-tag.top{right:-18px}.tutor-grid,.finder .tutor-grid{grid-template-columns:1fr}.topline{display:block}.topline .btn{margin-top:16px}.benefit-grid,.steps{grid-template-columns:1fr;gap:16px}.benefit{padding:24px}.cta-panel{display:block;padding:34px 26px}.cta-panel .btn{margin-top:24px}.finder{padding-top:24px}.page-heading{padding:46px 0 27px}.searchbar{flex-wrap:wrap}.searchbar .search-input-wrap{flex-basis:100%}.searchbar .filter-mobile{flex:1}.searchbar .btn-primary{flex:1}.results-toolbar{align-items:flex-start;flex-wrap:wrap}.form-page{padding:45px 0 70px}.form-card{padding:22px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.form-aside{grid-template-columns:1fr}.profile-header{align-items:flex-start;flex-direction:column}.profile-header .avatar{width:96px;height:96px}.profile-block{padding:23px}.detail-list{grid-template-columns:1fr}.auth-shell{padding:44px 16px 65px}.auth-card{padding:25px}.dashboard{padding:43px 0 70px}.dashboard-head{display:block}.dashboard-head .btn{margin-top:15px}.dash-card{padding:22px}.footer-main{grid-template-columns:1fr 1fr;gap:32px}.footer-main>div:first-child{grid-column:span 2}.site-footer{padding-top:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Keep the longer CourseMate name comfortable on small phone screens. */
@media(max-width:600px){.nav{gap:9px}.brand{font-size:1.14rem;gap:6px}.nav-actions .btn{font-size:.7rem;padding:8px 9px}.mobile-toggle{padding:5px}}
@media(max-width:360px){.brand{font-size:1.05rem}.brand-mark{width:29px;height:29px}.nav{gap:5px}}


/* Visible on EVERY page, even if JavaScript fails to load. */
.testing-disclaimer{background:#e5f8e9;color:#16472e;border-bottom:2px solid #9cd5af;padding:13px 0}
.testing-disclaimer-inner{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;column-gap:16px;row-gap:3px;text-align:center;line-height:1.55}
.testing-disclaimer strong{font-size:.78rem;letter-spacing:.075em;font-weight:800;white-space:nowrap}
.testing-disclaimer span{font-size:.8rem;font-weight:550;max-width:900px}
@media(max-width:600px){.testing-disclaimer{padding:11px 0}.testing-disclaimer-inner{text-align:left;justify-content:flex-start;gap:4px}.testing-disclaimer strong{font-size:.72rem}.testing-disclaimer span{font-size:.72rem}}
