.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:45px}.section-heading>p{max-width:370px;font-size:16px}.methods{background:#e9ede4}.method-feature{display:grid;grid-template-columns:1.22fr 1fr;background:var(--paper)}.session-image{position:relative;min-height:445px}.session-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.session-image span{position:absolute;bottom:20px;left:24px;color:white;font-size:10px;letter-spacing:.14em;text-shadow:0 1px 5px #000}.fst-copy{padding:42px 45px}.section-number{font-size:11px;letter-spacing:.12em;color:#637357;display:block;margin-bottom:20px}.fst-copy h3{font-family:var(--serif);font-size:42px;letter-spacing:-.035em;line-height:1.1;margin-bottom:24px}.fst-copy>p{font-size:16px}.fst-copy .method-detail{font-size:12px;color:#6a756a;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.fst-copy .text-link{margin-top:15px}.method-pair{display:grid;grid-template-columns:1fr 1fr;margin-top:0;background:var(--paper);border-top:1px solid var(--line)}.method-pair article{padding:30px 42px 36px}.method-pair article+article{border-left:1px solid var(--line)}.method-pair .section-number{margin-bottom:12px}.method-pair h3{font-family:var(--serif);font-size:29px;letter-spacing:-.03em;margin-bottom:12px}.method-pair p{font-size:15px;max-width:460px}.supporting-methods{margin-top:40px;display:grid;grid-template-columns:.6fr 1fr 1fr;gap:36px;padding-bottom:25px;border-bottom:1px solid #cbd3c3}.supporting-methods>.eyebrow{font-size:10px;line-height:1.8;margin-top:4px}.supporting-methods h4{font-size:16px;margin:0 0 10px;font-weight:500}.supporting-methods p:not(.eyebrow){font-size:14px;line-height:1.7}.tools-note{font-size:12px;margin-top:20px}.featured-sports{display:grid;grid-template-columns:1fr 1fr;gap:28px}.sport-card{background:#fff;border:1px solid #e1e3d9}.sport-photo{height:315px;position:relative;overflow:hidden}.sport-photo img{width:100%;height:100%;object-fit:cover;object-position:75% center;transition:transform .4s}.sport-card:hover .sport-photo img{transform:scale(1.02)}.sport-photo span{position:absolute;left:20px;bottom:20px;color:white;font-size:11px;letter-spacing:.13em;padding:7px 10px;background:#18372fdb}.sport-card-copy{padding:25px 28px 14px}.sport-card h3{font-size:29px;line-height:1.2;letter-spacing:-.03em;font-family:var(--serif);margin-bottom:14px}.sport-card p{font-size:15px}.sport-card details{margin-top:22px;border-top:1px solid var(--line)}details summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:17px;padding:22px 0;line-height:1.4}details summary::-webkit-details-marker{display:none}details summary>span{font-size:24px;font-weight:300;flex-shrink:0;transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}.sport-card summary{font-size:14px;font-weight:600;padding-block:15px}.detail-body{padding:0 0 24px}.detail-body p+p{margin-top:15px}.detail-body p{font-size:15px;line-height:1.75}.detail-body .text-link{font-size:14px;margin-top:10px}.other-sports{display:grid;grid-template-columns:.5fr 2fr;gap:40px;margin-top:40px;padding-top:25px;border-top:1px solid var(--line)}.other-sports>.eyebrow{font-size:10px;padding-top:23px}.sport-list{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;align-items:start}.sport-list details{border-bottom:1px solid var(--line)}.sport-list summary{font-size:16px;padding-block:17px}.conditions{background:#edece6}.conditions-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.conditions-intro>p:not(.eyebrow){margin-top:25px;max-width:385px}.conditions-intro .text-link{font-size:14px;margin-top:24px}.condition-list details{border-top:1px solid #c9cfc4}.condition-list details:last-of-type{border-bottom:1px solid #c9cfc4}.condition-list summary{font-size:19px;padding-block:25px}.care-note{font-size:12px;margin-top:25px;color:#677266;line-height:1.7}.practitioner{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px;align-items:center}.portrait-wrap{position:relative;height:580px;background:#d2d9d0}.portrait-wrap>img{width:100%;height:100%;object-fit:cover;object-position:62% center}.portrait-caption{position:absolute;bottom:0;left:0;right:0;padding:24px 30px;background:linear-gradient(transparent,#15302be8);color:white}.portrait-caption strong{font-weight:400;font-family:var(--serif);font-size:25px;display:block}.portrait-caption span{font-size:10px;letter-spacing:.13em}.practitioner-copy .large-copy{margin:25px 0 20px;color:var(--ink)}.practitioner-copy>p+p{margin-top:17px}.credentials{display:flex;flex-wrap:wrap;gap:12px 25px;margin:25px 0 14px;border-top:1px solid var(--line);padding-top:22px;font-size:12px}.testimonial{background:#e6ebdf;padding:65px 0;text-align:center}.testimonial .eyebrow{font-size:10px}.testimonial blockquote{font-family:var(--serif);font-size:clamp(1.6rem,2.6vw,2.5rem);line-height:1.35;letter-spacing:-.025em;max-width:900px;margin:0 auto 25px}.quote-credit{font-size:10px;letter-spacing:.12em}.testimonial .text-link{font-size:13px;padding:8px 0;margin-top:12px;gap:15px;border-bottom:0}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;padding-top:18px}.steps-grid article{border-top:1px solid #a9b8a0;padding-top:25px}.steps-grid article>span{font-family:var(--serif);font-size:28px;color:#71836a}.steps-grid h3{font-family:var(--serif);font-size:29px;letter-spacing:-.03em;margin:18px 0 16px}.steps-grid p{font-size:15px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px}.faq>div>p:not(.eyebrow){margin-top:25px;font-size:14px}.faq>div>p a{text-decoration:underline;text-underline-offset:4px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-size:17px}.closing{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding-block:50px;display:flex;justify-content:space-between;gap:35px;align-items:center}.closing h2{font-size:40px}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:25px;display:flex;justify-content:space-between;gap:40px;font-size:12px;color:#697769}.footer-bottom details{max-width:450px;text-align:right}.footer-bottom summary{padding:0;font-size:12px;display:block;text-decoration:underline;text-underline-offset:4px}.footer-bottom details p{margin-top:10px;font-size:12px}.header-book,.scene-button{font-size:14px}.returning{font-size:14px}
@media(max-width:1100px){.section-heading{gap:40px}.section-heading>p{max-width:320px;font-size:15px}.conditions-grid,.practitioner,.faq{gap:50px}.fst-copy{padding:35px 30px}.sport-photo{height:260px}.portrait-wrap{height:500px}.steps-grid{gap:30px}.supporting-methods{grid-template-columns:1fr 1fr}.supporting-methods>.eyebrow{grid-column:1/-1;margin-bottom:-20px}.method-pair article{padding:30px}.condition-list summary{font-size:17px}}@media(max-width:760px){.section-heading{display:block;margin-bottom:30px}.section-heading>p{margin-top:22px;max-width:none}.method-feature,.method-pair,.featured-sports,.conditions-grid,.practitioner,.steps-grid,.faq{grid-template-columns:1fr}.session-image{min-height:270px}.session-image span{font-size:8px;left:16px;bottom:17px}.fst-copy{padding:30px 25px}.fst-copy h3{font-size:36px}.method-pair article{padding:27px 25px}.method-pair article+article{border-left:0;border-top:1px solid var(--line)}.supporting-methods{grid-template-columns:1fr;gap:24px}.supporting-methods>.eyebrow{grid-column:auto;margin-bottom:0}.tools-note{font-size:12px}.sport-photo{height:270px}.sport-card-copy{padding:23px 22px 12px}.sport-card h3{font-size:27px}.featured-sports{gap:24px}.other-sports{grid-template-columns:1fr;gap:0;margin-top:35px;padding-top:15px}.other-sports>.eyebrow{margin-bottom:5px}.sport-list{column-gap:24px}.sport-list summary{font-size:14px}.sport-list summary>span{font-size:20px}.sport-list .detail-body p{font-size:14px}.conditions-grid,.practitioner,.faq{gap:35px}.conditions-intro h2 br:nth-child(1){display:none}.condition-list summary{font-size:17px}.portrait-wrap{height:440px;max-width:500px}.practitioner-copy .large-copy{font-size:20px}.testimonial{padding:50px 0}.testimonial blockquote{font-size:27px}.steps-grid{gap:30px;padding-top:0}.steps-grid article{padding-top:18px}.steps-grid article>span{font-size:22px}.steps-grid h3{margin:10px 0;font-size:27px}.faq-list summary{font-size:16px}.closing{display:block;padding-block:40px}.closing h2{font-size:36px}.closing .button{margin-top:25px;font-size:13px;width:100%;max-width:350px}.footer-bottom{flex-direction:column;gap:15px}.footer-bottom details{text-align:left}.hero-scenes{gap:10px}.hero-scenes .scene-button{font-size:13px}}
