/* Yana / Home layout V35 — scoped to the homepage.
   Separate from shared styles; preserve other pages and parent admin themes. */
body.home-layout-v35{overflow-x:clip}
.home-layout-v35 *, .home-layout-v35 *::before,.home-layout-v35 *::after{box-sizing:border-box}
.home-layout-v35 main{min-width:0}
.home-layout-v35 main .section{min-width:0;max-width:100%}
.home-layout-v35 main .section :is(h1,h2,h3,p,small,b,li){overflow-wrap:break-word}
.home-layout-v35 main :is(.teacher-home-main,.teacher-home-copy,.teacher-home-visual,.teacher-home-card,
 .school-life-home-copy,.hero-copy,.hero-visual,.photo-card,.service-card,.about-content,
 .step-card,.lesson-grid,.lesson-steps,.lesson-step,.materials-panel,.material-card,
 .format-grid,.price-card,.mode-card,.booking-copy,.calendar-widget,.review-card,
 .faq-grid,.faq-list,.lead-closed-copy){min-width:0}

/* Header: all eight pages stay visible on desktop; burger for tablet/phone only. */
.home-layout-v35 .app-header{gap:clamp(7px,.7vw,13px);padding:12px 14px;min-width:0}
.home-layout-v35 .brand{flex:0 0 auto;min-width:0}
.home-layout-v35 .brand-text{min-width:0}
.home-layout-v35 .brand-text b{font-size:clamp(16px,1.2vw,19px);line-height:1.1}
.home-layout-v35 .brand-text small{font-size:clamp(10px,.76vw,12px);line-height:1.3;white-space:normal}
.home-layout-v35 .desktop-nav{min-width:0;gap:clamp(3px,.43vw,10px);margin-left:auto;align-items:center}
.home-layout-v35 .desktop-nav a{padding:10px 3px;margin:0;line-height:1.3;font-size:clamp(11.5px,.93vw,13px);font-weight:760;letter-spacing:-.01em;white-space:nowrap}
.home-layout-v35 .desktop-nav a[aria-current="page"]{padding:10px 7px;margin:0;border-radius:12px}
.home-layout-v35 .header-cta{flex:0 0 auto;min-height:44px;padding:9px clamp(10px,1vw,15px);line-height:1.2;text-align:center;font-size:clamp(12.5px,1vw,14px);white-space:nowrap;border-radius:13px}
@media(min-width:1181px){
  body.home-layout-v35 .desktop-nav{display:flex}
  body.home-layout-v35 .header-cta{display:inline-flex}
  body.home-layout-v35 .menu-button{display:none}
  body.home-layout-v35 .mobile-sheet,body.home-layout-v35 .sheet-overlay{display:none!important}
}
@media(min-width:1181px) and (max-width:1350px){
  .home-layout-v35 .app-header{gap:6px;padding:10px 11px}
  .home-layout-v35 .brand{gap:7px}
  .home-layout-v35 .brand-mark{width:37px;height:37px;flex-basis:37px;border-radius:12px}
  .home-layout-v35 .brand-mark svg{width:27px;height:27px}
  .home-layout-v35 .brand-text b{font-size:17px}
  .home-layout-v35 .brand-text small{font-size:11.5px;max-width:165px}
  .home-layout-v35 .desktop-nav{gap:5px}
  .home-layout-v35 .desktop-nav a{font-size:12.5px;padding:8px 2px;letter-spacing:-.02em}
  .home-layout-v35 .desktop-nav a[aria-current="page"]{padding:8px 5px}
  .home-layout-v35 .header-cta{min-height:42px;padding:8px 9px;font-size:12.5px}
}
@media(min-width:821px) and (max-width:980px){
  body.home-layout-v35 .desktop-nav{display:none}
  body.home-layout-v35 .menu-button{display:flex;flex:0 0 46px;width:46px;height:46px;min-height:46px;margin-left:0}
  body.home-layout-v35 .header-cta{display:inline-flex;margin-left:auto}
}

/* Primary teacher card: flexible text, properly framed image and labels. */
.home-layout-v35 .teacher-home{padding:clamp(18px,2.4vw,34px);border-radius:clamp(22px,2.4vw,38px)}
.home-layout-v35 .teacher-home-main{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(16px,2.5vw,36px)}
.home-layout-v35 .teacher-home-copy{padding:8px 0}
.home-layout-v35 .teacher-home h1{font-size:clamp(39px,4.5vw,68px);letter-spacing:-.045em;line-height:1.05;margin:0 0 14px;overflow-wrap:normal}
.home-layout-v35 .teacher-home-subtitle{font-size:clamp(14px,1.15vw,17px);line-height:1.55}
.home-layout-v35 .teacher-home-role{padding:14px 15px;gap:11px}
.home-layout-v35 .teacher-home-role>div,.home-layout-v35 .teacher-home-school>div,.home-layout-v35 .teacher-class-badge>div,.home-layout-v35 .teacher-home-card>div{min-width:0}
.home-layout-v35 .teacher-home-role b,.home-layout-v35 .teacher-home-school b{font-size:14px;line-height:1.35}
.home-layout-v35 .teacher-home-role small,.home-layout-v35 .teacher-home-school small{font-size:12.5px;line-height:1.42}
.home-layout-v35 .teacher-home-school{grid-template-columns:44px minmax(0,1fr);gap:11px}
.home-layout-v35 .teacher-home-actions{gap:10px;margin-top:18px}
.home-layout-v35 .teacher-home-actions .btn{min-height:47px;font-size:14px}
.home-layout-v35 .teacher-home-photo{height:clamp(380px,39vw,510px);border-radius:25px}
.home-layout-v35 .teacher-class-badge{padding:12px;gap:10px;align-items:center}
.home-layout-v35 .teacher-class-badge>span{flex:0 0 auto;min-width:68px}
.home-layout-v35 .teacher-class-badge b{font-size:14px;line-height:1.3}
.home-layout-v35 .teacher-class-badge small{font-size:12px;line-height:1.36}
.home-layout-v35 .teacher-home-cards{gap:12px}
.home-layout-v35 .teacher-home-card{min-height:106px;gap:13px;padding:16px;border-radius:18px;align-items:center}
.home-layout-v35 .teacher-home-card b{font-size:15px;line-height:1.3}
.home-layout-v35 .teacher-home-card small{font-size:12.5px;line-height:1.45}

