.calendar-agenda{display:none}
.party-mobile-apply{display:none}

@media(min-width:761px) and (max-width:900px){
  .site-header .desktop-nav,.site-header .header-cta{display:none}
  .site-header .menu-button{margin-left:auto;width:42px;height:42px;background:none;border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}
  .site-header .menu-button span{width:23px;height:1.5px;background:#fff}
  .site-header .mobile-nav:not([hidden]){display:flex;flex-direction:column;padding:10px 24px 22px;background:#151a16;border-top:1px solid rgba(255,255,255,.15)}
  .site-header .mobile-nav a{padding:10px 0;font-size:15px}
  .reviews-page .reviews-back-link{display:block;margin-left:auto}
}

@media(max-width:760px){
  html{scroll-padding-top:68px}
  .home-page .hero{height:auto;max-height:none;min-height:0;background:#111916}
  .home-page .hero-image{height:365px;bottom:auto;background-position:center 38%}
  .home-page .hero-shade{background:linear-gradient(180deg,rgba(4,8,7,.3) 0%,rgba(4,8,7,.08) 24%,rgba(6,12,10,.7) 42%,#111916 56%,#111916 100%)}
  .home-page .hero-inner{height:auto;min-height:710px;justify-content:flex-start;padding-top:315px;padding-bottom:44px}
  .home-page .hero-eyebrow{margin-bottom:12px;font-size:11px}
  .home-page .hero h1{font-size:clamp(35px,9vw,48px);line-height:1.22;max-width:480px}
  .home-page .hero h1 em{display:inline}
  .home-page .hero-copy{font-size:14px;line-height:1.7;margin:15px 0 23px;max-width:480px}
  .home-page .hero-actions{width:100%;display:grid;gap:17px}
  .home-page .hero-actions .button{width:100%;min-height:54px;justify-content:space-between}
  .home-page .hero-actions .text-link{justify-self:start}
  .home-page .hero-note{margin-top:20px;font-size:12px}
  .home-page .intro{padding-block:60px 51px}
  .home-page .intro-body{padding-top:18px}
  .home-page .intro-body>p:first-child{font-size:16px;line-height:1.85}
  .home-page .section-heading h2,.home-page .how-heading h2{font-size:clamp(31px,8vw,39px);line-height:1.33;margin-top:13px}
  .home-page .matching-section{padding-block:56px 55px;scroll-margin-top:65px}
  .home-page .calendar-section{padding-block:56px 59px;scroll-margin-top:65px}
  .home-page .participants-section{padding-block:59px 66px;scroll-margin-top:65px}
  .home-page .matching-heading,.home-page .calendar-heading,.home-page .participants-heading{text-align:left}
  .home-page .matching-heading h2,.home-page .calendar-heading h2,.home-page .participants-heading h2{font-size:clamp(30px,8vw,38px);margin:10px 0 9px;line-height:1.3}
  .home-page .matching-heading>p:last-child,.home-page .calendar-heading>p:last-child,.home-page .participants-heading>p:last-child{font-size:14px;line-height:1.7}
  .home-page .matching-list-meta{margin:30px 0 16px;padding-bottom:10px}
  .home-page .event-party-card{border-radius:20px;padding:22px 20px 20px;box-shadow:0 9px 30px #1c383006}
  .home-page .event-party-card h3{font-size:25px;margin:19px 0 4px}
  .home-page .event-party-card .matching-card-copy{font-size:14px;margin-bottom:15px}
  .home-page .event-party-card dl{margin-bottom:12px}
  .home-page .event-party-card dl div{grid-template-columns:68px minmax(0,1fr);gap:10px;padding:8px 0;font-size:13px}
  .home-page .event-party-card dd{word-break:keep-all;overflow-wrap:break-word}
  .home-page .matching-applicant-counts{font-size:13px;padding:13px 0;margin-bottom:15px}
  .home-page .event-party-card .matching-card-button{min-height:52px}
  .home-page .calendar-panel{margin-top:26px;padding:14px;border-radius:18px}
  .home-page .calendar-toolbar{margin-bottom:17px}
  .home-page .calendar-toolbar h3{font-size:17px}
  .home-page .calendar-controls button{width:38px;height:38px}
  .home-page .calendar-today{min-height:38px;padding:0 11px}
  .home-page .calendar-table th{height:35px;font-size:11px}
  .home-page .calendar-table td{height:57px;padding:5px 3px;font-size:12px}
  .home-page .calendar-table td:has(.calendar-event){height:57px}
  .home-page .calendar-table time{display:block;text-align:center}
  .home-page .calendar-event{width:80%;height:17px;min-height:17px;margin:5px auto 0;padding:0;border-radius:5px;font-size:0;line-height:0}
  .home-page .calendar-agenda:not(:empty){display:grid;gap:9px;margin-top:19px}
  .home-page .calendar-agenda-heading{font-size:15px;margin:0 0 2px;letter-spacing:-.03em}
  .home-page .calendar-agenda-card{display:flex;align-items:center;gap:13px;min-height:69px;padding:10px 12px;border:1px solid #e4eae9;border-radius:12px;background:#f8fbfa}
  .home-page .calendar-agenda-card:active{background:#e8f6f1}
  .home-page .calendar-agenda-date{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 43px;min-height:45px;border-radius:8px;background:#e0f3ed;color:#1f725d;line-height:1.15}
  .home-page .calendar-agenda-date strong{font-size:18px}
  .home-page .calendar-agenda-date small{font-size:10px;font-weight:700;margin-top:3px}
  .home-page .calendar-agenda-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
  .home-page .calendar-agenda-copy strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .home-page .calendar-agenda-copy small{font-size:11px;color:#697870;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .home-page .calendar-agenda-arrow{margin-left:auto;color:#23866c;font-size:18px}
  .home-page .participants-marquee{margin-top:25px}
  .home-page .how{padding-block:63px 68px}
  .home-page .steps{margin-top:33px}
  .home-page .step{margin-bottom:22px}
  .home-page .faq{padding-block:63px 69px}
  .home-page .faq .section-heading h2{font-size:35px}
  .home-page .faq-list{margin-top:25px}
  .home-page .reviews-section{padding-block:61px 67px}
  .home-page .reviews-heading{text-align:left;margin-bottom:27px}
  .home-page .reviews-heading h2{font-size:32px;margin:10px 0 8px}
  .home-page .reviews-heading>p:last-child{font-size:14px;line-height:1.7}
  .site-footer .footer-inner{padding-block:42px 48px}
  .site-footer .footer-brand{font-size:18px;gap:10px}
  .site-footer .footer-brand .brand-logo{width:54px;height:54px}
  .site-footer p{margin:12px 0 0;font-size:13px}
  .site-footer .footer-right{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px;margin-top:32px}
  .site-footer .footer-right a{font-size:13px}
  .site-footer .footer-right small{grid-column:1/-1;margin:8px 0 0;text-align:left}
  .party-page .party-breadcrumb{padding-block:18px 17px}
  .party-page .party-breadcrumb a{font-size:12px}
  .party-page .party-intro{padding-bottom:55px}
  .party-page .party-cover img{height:250px;border-radius:18px;object-position:center 43%}
  .party-page .party-cover-badge{top:14px;left:14px;padding:7px 12px;font-size:11px}
  .party-page .party-summary{padding-top:22px}
  .party-page .party-summary h1{font-size:30px;margin:8px 0 6px;line-height:1.35}
  .party-page .party-lead{font-size:14px;line-height:1.7;margin:0 0 17px}
  .party-page .party-facts div{padding:10px 0}
  .party-page .party-facts dt{font-size:13px}
  .party-page .party-facts dd{font-size:14px}
  .party-page .party-capacity{margin:12px 0 13px;padding-bottom:12px}
  .party-page .party-apply-note{padding:13px 15px}
  .party-page .party-actions{margin-top:13px}
  .party-page .party-actions a{min-height:48px}
  .party-page .party-roster-heading{text-align:left}
  .party-page .party-roster-heading h2{font-size:30px}
  .party-page .party-notice{margin-bottom:66px}
  .party-page .party-editorial{padding-block:0 68px}
  .party-page .party-editorial h2{font-size:32px}
  .party-page .party-join-card,.party-page .party-timeline{padding:38px 22px;border-radius:20px}
  .party-page .party-gallery{padding-block:70px}
  .party-page .party-gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none;gap:11px}
  .party-page .party-gallery .gallery-main{grid-column:auto;grid-row:auto}
  .party-page .party-gallery .gallery-main img{height:auto;aspect-ratio:4/3;object-fit:cover}
  .party-page .party-gallery .gallery-side img{height:auto;aspect-ratio:16/10;object-fit:cover}
  .party-page .party-gallery .gallery-quote{min-height:155px;border-radius:0 0 15px 15px}
  .party-page .party-gallery .gallery-quote p{font-size:23px}
  .party-page .party-timeline{margin-bottom:72px}
  .party-page .party-checks{margin-bottom:72px}
  .party-page .party-application-grid{padding-block:66px 74px}
  .party-page .party-application-copy h2{font-size:39px;line-height:1.25;margin:12px 0}
  .party-page .party-application-copy>p:not(.party-overline){font-size:14px;line-height:1.7}
  .party-page .party-application-aside{margin:19px 0 25px;padding-top:13px;font-size:13px}
  .party-page .party-application .form-panel{padding:25px 21px 28px}
  .party-page .party-mobile-apply:not([hidden]){display:block;position:fixed;left:0;right:0;bottom:0;z-index:50;padding:11px 18px calc(11px + env(safe-area-inset-bottom));background:rgba(248,249,252,.96);border-top:1px solid #dae5e3;box-shadow:0 -9px 25px #0d2d2720;backdrop-filter:blur(14px)}
  .party-page .party-mobile-apply a{min-height:50px;display:flex;align-items:center;justify-content:space-between;padding:0 19px;border-radius:10px;background:#101b19;color:white;font-size:14px;font-weight:800}
  .reviews-page .reviews-board{padding-block:62px 70px;min-height:330px}
  .reviews-page .reviews-heading{text-align:left;margin-bottom:27px}
  .reviews-page .reviews-heading h1,.reviews-page .reviews-heading h2{font-size:32px;margin:10px 0 8px}
  .reviews-page .reviews-heading>p:last-child{font-size:14px;line-height:1.7}
  .reviews-page .board-toolbar{margin-bottom:14px;font-size:13px}
  .reviews-page .review-write-shell{padding-block:65px 76px}
  .reviews-page .review-write-intro h2{font-size:36px;line-height:1.25;margin:12px 0}
  .reviews-page .review-write-intro>p:last-child{font-size:14px}
  .reviews-page .review-form{border-radius:17px;padding:23px 20px}
  .reviews-page .review-form input,.reviews-page .review-form select,.reviews-page .review-form textarea{font-size:16px;min-height:48px}
}

@media(max-width:390px){
  .home-page .hero-inner{padding-top:290px;min-height:690px}
  .home-page .hero-image{height:345px}
  .home-page .calendar-panel{padding:10px}
  .home-page .calendar-toolbar h3{font-size:16px}
  .home-page .calendar-controls{gap:4px}
  .home-page .calendar-controls button{width:34px;height:36px}
  .home-page .calendar-today{min-height:36px}
  .home-page .event-party-card dl div{grid-template-columns:58px minmax(0,1fr);gap:8px}
  .party-page .party-cover img{height:230px}
}

@media(max-width:360px){
  .home-page .hero h1{font-size:35px}
  .home-page .hero h1 em{display:block}
}
