:root{--ink:#243e57;--paper:#f3f8fc;--blue:#dcecf7;--sky:#b6d5e7;--accent:#8e5f76;--line:rgba(36,62,87,.18);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 var(--sans)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500;line-height:1.08}h1,h2{font-family:var(--serif)}.eyebrow{text-transform:uppercase;font-size:.68rem;letter-spacing:.18em;font-weight:600}.brand{color:inherit;text-decoration:none;display:flex;flex-direction:column;line-height:.85;letter-spacing:.1em;text-transform:uppercase}.brand b{font-size:1.3rem}.brand small{font-size:.55rem;letter-spacing:.25em;margin-top:.4rem}header{height:76px;position:absolute;z-index:3;width:100%;padding:0 clamp(1.25rem,5vw,5rem);color:#fff;display:flex;align-items:center;justify-content:space-between}nav{display:flex;gap:2rem}nav a{color:inherit;text-decoration:none;text-transform:uppercase;font-size:.72rem;letter-spacing:.08em}.menu{display:none}.hero{height:min(820px,100vh);min-height:640px;background:#50758e;color:#fff;position:relative}.photo{position:relative;overflow:hidden;background:linear-gradient(135deg,#91bad3,#365b75 55%,#c2a79e)}.photo:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 68% 48%,transparent,rgba(16,44,64,.25)),linear-gradient(115deg,transparent 38%,rgba(255,255,255,.17) 38.2% 39%,transparent 39.2%)}.photo span{position:absolute;z-index:1;bottom:16px;left:16px;padding:4px 7px;background:rgba(25,50,70,.48);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#fff}.hero-photo{position:absolute;inset:0}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,53,75,.76),rgba(23,53,75,.09) 72%)}.hero-copy{position:relative;z-index:1;max-width:810px;padding:clamp(10rem,20vh,14rem) clamp(1.25rem,10vw,10rem)}.hero h1{font-size:clamp(3.3rem,8vw,7rem);letter-spacing:-.05em;margin-bottom:1.8rem}.hero-copy>p:not(.eyebrow){font-size:1.15rem;max-width:500px}.actions{display:flex;align-items:center;gap:1.5rem;margin-top:2rem}.button{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;padding:.9rem 1.45rem;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;font-weight:600}.light{background:#fff;color:var(--ink)}.text-link{color:inherit;text-decoration:none;border-bottom:1px solid;padding-bottom:.2rem;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em}.light-link{color:#fff}.section{padding:clamp(4.5rem,10vw,9rem) clamp(1.25rem,10vw,10rem)}.num{font-size:.75rem;color:var(--accent);letter-spacing:.12em}.method{display:grid;grid-template-columns:10% 43% 37%;gap:5%}.method h2,.section-title h2,.about h2,.services h2,.media h2,.contact h2{font-size:clamp(2.65rem,5vw,5rem);letter-spacing:-.045em}.method>div:nth-child(3){padding-top:3.5rem}.method-steps{grid-column:2/4;list-style:none;padding:2rem 0 0;margin:3rem 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.method-steps li{border-right:1px solid var(--line);padding-right:1rem}.method-steps li:last-child{border:0}.method-steps span,.service-grid article>span{font-size:.68rem;color:var(--accent);letter-spacing:.1em}.method-steps h3{font:500 1.5rem var(--serif);margin:1.6rem 0 .7rem}.method-steps p{font-size:.8rem;line-height:1.45}.statement{min-height:600px;position:relative;color:#fff;display:flex;align-items:end}.training-photo{position:absolute;inset:0;background:linear-gradient(120deg,#bddced,#547e99 50%,#294f68)}.statement>div:last-child{position:relative;z-index:1;padding:clamp(3rem,8vw,7rem) clamp(1.25rem,10vw,10rem);max-width:800px}.statement h2{font:500 clamp(3rem,6vw,6rem) var(--serif);letter-spacing:-.05em}.services{background:#d3e7f4}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:4rem}.service-grid article{border-top:1px solid var(--line);padding-top:1.25rem}.service-grid h3{font:500 1.8rem var(--serif);margin:2.4rem 0 1.1rem}.service-grid p{font-size:.87rem;min-height:140px}.service-grid a,.story-grid button,.story-grid a{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:inherit;border:0;background:transparent;padding:0;text-decoration:none;cursor:pointer}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:3.5rem}.section-title>p{max-width:270px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:var(--line)}.story-grid article{background:var(--paper)}.story-photo{height:310px}.story-grid article:nth-child(2) .photo{background:linear-gradient(135deg,#a4c7d9,#627b99 55%,#cfaf98)}.story-grid article:nth-child(3) .photo{background:linear-gradient(135deg,#d5eaf2,#6d9ab5 60%,#9f7c91)}.story-grid article>div:last-child{padding:1.5rem}.story-grid h3{font:500 1.9rem var(--serif);margin:.5rem 0}.story-grid p:not(.eyebrow){font-size:.87rem;min-height:54px}.about{background:#eaf3f9}.about-main{display:grid;grid-template-columns:39% 51%;gap:10%;margin-top:-1rem}.portrait{min-height:570px;background:linear-gradient(135deg,#829fb3,#cea795 65%,#e2c9b4)}.about-main>div:last-child{padding-top:3rem}.media{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:clamp(4rem,8vw,7rem) clamp(1.25rem,10vw,10rem);background:#8fbad2}.media>div:last-child{align-self:end}.media h2{margin-bottom:0}.media p:not(.eyebrow){max-width:430px}.contact{display:grid;grid-template-columns:1fr 1fr;background:#c4ddeb}.contact-photo{min-height:600px;background:linear-gradient(135deg,#456f8a,#bf9b88 55%,#d9d6c5)}.contact>div:last-child{padding:clamp(4rem,10vw,9rem) clamp(2rem,8vw,8rem);align-self:center}.contact small{display:block;margin-top:1rem;font-size:.67rem;color:#496478}footer{background:#243e57;color:#fff;padding:3rem clamp(1.25rem,5vw,5rem);display:grid;grid-template-columns:1fr auto 2fr;gap:2rem}footer p{font-size:.7rem;color:#d6e6f0;margin:0}dialog{background:var(--paper);border:0;max-width:520px;width:calc(100% - 2rem);padding:3rem;box-shadow:0 20px 50px rgba(0,0,0,.25)}dialog::backdrop{background:rgba(25,54,75,.65)}dialog button{position:absolute;right:1rem;top:.8rem;border:0;background:none;font-size:2rem}dialog h2{font:500 2.5rem var(--serif)}.story-detail{line-height:1.6}
.hero{background:#cbe6f5;color:var(--ink)}header{color:var(--ink)}.hero-photo{background:linear-gradient(135deg,#d8eff9,#80adc8 55%,#d8bbb0)}.hero:after{background:linear-gradient(90deg,rgba(229,244,252,.78),rgba(229,244,252,.13) 72%)}.light{background:var(--ink);color:#fff}.light-link{color:var(--ink)}
@media(max-width:760px){header{height:68px}.menu{display:block;background:none;border:0;color:var(--ink);font-size:1.4rem}nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--ink);color:#fff;padding:1.5rem;flex-direction:column}nav.open{display:flex}.method,.about-main,.media,.contact{grid-template-columns:1fr}.method{gap:1.2rem}.method>div:nth-child(3){padding-top:0}.method-steps{grid-column:auto;grid-template-columns:1fr 1fr;margin-top:1rem}.method-steps li:nth-child(2){border-right:0}.method-steps li{padding:1rem 1rem 0 0;border-bottom:1px solid var(--line)}.service-grid,.story-grid{grid-template-columns:1fr}.service-grid{gap:2rem}.service-grid p{min-height:0}.story-photo{height:250px}.about-main>div:last-child{padding-top:2.5rem}.portrait{min-height:420px}.media{gap:2rem}.contact-photo{min-height:320px}footer{grid-template-columns:1fr}.actions{align-items:flex-start;flex-direction:column;gap:1rem}}

.hero-photo{background-image:url("assets/serena-kullich-hero.jpg");background-position:center 54%;background-size:cover}.hero:after{background:linear-gradient(90deg,rgba(236,246,252,.92) 0%,rgba(236,246,252,.65) 34%,rgba(236,246,252,.08) 70%)}@media(max-width:760px){.hero-photo{background-position:center center}.hero:after{background:linear-gradient(0deg,rgba(236,246,252,.92) 0%,rgba(236,246,252,.15) 75%)}}

.hero-copy{max-width:650px;background:rgba(238,247,252,.84);padding:2.5rem 3rem 2.75rem;margin-left:clamp(1.25rem,7vw,7rem);border-left:3px solid rgba(36,62,87,.55);box-shadow:0 18px 45px rgba(36,62,87,.14)}.hero-copy .actions{margin-bottom:0}@media(max-width:760px){.hero-copy{margin-left:1.25rem;margin-right:1.25rem;padding:2rem 1.5rem 2.25rem}.hero-copy h1{font-size:clamp(3rem,14vw,4.5rem)}}

.hero:after{background:linear-gradient(0deg,rgba(237,247,252,.62) 0%,rgba(237,247,252,.18) 48%,rgba(237,247,252,.03) 100%)}.hero-copy{max-width:750px;background:none;border:0;box-shadow:none;margin-left:0;margin-right:0;padding:clamp(22rem,48vh,30rem) clamp(1.25rem,10vw,10rem) 0}.hero-copy h1,.hero-copy>p,.hero-copy .eyebrow,.hero-copy .light-link{text-shadow:0 2px 14px rgba(244,250,253,.9)}@media(max-width:760px){.hero:after{background:linear-gradient(0deg,rgba(237,247,252,.82) 0%,rgba(237,247,252,.16) 72%)}.hero-copy{margin:0;padding:clamp(18rem,48vh,24rem) 1.25rem 0}.hero-copy h1{font-size:clamp(2.8rem,13vw,4.2rem)}}

.hero{background:#cbe6f5}.hero-photo{background-color:transparent;background-position:right center;background-repeat:no-repeat;background-size:auto 100%}@media(max-width:760px){.hero{min-height:680px}.hero-photo{background-position:center top;background-size:auto 100%}.hero-copy{max-width:100%;padding-top:clamp(21rem,55vh,26rem)}}

/* The three ways to work with Serena each have an equal place in the layout. */
.service-grid{grid-template-columns:repeat(3,1fr)}

/* Standalone service pages */
.page-hero{min-height:580px;background:linear-gradient(135deg,#355d78,#80adc6);color:#fff;display:flex;align-items:end;padding:clamp(8rem,15vw,12rem) clamp(1.25rem,10vw,10rem) clamp(4rem,8vw,7rem)}
.page-hero>div{max-width:760px}.page-hero h1{font:500 clamp(3.6rem,8vw,7rem) var(--serif);letter-spacing:-.05em;margin:1rem 0}.page-hero>div>p:not(.eyebrow){font-size:1.1rem;max-width:430px}.page-content{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start;background:var(--paper)}.page-content h2{font-size:clamp(2.65rem,5vw,5rem);letter-spacing:-.045em}.content-placeholder{padding-top:1rem}.content-placeholder p{margin-bottom:2rem}@media(max-width:760px){.page-hero{min-height:500px;padding-top:8rem}.page-content{grid-template-columns:1fr;gap:1.5rem}}
.service-page{min-height:560px;scroll-margin-top:68px}.service-page--blue{background:#d3e7f4}
.method{display:block}.method>div:nth-child(3){padding-top:0}.method-copy{max-width:780px;margin-top:3rem}.method-copy p{margin-bottom:1.5rem}
.photo:before{background:none}
.method{background:#d3e7f4}
.method .method-title{font-size:clamp(4rem,7vw,6.4rem);margin-bottom:1.4rem}.method h3{font:500 clamp(2.4rem,4.5vw,4.4rem) var(--serif);letter-spacing:-.045em;margin-bottom:0}
.hero{background:#fff}
#lessons .content-placeholder{padding-top:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-copy{max-width:520px;padding-top:clamp(27rem,58vh,34rem)}.hero-copy .hero-vision{font-size:clamp(1.08rem,1.7vw,1.45rem);line-height:1.48;font-weight:500;max-width:520px;margin-bottom:1.6rem;text-shadow:0 2px 14px rgba(244,250,253,.95)}@media(max-width:760px){.hero-copy{padding-top:clamp(22rem,57vh,27rem)}.hero-copy .hero-vision{font-size:1.05rem;max-width:390px}}
@media(min-width:761px){.hero-copy{position:absolute;top:52%;left:0;transform:translateY(-50%);width:min(58vw,820px);max-width:none;padding:0 0 0 clamp(2.5rem,10vw,10rem)}.hero-copy .hero-vision{max-width:680px;font-size:clamp(1.18rem,1.75vw,1.65rem);line-height:1.5}}
.hero-quote{max-width:590px;margin:0 0 1.6rem;padding:0;border:0;color:#fff;font-size:clamp(.82rem,1.15vw,1rem);font-style:italic;line-height:1.45;text-shadow:0 2px 14px rgba(0,0,0,.65)}.hero-quote cite{display:block;margin-top:.45rem;font-size:.72em;font-style:normal;font-weight:600;letter-spacing:.08em;text-transform:uppercase}@media(min-width:761px){.hero-copy{top:55%}}@media(max-width:760px){.hero-copy{padding-top:clamp(23rem,59vh,28rem)}.hero-quote{max-width:390px;font-size:.82rem}}
@media(min-width:761px){header{background:#fff}}
.hero-photo{background-image:url("assets/serena-kullich-hero.jpeg");background-position:center center;background-size:cover}.hero:after{background:linear-gradient(90deg,rgba(8,18,30,.72),rgba(8,18,30,.38) 52%,rgba(8,18,30,.08) 100%)}.hero-copy .hero-vision,.hero-copy .light-link{color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.65)}@media(max-width:760px){.hero:after{background:linear-gradient(0deg,rgba(8,18,30,.78),rgba(8,18,30,.12) 76%)}.hero-photo{background-position:center center}}
.method{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:clamp(2rem,6vw,7rem);align-items:start}.method-copy{max-width:none}.method-photos{display:grid;gap:1.5rem;padding-top:1rem}.method-photo{min-height:clamp(170px,16vw,280px);background:linear-gradient(135deg,#98c1d8,#597f98 58%,#d4b49f)}@media(max-width:760px){.method{display:block}.method-photos{margin-top:2.5rem;padding-top:0}.method-photo{min-height:220px}}
.method-photo{background-size:cover;background-repeat:no-repeat}.method-photo:nth-child(1){background-image:url("assets/method-jumping.jpeg");background-position:center 42%}.method-photo:nth-child(2){background-image:url("assets/method-beach.jpeg");background-position:center center}
.lessons-section{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:clamp(2rem,6vw,7rem);align-items:start}.lessons-section h2{margin-bottom:2.4rem}.lessons-photo{min-height:clamp(260px,28vw,460px);background:linear-gradient(135deg,#a5cadc,#638ba4 58%,#d0ae98)}@media(max-width:760px){.lessons-section{display:block}.lessons-photo{margin-top:2.5rem;min-height:230px}}
.lessons-photo{width:min(100%,440px);justify-self:end;min-height:0;aspect-ratio:3/2;background-image:url("assets/lessons.jpeg");background-color:#f3f8fc;background-size:contain;background-position:center;background-repeat:no-repeat}@media(max-width:760px){.lessons-photo{width:100%;margin-top:2.5rem;aspect-ratio:3/2}}
.training-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(300px,1.1fr);grid-template-areas:"heading copy" "photo copy";gap:2.4rem clamp(2rem,6vw,7rem);align-items:start}.training-section h2{grid-area:heading;margin:0}.training-section .content-placeholder{grid-area:copy}.training-placeholder{grid-area:photo;min-height:clamp(240px,25vw,410px);background:linear-gradient(135deg,#91b8d0,#547b95 58%,#cfae99)}@media(max-width:760px){.training-section{display:grid;grid-template-columns:1fr;grid-template-areas:"heading" "copy" "photo";gap:1.5rem}.training-placeholder{margin-top:1rem;min-height:230px}}
.demonstrations-section{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:clamp(2rem,6vw,7rem);align-items:start}.demonstrations-section h2{margin-bottom:2.4rem}.demonstrations-photo{min-height:clamp(260px,28vw,460px);background:linear-gradient(135deg,#a5cadc,#638ba4 58%,#d0ae98)}@media(max-width:760px){.demonstrations-section{display:block}.demonstrations-photo{margin-top:2.5rem;min-height:230px}}
.method-photo{width:min(100%,500px);min-height:0;aspect-ratio:3/2;background-color:#d3e7f4;background-size:contain;background-position:center center}
.training-placeholder{width:min(100%,500px);min-height:0;aspect-ratio:3/2;background-image:url("assets/horse-training.jpeg");background-color:#d3e7f4;background-size:contain;background-repeat:no-repeat;background-position:center center}
.demonstrations-photo{width:min(100%,500px);min-height:0;aspect-ratio:3/2;background-image:url("assets/demonstrations.jpeg");background-color:#d3e7f4;background-size:contain;background-repeat:no-repeat;background-position:center center}
.about-main{display:block;margin-top:0}.about-main>.about-text{max-width:900px;padding-top:0}.about .portrait{width:min(100%,760px);min-height:0;aspect-ratio:4/3;margin-top:3rem;background-image:url("assets/serena-about.jpeg");background-color:#eaf3f9;background-size:cover;background-position:52% center;background-repeat:no-repeat}
.training-section{display:grid;grid-template-columns:minmax(300px,.95fr) minmax(0,1.05fr);grid-template-areas:"photo text";gap:clamp(2rem,6vw,7rem);align-items:start}.training-text{grid-area:text}.training-text h2{margin-bottom:2.4rem}.training-text .content-placeholder{padding-top:0}.training-placeholder{grid-area:photo}@media(max-width:760px){.training-section{display:block}.training-placeholder{margin-top:2.5rem}}
.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,440px);gap:clamp(2rem,6vw,6rem);align-items:center;padding:clamp(4rem,9vw,8rem) clamp(1.25rem,10vw,10rem)}.contact-copy{max-width:520px}.contact-copy h2{font-size:clamp(2.4rem,4vw,4.1rem)}.contact-copy>p{font-size:.92rem}.contact-copy small{display:block}.contact>div.contact-photo{width:100%;min-height:0;aspect-ratio:3/2;margin-top:0;padding:0;align-self:auto;background-image:url("assets/contact-serena-horse.jpeg");background-color:#c4ddeb;background-size:contain;background-position:center;background-repeat:no-repeat}@media(max-width:760px){.contact{display:block}.contact>div.contact-photo{width:min(100%,900px);margin-top:3rem}.contact-copy h2{font-size:clamp(2.65rem,10vw,4.1rem)}.contact-copy>p{font-size:1rem}}
footer{grid-template-columns:1fr auto}
.about{background:#d3e7f4}.about .portrait{background-color:#d3e7f4}.contact{background:#fff}.contact>div.contact-photo{background-color:#fff}
.about-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,400px);gap:clamp(2rem,6vw,6rem);align-items:start}.about-main>.about-text{max-width:none}.about .portrait{width:100%;min-height:0;aspect-ratio:3/2;margin-top:0;padding:0;background-size:contain;background-position:center;background-repeat:no-repeat}@media(max-width:760px){.about-main{display:block}.about .portrait{width:min(100%,760px);margin-top:3rem}}
.about-main{grid-template-columns:minmax(0,1fr) minmax(260px,400px);grid-template-areas:"intro photo" "bio bio"}.about-intro{grid-area:intro}.about-bio{grid-area:bio;max-width:none}.about-main .portrait{grid-area:photo;align-self:start}@media(max-width:760px){.about-main{display:grid;grid-template-columns:1fr;grid-template-areas:"intro" "bio" "photo";gap:0}.about-main .portrait{margin-top:3rem}}
@media(max-width:760px){.hero-copy{padding-top:clamp(24.4rem,62vh,29.4rem)}.hero-copy .hero-vision{margin-bottom:1rem}.hero-quote{margin-bottom:1rem}.hero-copy .actions{margin-top:1.25rem}}
@media(min-width:761px){.method .method-title{font-size:clamp(3.5rem,5.8vw,5.3rem)}.method h3{font-size:clamp(2.1rem,3.7vw,3.6rem)}}
.method-photo:nth-child(1){width:min(100%,500px);aspect-ratio:3/2;background-image:url("assets/method-beach.jpeg");background-size:contain;background-position:center;background-repeat:no-repeat}.method-photo:nth-child(2){width:min(100%,340px);aspect-ratio:9/16;background-image:url("assets/method-portrait.jpeg");background-size:contain;background-position:center;background-repeat:no-repeat}@media(max-width:760px){.method-photo:nth-child(2){width:min(100%,340px)}}
@media(min-width:761px){.lessons-photo{width:min(100%,500px)}}
@media(min-width:761px){.hero-copy{top:clamp(6rem,9vw,8.5rem);transform:none;width:min(29vw,370px);padding:0 0 0 clamp(1.75rem,4vw,4rem)}}
.contact-email{color:inherit;font-size:1.05rem;font-weight:600;text-underline-offset:.25em}
@media(min-width:761px){body{max-width:1600px;margin-left:auto;margin-right:auto}.hero{height:clamp(720px,60vw,960px);min-height:720px;background:#101821}.hero-photo{background-size:contain;background-position:center;background-color:#101821}.method-photos{justify-items:end}.demonstrations-photo{justify-self:end}}
@media(min-width:761px){.hero-photo{background-size:cover;background-position:center top}}
@media(max-width:760px){.hero{height:auto;min-height:680px}.hero-copy .actions{margin-top:.75rem;margin-bottom:1.5rem}}
@media(max-width:760px){header,header .brand,header .brand b,header .brand small{color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.65)}.menu{color:#fff!important;text-shadow:0 2px 8px rgba(0,0,0,.65)}}