/* School-life showcase. */
.home-layout-v35 .school-life-home{grid-template-columns:minmax(0,1fr) minmax(0,265px);gap:20px;padding:clamp(18px,2.2vw,30px)}
.home-layout-v35 .school-life-home-copy h2{font-size:clamp(26px,2.7vw,38px);line-height:1.15;letter-spacing:-.035em}
.home-layout-v35 .school-life-home-copy p{font-size:14.5px;line-height:1.56}
.home-layout-v35 .school-life-home-actions{gap:9px}
.home-layout-v35 .school-life-home-actions .btn{font-size:13.5px;min-height:46px}
.home-layout-v35 .school-life-home-mark{min-width:0;padding:18px;border-radius:20px}
.home-layout-v35 .school-life-home-mark b{font-size:15px;line-height:1.35}
.home-layout-v35 .school-life-home-mark small{font-size:12px;line-height:1.4}

/* FIX: previously oversized generic h2 word escaped hero-copy into portrait. */
.home-layout-v35 .hero.tutoring-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(16px,2.3vw,32px);min-height:0;padding:clamp(20px,3vw,40px);padding-bottom:clamp(28px,6vw,90px);border-radius:clamp(22px,2.4vw,40px)}
.home-layout-v35 .tutoring-hero .hero-copy{width:100%;min-width:0;max-width:none;align-self:center}
.home-layout-v35 .hero.tutoring-hero .hero-secondary-title{display:block;width:100%;max-width:100%;margin:13px 0 14px;font-size:clamp(36px,3.55vw,60px);line-height:1.08;letter-spacing:-.045em;overflow-wrap:anywhere;word-break:normal}
.home-layout-v35 .tutoring-hero .hero-secondary-title span{max-width:100%;min-width:0}
.home-layout-v35 .tutoring-hero .hero-subtitle{max-width:100%;margin:0 0 15px;font-size:clamp(14px,1.18vw,16px);line-height:1.5}
.home-layout-v35 .tutoring-hero .pill{font-size:12px;line-height:1.3;min-height:37px;padding:9px 13px;white-space:normal;text-transform:none}
.home-layout-v35 .tutoring-status{gap:10px;padding:13px 14px;margin:13px 0;max-width:100%}
.home-layout-v35 .tutoring-status>div{min-width:0}
.home-layout-v35 .tutoring-status b{font-size:14px;line-height:1.3}
.home-layout-v35 .tutoring-status small{font-size:12.5px;line-height:1.42}
.home-layout-v35 .tutoring-hero .hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.home-layout-v35 .tutoring-hero .hero-actions .btn{max-width:100%;white-space:normal;text-align:center;font-size:14px;line-height:1.3;padding:11px 14px;min-height:46px}
.home-layout-v35 .tutoring-hero .cta-note{font-size:12.5px;line-height:1.45}
.home-layout-v35 .tutoring-hero .hero-chips{gap:8px;margin-top:13px}
.home-layout-v35 .tutoring-hero .hero-chip{min-height:36px;padding:8px 12px;white-space:normal;line-height:1.3;font-size:12px;border-radius:12px}
.home-layout-v35 .tutoring-hero .hero-visual{width:100%;min-width:0;align-self:stretch}
.home-layout-v35 .tutoring-hero .photo-card{width:100%;height:100%;min-height:400px;max-height:550px;border-radius:24px}
.home-layout-v35 .tutoring-hero .photo-card img{width:100%;height:100%;min-height:400px;max-height:550px;object-fit:cover;object-position:center 26%}
.home-layout-v35 .tutoring-hero .photo-badge{max-width:calc(100% - 24px)}
.home-layout-v35 .tutoring-hero .trust-rail{left:clamp(18px,3vw,40px);right:clamp(18px,3vw,40px);bottom:12px;gap:9px}
.home-layout-v35 .tutoring-hero .trust-card{min-width:0;padding:12px;gap:10px}
.home-layout-v35 .tutoring-hero .trust-card b{font-size:13px;line-height:1.3}
.home-layout-v35 .tutoring-hero .trust-card small{font-size:11.5px;line-height:1.4}

/* Every below-the-fold home card: readable, no narrow 6-column squeeze. */
.home-layout-v35 .section-head{min-width:0}
.home-layout-v35 .section-head h2{max-width:100%;font-size:clamp(26px,3vw,42px);line-height:1.16}
.home-layout-v35 .section-head p{max-width:min(100%,770px);font-size:14.5px;line-height:1.58}
.home-layout-v35 .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.home-layout-v35 .service-card{min-width:0;min-height:183px;padding:19px;border-radius:20px}
.home-layout-v35 .service-card h3{font-size:17px;line-height:1.33;overflow-wrap:anywhere}
.home-layout-v35 .service-card p{font-size:13.5px;line-height:1.5}
.home-layout-v35 .service-card .service-more{margin-top:auto;font-size:12.5px}
.home-layout-v35 .about{grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(16px,3vw,42px)}
.home-layout-v35 .about-content{padding:clamp(18px,2.6vw,34px)}
.home-layout-v35 .about-content h2{font-size:clamp(26px,3vw,40px);line-height:1.17}
.home-layout-v35 .about-content p,.home-layout-v35 .about-content li{font-size:14px;line-height:1.58}
.home-layout-v35 .quote-card{gap:11px;align-items:flex-start}
.home-layout-v35 .quote-card b{font-size:13.5px;line-height:1.5}
.home-layout-v35 .process-track{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 12px}
.home-layout-v35 .process-track:before{display:none}
.home-layout-v35 .step-card{min-height:193px;padding:54px 16px 18px;border-radius:20px}
.home-layout-v35 .step-card h3{font-size:16px;line-height:1.3}
.home-layout-v35 .step-card p{font-size:13px;line-height:1.48}
.home-layout-v35 .lesson-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:15px}
.home-layout-v35 .lesson-steps{min-width:0}
.home-layout-v35 .lesson-step{min-width:0;padding:18px;border-radius:20px}
.home-layout-v35 .lesson-step h3{font-size:15px;line-height:1.35}
.home-layout-v35 .lesson-step p{font-size:13px;line-height:1.5}
.home-layout-v35 .lesson-visual-pills{position:static;display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.home-layout-v35 .lesson-visual-pills span{min-height:33px;padding:7px 10px;white-space:normal;font-size:12px;line-height:1.3}
.home-layout-v35 .materials-head h3{font-size:21px;line-height:1.2}
.home-layout-v35 .materials-head p{font-size:13.5px;line-height:1.5}
.home-layout-v35 .materials-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.home-layout-v35 .material-card{min-height:130px;padding:15px;border-radius:18px}
.home-layout-v35 .material-card b{font-size:14px;line-height:1.3}
.home-layout-v35 .material-card small{font-size:12px;line-height:1.4}
.home-layout-v35 .format-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.home-layout-v35 .price-card,.home-layout-v35 .mode-card{min-width:0;padding:20px;border-radius:20px}
.home-layout-v35 .price-card .price-line.large b{font-size:clamp(36px,4.2vw,58px)}
.home-layout-v35 .mode-card h3{font-size:17px;line-height:1.3}
.home-layout-v35 .mode-card p,.home-layout-v35 .lesson-note{font-size:13.5px;line-height:1.48}
.home-layout-v35 .desk-card{min-width:0;overflow:hidden;border-radius:20px}
.home-layout-v35 .desk-card img{max-width:100%;object-fit:cover}
.home-layout-v35 .booking{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.home-layout-v35 .booking-copy h2{font-size:clamp(26px,2.8vw,39px);line-height:1.17}
.home-layout-v35 .booking-copy p{font-size:14px;line-height:1.55}
.home-layout-v35 .booking-closed-banner{min-width:0}
.home-layout-v35 .booking-closed-banner>div{min-width:0}
.home-layout-v35 .booking-closed-banner b{font-size:14px;line-height:1.3}
.home-layout-v35 .booking-closed-banner small{font-size:12.5px;line-height:1.45}
.home-layout-v35 .review-card{min-width:0}
.home-layout-v35 .review-card h3{font-size:15px;line-height:1.35}
.home-layout-v35 .review-card p{font-size:13.5px;line-height:1.55}
.home-layout-v35 .faq-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px}
.home-layout-v35 .faq-item summary{font-size:14px;line-height:1.45;white-space:normal}
.home-layout-v35 .faq-item div{font-size:13.5px;line-height:1.55}
.home-layout-v35 .lead-closed{grid-template-columns:minmax(0,1fr);gap:14px}
.home-layout-v35 .lead-closed-copy h2{font-size:clamp(25px,3vw,39px);line-height:1.16}
.home-layout-v35 .lead-closed-copy p{font-size:14px;line-height:1.55}
.home-layout-v35 .lead-closed-actions{display:flex;flex-wrap:wrap;gap:10px}
.home-layout-v35 .lead-closed-actions .btn{min-height:46px;padding:10px 16px;white-space:normal;text-align:center;font-size:13.5px;line-height:1.4}
.home-layout-v35 .pill{max-width:100%;white-space:normal;line-height:1.35}
.home-layout-v35 .btn{max-width:100%}

/* Tablets and compact laptops. */
@media(max-width:1120px){
 .home-layout-v35 .teacher-home-main{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:16px}
 .home-layout-v35 .teacher-home h1{font-size:clamp(38px,5.3vw,57px)}
 .home-layout-v35 .tutoring-hero .trust-rail{position:relative;left:auto;right:auto;bottom:auto;grid-column:1/-1;margin-top:6px}
 .home-layout-v35 .tutoring-hero .photo-card,.home-layout-v35 .tutoring-hero .photo-card img{height:360px;min-height:360px}
 .home-layout-v35 .lesson-grid{grid-template-columns:1fr}
 .home-layout-v35 .lesson-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-layout-v35 .about{grid-template-columns:1fr}
 .home-layout-v35 .materials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-layout-v35 .faq-grid{grid-template-columns:1fr}
}
@media(max-width:980px){
 .home-layout-v35 .teacher-home-main{grid-template-columns:1fr}
 .home-layout-v35 .teacher-home-photo{height:360px}
 .home-layout-v35 .teacher-home-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
 .home-layout-v35 .teacher-home-card{min-height:115px}
 .home-layout-v35 .hero.tutoring-hero{grid-template-columns:1fr}
 .home-layout-v35 .tutoring-hero .hero-visual{max-width:620px;margin:auto}
 .home-layout-v35 .tutoring-hero .photo-card,.home-layout-v35 .tutoring-hero .photo-card img{height:350px;min-height:350px}
 .home-layout-v35 .school-life-home{grid-template-columns:1fr minmax(0,210px)}
 .home-layout-v35 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-layout-v35 .process-track{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-layout-v35 .booking{grid-template-columns:1fr}
}
@media(max-width:820px){
 .home-layout-v35 .app-header{top:6px;padding:9px 11px;min-height:62px;border-radius:20px}
 .home-layout-v35 .header-cta{display:none}
 .home-layout-v35 .menu-button{display:flex;min-width:44px;min-height:44px;margin-left:auto}
 .home-layout-v35 .brand-mark{width:40px;height:40px;flex-basis:40px;border-radius:13px}
 .home-layout-v35 .brand-text b{font-size:17px}
 .home-layout-v35 .brand-text small{font-size:11px}
 .home-layout-v35 .teacher-home{padding:16px;border-radius:23px}
 .home-layout-v35 .teacher-home h1{font-size:clamp(35px,8.2vw,48px);line-height:1.08}
 .home-layout-v35 .teacher-home-subtitle{font-size:14px}
 .home-layout-v35 .teacher-home-role{padding:12px}
 .home-layout-v35 .teacher-home-role b,.home-layout-v35 .teacher-home-school b{font-size:13.5px}
 .home-layout-v35 .teacher-home-role small,.home-layout-v35 .teacher-home-school small{font-size:12px}
 .home-layout-v35 .teacher-home-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .home-layout-v35 .teacher-home-actions .btn{font-size:13px;min-height:46px;white-space:normal;line-height:1.35;padding:10px}
 .home-layout-v35 .teacher-home-photo{height:290px}
 .home-layout-v35 .teacher-class-badge{left:9px;right:9px;bottom:9px}
 .home-layout-v35 .teacher-class-badge b{font-size:13px}
 .home-layout-v35 .teacher-class-badge small{font-size:11.5px}
 .home-layout-v35 .teacher-home-cards{grid-template-columns:1fr;gap:8px}
 .home-layout-v35 .teacher-home-card{min-height:72px;padding:12px}
 .home-layout-v35 .teacher-home-card b{font-size:14px}
 .home-layout-v35 .teacher-home-card small{font-size:12px}
 .home-layout-v35 .school-life-home{grid-template-columns:1fr;gap:14px;padding:17px}
 .home-layout-v35 .school-life-home-mark{min-height:112px;padding:12px}
 .home-layout-v35 .school-life-home-mark span{font-size:44px}
 .home-layout-v35 .school-life-home-mark b{font-size:14px}
 .home-layout-v35 .school-life-home-copy p{font-size:13.5px}
 .home-layout-v35 .school-life-home-actions{display:flex;flex-wrap:wrap}
 .home-layout-v35 .school-life-home-actions .btn{font-size:13px;min-height:44px;padding:10px 13px;white-space:normal;line-height:1.35}
 .home-layout-v35 .hero.tutoring-hero{gap:14px;padding:17px;border-radius:23px}
 .home-layout-v35 .hero.tutoring-hero .hero-secondary-title{font-size:clamp(31px,7.6vw,49px);line-height:1.1;letter-spacing:-.035em;margin:12px 0}
 .home-layout-v35 .tutoring-hero .hero-subtitle{font-size:14px;max-width:100%}
 .home-layout-v35 .tutoring-hero .hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-layout-v35 .tutoring-hero .hero-actions .btn{font-size:13px;padding:10px;min-height:45px}
 .home-layout-v35 .tutoring-hero .tutoring-status b{font-size:13.5px}
 .home-layout-v35 .tutoring-hero .tutoring-status small{font-size:12px}
 .home-layout-v35 .tutoring-hero .photo-card,.home-layout-v35 .tutoring-hero .photo-card img{height:280px;min-height:280px}
 .home-layout-v35 .tutoring-hero .hero-chip{font-size:12px}
 .home-layout-v35 .section-head p{font-size:13.5px}
 .home-layout-v35 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .home-layout-v35 .service-card{min-height:176px;padding:15px}
 .home-layout-v35 .service-card h3{font-size:15px}
 .home-layout-v35 .service-card p{font-size:12.5px}
 .home-layout-v35 .about-content{padding:17px}
 .home-layout-v35 .process-track{grid-template-columns:1fr;gap:13px}
 .home-layout-v35 .step-card{min-height:0;display:grid;grid-template-columns:40px 42px minmax(0,1fr);gap:10px;grid-template-areas:"num icon title" "num icon text";padding:15px}
 .home-layout-v35 .step-card h3{font-size:15px;line-height:1.35}
 .home-layout-v35 .step-card p{font-size:12.5px;line-height:1.45}
 .home-layout-v35 .lesson-step p{font-size:13px}
 .home-layout-v35 .materials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-layout-v35 .format-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-layout-v35 .price-card{grid-column:1/-1}
 .home-layout-v35 .mode-card h3{font-size:15px}
 .home-layout-v35 .mode-card p{font-size:13px}
 .home-layout-v35 .desk-card{display:none}
 .home-layout-v35 .faq-item summary{font-size:13.5px;min-height:51px}
 .home-layout-v35 .faq-item div{font-size:13px}
}
@media(max-width:530px){
 .home-layout-v35 .teacher-home-actions,.home-layout-v35 .tutoring-hero .hero-actions{grid-template-columns:1fr}
 .home-layout-v35 .teacher-home-actions .btn,.home-layout-v35 .tutoring-hero .hero-actions .btn{width:100%}
 .home-layout-v35 .school-life-home-actions{display:grid;grid-template-columns:1fr}
 .home-layout-v35 .school-life-home-actions .btn{width:100%}
 .home-layout-v35 .service-grid{grid-template-columns:1fr}
 .home-layout-v35 .service-card{min-height:145px}
 .home-layout-v35 .lesson-steps,.home-layout-v35 .materials-grid,.home-layout-v35 .format-grid{grid-template-columns:1fr}
 .home-layout-v35 .step-card{grid-template-columns:34px 38px minmax(0,1fr)}
 .home-layout-v35 .tutoring-hero .hero-secondary-title{font-size:clamp(28px,8.1vw,41px)}
 .home-layout-v35 .lead-closed-actions{display:grid;grid-template-columns:1fr}
 .home-layout-v35 .lead-closed-actions .btn{width:100%}
 .home-layout-v35 .teacher-home-school{grid-template-columns:38px minmax(0,1fr);gap:9px}
 .home-layout-v35 .teacher-home-photo{height:270px}
 .home-layout-v35 .teacher-class-badge>span{min-width:55px;padding:6px;height:44px;font-size:13px}
 .home-layout-v35 .teacher-class-badge b{font-size:12px}
 .home-layout-v35 .teacher-class-badge small{font-size:11px}
 .home-layout-v35 .tutoring-hero .hero-chips{display:flex;flex-wrap:wrap;gap:6px}
 .home-layout-v35 .tutoring-hero .hero-chip{min-height:32px;padding:7px 10px;font-size:11.5px}
}
@media(max-width:370px){
 .home-layout-v35 .teacher-home h1{font-size:34px}
 .home-layout-v35 .brand-text small{display:none}
 .home-layout-v35 .teacher-home-photo{height:230px}
 .home-layout-v35 .hero.tutoring-hero .hero-secondary-title{font-size:28px}
 .home-layout-v35 .tutoring-hero .photo-card,.home-layout-v35 .tutoring-hero .photo-card img{height:230px;min-height:230px}
}
@media(prefers-reduced-motion:reduce){
 .home-layout-v35 :is(.teacher-home-card,.service-card,.step-card,.material-card,.mode-card){transition:none}
}


/* HOME BLOCKS V37 — compact stages and offline-first lesson format. */
.home-layout-v35 #process,
.home-layout-v35 #price{scroll-margin-top:115px}
.home-layout-v35 .process .section-head{margin-bottom:22px}
.home-layout-v35 .process-track{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:11px;
  align-items:stretch;
  margin-top:0;
}
.home-layout-v35 .process-track::before{display:none}
.home-layout-v35 .process .step-card{
  grid-column:span 2;
  display:grid;
  grid-template-columns:30px 40px minmax(0,1fr);
  grid-template-rows:auto 1fr;
  grid-template-areas:"number icon title" "description description description";
  align-items:center;
  align-content:start;
  gap:9px 11px;
  min-width:0;
  min-height:145px;
  padding:17px 18px;
  text-align:left;
  border-radius:18px;
  background:#fff;
  box-shadow:0 8px 22px rgba(66,45,92,.06);
}
.home-layout-v35 .process .step-card:nth-child(4){grid-column:2/span 2}
.home-layout-v35 .process .step-card:nth-child(5){grid-column:4/span 2}
.home-layout-v35 .process .step-card::after{display:none!important}
.home-layout-v35 .process .step-number{
  position:static;
  grid-area:number;
  transform:none;
  left:auto;top:auto;
  width:29px;height:29px;
  border-radius:9px;
  box-shadow:none;
  font-size:13px;
  line-height:1;
}
.home-layout-v35 .process .step-icon{
  grid-area:icon;
  display:grid;
  place-items:center;
  width:39px;height:39px;
  margin:0;
  font-size:21px;
  border-radius:12px;
}
.home-layout-v35 .process .step-icon .icon{width:20px;height:20px}
.home-layout-v35 .process .step-card h3{
  grid-area:title;
  min-width:0;
  margin:0;
  font-size:18px;
  line-height:1.3;
  letter-spacing:-.02em;
  color:#30223d;
}
.home-layout-v35 .process .step-card p{
  grid-area:description;
  margin:2px 0 0;
  font-size:13.5px;
  line-height:1.5;
  color:#65596f;
  overflow-wrap:break-word;
}

/* Offline is the principal teaching option: large but not tall;
   price is readable and online is expressly secondary. */
.home-layout-v35 .format .section-head{margin-bottom:19px}
.home-layout-v35 .format-grid{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  grid-template-rows:minmax(0,auto) auto;
  align-items:stretch;
  gap:11px;
}
.home-layout-v35 .format-grid .desk-card{display:none!important}
.home-layout-v35 .format .mode-offline-primary{
  grid-column:1;
  grid-row:1/span 2;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:12px;
  min-width:0;
  min-height:285px;
  padding:25px 28px;
  text-align:left;
  background:linear-gradient(135deg,#f2eafa 0%,#faf4ff 65%,#fff8f2 100%);
  border:1px solid rgba(118,77,204,.34);
  border-radius:20px;
  box-shadow:0 12px 28px rgba(97,66,161,.10);
}
.home-layout-v35 .format .mode-offline-primary::after,
.home-layout-v35 .format .mode-online-secondary::after,
.home-layout-v35 .format .price-card::after{display:none!important}
.home-layout-v35 .format-mode-heading{
  display:flex;
  align-items:center;
  gap:11px;
  flex-wrap:wrap;
}
.home-layout-v35 .format-mode-heading .service-icon{
  display:grid;
  place-items:center;
  width:45px;height:45px;
  margin:0;
  border-radius:13px;
  background:#fff;
  color:#7555c9;
  box-shadow:0 3px 12px rgba(94,73,133,.07);
}
.home-layout-v35 .format-mode-heading .service-icon .icon{width:23px;height:23px}
.home-layout-v35 .format-mode-badge{
  display:inline-flex;
  align-items:center;
  min-height:29px;
  padding:5px 11px;
  border:1px solid rgba(118,77,204,.15);
  border-radius:99px;
  background:rgba(255,255,255,.82);
  color:#6541b2;
  font-size:12px;
  line-height:1.25;
  font-weight:850;
}
.home-layout-v35 .format .mode-offline-primary h3{
  margin:0;
  font-size:clamp(22px,2.15vw,30px);
  line-height:1.16;
  font-weight:850;
  color:#2c2040;
}
.home-layout-v35 .format .mode-offline-primary p{
  max-width:560px;
  margin:0;
  font-size:14.5px;
  line-height:1.62;
  color:#554867;
  text-align:left;
}
.home-layout-v35 .format-offline-points{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:2px;
}
.home-layout-v35 .format-offline-points span{
  display:inline-flex;
  align-items:center;
  min-height:31px;
  padding:6px 10px;
  border-radius:9px;
  background:#fff;
  border:1px solid rgba(116,85,198,.16);
  color:#5c477f;
  font-size:12px;
  line-height:1.35;
  font-weight:760;
}
.home-layout-v35 .format .price-card{
  grid-column:2;
  grid-row:1;
  display:flex;
  flex-direction:column;
  gap:12px;
  min-width:0;
  min-height:0;
  padding:18px 20px;
  text-align:left;
  border-radius:20px;
  background:#fffdf9;
  border:1px solid rgba(96,69,117,.15);
  box-shadow:0 8px 20px rgba(65,43,90,.05);
}
.home-layout-v35 .format-price-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:13px;
  flex-wrap:wrap;
}
.home-layout-v35 .format .price-line.large{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:9px;
  margin:0;
  min-width:0;
}
.home-layout-v35 .format .price-line.large b{
  font-size:clamp(32px,3.45vw,47px);
  line-height:1;
}
.home-layout-v35 .format .price-line.large span{
  display:inline;
  margin:0;
  color:#7755bf;
  font-size:13.5px;
  line-height:1.35;
  font-weight:850;
}
.home-layout-v35 .format .lesson-note{
  margin:0;
  padding:0;
  background:none;
  border:0;
  font-size:12px;
  line-height:1.45;
  color:#6c6175;
}
.home-layout-v35 .format .price-card .fact-list.compact{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px 12px;
  margin:0;
}
.home-layout-v35 .format .price-card .fact-list.compact li{
  min-width:0;
  gap:7px;
  font-size:12px;
  line-height:1.4;
  font-weight:650;
  color:#4c4257;
}
.home-layout-v35 .format .price-card .fact-list.compact li span{
  flex:0 0 18px;
  width:18px;height:18px;
  border-radius:6px;
  font-size:11px;
}
.home-layout-v35 .format .mode-online-secondary{
  grid-column:2;
  grid-row:2;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:13px;
  min-width:0;
  min-height:100px;
  padding:14px 18px;
  text-align:left;
  border:1px solid rgba(101,122,165,.17);
  border-radius:20px;
  background:#f4f6fa;
  box-shadow:none;
}
.home-layout-v35 .format .mode-online-secondary .service-icon{
  flex:0 0 42px;
  display:grid;
  place-items:center;
  width:42px;height:42px;
  margin:0;
  background:#fff;
  color:#7180a5;
  border-radius:12px;
}
.home-layout-v35 .mode-online-copy{min-width:0}
.home-layout-v35 .format .mode-online-secondary .format-mode-badge{
  min-height:0;
  padding:0;
  margin:0 0 5px;
  border:0;
  border-radius:0;
  background:none;
  color:#69778d;
  font-size:11px;
}
.home-layout-v35 .format .mode-online-secondary h3{
  margin:0 0 4px;
  font-size:16px;
  line-height:1.3;
  color:#40506a;
}
.home-layout-v35 .format .mode-online-secondary p{
  margin:0;
  font-size:12.5px;
  line-height:1.46;
  color:#68758a;
}

@media(max-width:1100px){
 .home-layout-v35 .process-track{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .home-layout-v35 .process .step-card{grid-column:auto;min-height:136px;padding:15px}
 .home-layout-v35 .process .step-card:nth-child(4){grid-column:auto}
 .home-layout-v35 .process .step-card:nth-child(5){grid-column:1/-1;max-width:calc((100% - 10px)/2);width:100%;justify-self:center}
 .home-layout-v35 .format-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .home-layout-v35 .format .mode-offline-primary{padding:20px;min-height:0}
 .home-layout-v35 .format .price-card{padding:16px}
 .home-layout-v35 .format .price-card .fact-list.compact{grid-template-columns:1fr}
}
@media(max-width:820px){
 .home-layout-v35 .process .section-head{margin-bottom:16px}
 .home-layout-v35 .process-track{grid-template-columns:1fr;gap:8px}
 .home-layout-v35 .process .step-card,
 .home-layout-v35 .process .step-card:nth-child(4),
 .home-layout-v35 .process .step-card:nth-child(5){
   grid-column:1;
   max-width:none;
   width:100%;
   min-height:0;
   grid-template-columns:29px 38px minmax(0,1fr);
   gap:7px 9px;
   padding:12px 14px;
 }
 .home-layout-v35 .process .step-card h3{font-size:16px}
 .home-layout-v35 .process .step-card p{font-size:13px;line-height:1.45}
 .home-layout-v35 .process .step-number{width:28px;height:28px}
 .home-layout-v35 .process .step-icon{width:38px;height:38px}
 .home-layout-v35 .format-grid{grid-template-columns:1fr;grid-template-rows:auto;gap:9px}
 .home-layout-v35 .format .mode-offline-primary,
 .home-layout-v35 .format .price-card,
 .home-layout-v35 .format .mode-online-secondary{
   grid-column:1;
   grid-row:auto;
   min-height:0;
 }
 .home-layout-v35 .format .mode-offline-primary{padding:19px 17px;gap:10px}
 .home-layout-v35 .format .mode-offline-primary h3{font-size:25px}
 .home-layout-v35 .format .mode-offline-primary p{font-size:13.5px;line-height:1.55}
 .home-layout-v35 .format-offline-points span{font-size:11.5px}
 .home-layout-v35 .format .price-card{padding:16px 17px}
 .home-layout-v35 .format .price-card .fact-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
 .home-layout-v35 .format .mode-online-secondary{padding:13px 15px}
 .home-layout-v35 .format .mode-online-secondary p{font-size:12.5px}
}
@media(max-width:500px){
 .home-layout-v35 .format .price-card .fact-list.compact{grid-template-columns:1fr;gap:6px}
 .home-layout-v35 .format-offline-points{gap:5px}
 .home-layout-v35 .format-offline-points span{padding:5px 8px}
 .home-layout-v35 .format .mode-offline-primary h3{font-size:23px}
 .home-layout-v35 .format .price-line.large b{font-size:36px}
}


/* HOME FORMAT V38 — compact three-card row with subtle retained photo. */
.home-layout-v35 .format .section-head{margin-bottom:14px}
.home-layout-v35 .format-grid{
  display:grid;
  grid-template-columns:minmax(0,1.16fr) minmax(0,1.03fr) minmax(0,.88fr);
  grid-template-rows:auto;
  gap:12px;
  align-items:start;
}
.home-layout-v35 .format .mode-offline-primary,
.home-layout-v35 .format .price-card,
.home-layout-v35 .format .mode-online-secondary{
  grid-column:auto;
  grid-row:auto;
  min-width:0;
  min-height:0;
  height:auto;
  border-radius:19px;
  overflow:hidden;
}
.home-layout-v35 .format .mode-offline-primary{
  isolation:isolate;
  position:relative;
  display:flex;
  align-items:flex-start;
  justify-content:flex-start;
  flex-direction:column;
  gap:9px;
  padding:19px 21px 18px;
  text-align:left;
  background:
    radial-gradient(circle at 85% 15%,rgba(133,98,221,.11),transparent 42%),
    linear-gradient(130deg,#f4ecfc 0%,#fcf8ff 60%,#fff9f2 100%);
  border:1px solid rgba(122,84,205,.27);
  box-shadow:0 8px 25px rgba(82,52,140,.09);
}
.home-layout-v35 .format .mode-offline-primary > :not(.format-offline-photo){
  position:relative;
  z-index:1;
}
.home-layout-v35 .format .format-offline-photo{
  position:absolute;
  display:block;
  right:0;
  top:0;
  bottom:0;
  width:52%;
  height:100%;
  z-index:0;
  object-fit:cover;
  object-position:center;
  opacity:.16;
  filter:saturate(.8);
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 78%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 78%);
  pointer-events:none;
}
.home-layout-v35 .format .mode-offline-primary .format-mode-heading{
  gap:9px;
}
.home-layout-v35 .format .mode-offline-primary .format-mode-heading .service-icon{
  width:40px;
  height:40px;
  border-radius:12px;
}
.home-layout-v35 .format .mode-offline-primary .format-mode-heading .service-icon .icon{
  width:21px;
  height:21px;
}
.home-layout-v35 .format .mode-offline-primary .format-mode-badge{
  min-height:27px;
  padding:4px 9px;
  font-size:11px;
}
.home-layout-v35 .format .mode-offline-primary h3{
  margin:1px 0 0;
  font-size:clamp(22px,2.04vw,28px);
  line-height:1.15;
}
.home-layout-v35 .format .mode-offline-primary p{
  margin:0;
  max-width:none;
  font-size:13px;
  line-height:1.5;
  color:#514561;
}
.home-layout-v35 .format .format-offline-points{
  margin:1px 0 0;
  gap:5px;
}
.home-layout-v35 .format .format-offline-points span{
  min-height:27px;
  padding:5px 8px;
  font-size:11px;
  line-height:1.3;
  border-radius:8px;
  background:rgba(255,255,255,.86);
  color:#574476;
}
.home-layout-v35 .format .price-card{
  position:relative;
  display:flex;
  align-items:stretch;
  flex-direction:column;
  gap:10px;
  padding:18px;
  background:
    radial-gradient(circle at 100% 0%,rgba(217,186,142,.13),transparent 38%),
    linear-gradient(135deg,#fffaf3,#fff);
  border:1px solid rgba(111,81,131,.14);
  box-shadow:0 6px 20px rgba(74,47,97,.06);
}
.home-layout-v35 .format .format-price-head{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:5px;
}
.home-layout-v35 .format .price-line.large{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:7px;
  margin:0;
}
.home-layout-v35 .format .price-line.large b{
  font-size:clamp(34px,3.35vw,46px);
  line-height:1;
}
.home-layout-v35 .format .price-line.large span{
  display:inline;
  margin:0;
  font-size:12.5px;
  line-height:1.35;
}
.home-layout-v35 .format .price-card .lesson-note{
  margin:0;
  font-size:12px;
  line-height:1.45;
}
.home-layout-v35 .format .price-card .fact-list.compact{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  margin:0;
}
.home-layout-v35 .format .price-card .fact-list.compact li{
  min-width:0;
  font-size:12px;
  line-height:1.38;
}
.home-layout-v35 .format .mode-online-secondary{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:flex-start;
  gap:10px;
  padding:18px;
  text-align:left;
  background:
    radial-gradient(circle at 90% 10%,rgba(114,145,198,.12),transparent 44%),
    linear-gradient(135deg,#f5f8fd,#f0f4fa);
  border:1px solid rgba(106,125,163,.18);
  box-shadow:none;
}
.home-layout-v35 .format .mode-online-secondary .service-icon{
  width:42px;
  height:42px;
  flex:0 0 42px;
  border-radius:12px;
  margin:0;
}
.home-layout-v35 .format .mode-online-secondary .format-mode-badge{
  margin:0 0 5px;
  font-size:11px;
  line-height:1.3;
}
.home-layout-v35 .format .mode-online-secondary h3{
  font-size:16px;
  line-height:1.28;
  margin:0 0 5px;
}
.home-layout-v35 .format .mode-online-secondary p{
  margin:0;
  font-size:12px;
  line-height:1.48;
  color:#657388;
}
@media(max-width:1100px){
  .home-layout-v35 .format-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
  .home-layout-v35 .format .mode-offline-primary,
  .home-layout-v35 .format .price-card{
    grid-column:auto;
    grid-row:auto;
    padding:17px;
  }
  .home-layout-v35 .format .mode-online-secondary{
    grid-column:1/-1;
    grid-row:auto;
    flex-direction:row;
    gap:12px;
    align-items:center;
    padding:14px 17px;
  }
  .home-layout-v35 .format .mode-online-secondary .service-icon{flex:0 0 42px}
}
@media(max-width:820px){
  .home-layout-v35 .format-grid{
    grid-template-columns:1fr;
    grid-template-rows:auto;
    gap:9px;
  }
  .home-layout-v35 .format .mode-offline-primary,
  .home-layout-v35 .format .price-card,
  .home-layout-v35 .format .mode-online-secondary{
    grid-column:1;
    grid-row:auto;
    min-height:0;
    padding:15px 16px;
  }
  .home-layout-v35 .format .mode-offline-primary h3{font-size:23px}
  .home-layout-v35 .format .mode-offline-primary p{font-size:13.5px}
  .home-layout-v35 .format .mode-online-secondary{
    flex-direction:row;
    align-items:center;
  }
  .home-layout-v35 .format .price-line.large b{font-size:36px}
}
@media(max-width:500px){
  .home-layout-v35 .format .mode-online-secondary{
    gap:10px;
    padding:13px;
  }
  .home-layout-v35 .format .mode-offline-primary .format-offline-photo{
    width:70%;
    opacity:.12;
  }
  .home-layout-v35 .format .price-card .fact-list.compact{
    grid-template-columns:1fr;
    gap:6px;
  }
}


/* HOME BOOKING PHOTO V39 — fill former empty right-hand booking cell. */
.home-layout-v35 .booking.booking-closed{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.home-layout-v35 .booking.booking-closed .booking-copy,
.home-layout-v35 .booking.booking-closed .calendar-widget,
.home-layout-v35 .booking.booking-closed .booking-closed-panel,
.home-layout-v35 .booking.booking-closed .booking-closed-photo{min-width:0}
.home-layout-v35 .booking.booking-closed .booking-closed-photo{
  position:relative;
  align-self:stretch;
  display:block;
  min-height:300px;
  height:100%;
  margin:0;
  padding:0;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(107,75,147,.14);
  border-radius:26px;
  background:linear-gradient(135deg,#f3ecfb,#faf5ff);
  box-shadow:0 12px 30px rgba(76,52,108,.09);
}
.home-layout-v35 .booking.booking-closed .booking-closed-photo img{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .4s ease;
}
.home-layout-v35 .booking.booking-closed .booking-closed-photo::after{
  content:"";
  pointer-events:none;
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(0deg,rgba(37,22,53,.55),transparent 43%),
             linear-gradient(125deg,rgba(135,104,196,.09),transparent 50%);
}
.home-layout-v35 .booking.booking-closed .booking-closed-photo figcaption{
  position:absolute;
  bottom:18px;
  left:19px;
  right:19px;
  z-index:2;
  max-width:100%;
  color:#fff;
  font-size:16px;
  font-weight:850;
  line-height:1.25;
  text-shadow:0 2px 12px rgba(28,15,43,.38);
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .home-layout-v35 .booking.booking-closed .booking-closed-photo:hover img{transform:scale(1.025)}
}
@media(max-width:980px){
  .home-layout-v35 .booking.booking-closed{
    grid-template-columns:1fr;
    gap:12px;
  }
  .home-layout-v35 .booking.booking-closed .booking-closed-photo{
    height:250px;
    min-height:250px;
    border-radius:22px;
  }
}
@media(max-width:600px){
  .home-layout-v35 .booking.booking-closed .booking-closed-photo{
    height:205px;
    min-height:205px;
    border-radius:19px;
  }
  .home-layout-v35 .booking.booking-closed .booking-closed-photo figcaption{
    bottom:14px;left:15px;right:15px;font-size:14px;
  }
}
