/* Commercial refinements: one reader, clear benefits and a direct first step. */
.hero .trial-hero-cta{min-height:57px;padding:18px 28px;font-size:15px;line-height:1.4;box-shadow:0 5px 24px #0002}.intro-copy p:first-child{font-size:25px;max-width:350px}.intro-facts{grid-template-columns:1fr 1.25fr 1fr;gap:35px}.intro-facts strong{display:block;font-size:30px;line-height:1.12;letter-spacing:-.8px}.intro-facts>div:first-child strong{line-height:1.1}.intro-facts p{font-size:13px;line-height:1.6;margin-top:14px}.class-instrument{display:block;color:var(--red);font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;margin-top:23px}.class-card h3{font-size:clamp(22px,2.15vw,30px);line-height:1.1;letter-spacing:-.7px;margin:12px 0 14px;min-height:2.2em}.class-card>p{max-width:260px;font-size:13px;line-height:1.65}.class-action{line-height:1.4}.classes .section-heading>p{font-size:16px;color:#555;line-height:1.65}.studio-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}.studio-benefits>li{min-width:0;background:#ffffff06;border:1px solid #ffffff1c;border-radius:4px;padding:18px 16px;display:flex;flex-direction:column;align-items:flex-start;gap:15px}.benefit-icon{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border-radius:4px;background:var(--red);color:white}.benefit-icon svg{width:23px;height:23px}.studio-benefits h3{font-size:15px;line-height:1.35;letter-spacing:-.15px;margin:0}.studio-benefits p{font-size:12px;line-height:1.5;color:#aaa;margin:7px 0 0}.space-copy>p{font-size:16px;line-height:1.6;margin:25px 0 27px}.space-copy>.text-link{margin-top:25px}.year-banner .white-button{line-height:1.4;text-align:center}
/* Shared dialog and direct-link page: two fields, then the customer opens WhatsApp. */
#trial-dialog{border:0;border-radius:6px;padding:0;width:min(530px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:var(--paper);color:var(--ink);box-shadow:0 24px 100px #0004}#trial-dialog::backdrop{background:#080809bb;backdrop-filter:blur(5px)}.trial-panel{padding:45px}.trial-panel>.eyebrow{margin:0 0 20px}.trial-panel>h2{font-size:43px;letter-spacing:-1.8px;line-height:1.06;margin:0}.trial-panel>.trial-lead{font-size:15px;line-height:1.65;color:#666;margin:21px 0 28px;max-width:390px}.trial-close{position:absolute;right:14px;top:14px;width:38px;height:38px;border:1px solid var(--line);background:var(--paper);border-radius:50%;display:grid;place-items:center}.trial-close svg{width:19px;height:19px}.trial-close:hover{background:#eae5e6}.trial-field{margin-bottom:21px}.trial-field label{display:block;font-size:13px;line-height:1.5;font-weight:700;margin-bottom:9px}.trial-field input,.trial-field select{width:100%;min-height:54px;border:1px solid #d6d3d0;border-radius:4px;background:#fff;color:var(--ink);padding:14px 15px;font-size:16px;line-height:1.5;box-shadow:none}.trial-field select{padding-right:32px}.trial-field input::placeholder{color:#888}.trial-field input:focus,.trial-field select:focus{outline:2px solid var(--red);outline-offset:2px}.trial-submit{display:flex;width:100%;min-height:55px;line-height:1.4;font-size:14px;margin-top:27px}.trial-form-note{font-size:11px;line-height:1.65;color:#777;margin-top:14px}.trial-form-note a{text-decoration:underline;text-underline-offset:3px}body.trial-is-open{overflow:hidden}.trial-page{background:var(--dark);min-height:100dvh}.trial-page-main{padding:45px 20px 60px}.trial-page-main>.trial-panel{max-width:530px;background:var(--paper);border-radius:6px;margin:auto}.trial-page .site-header{position:relative}.trial-return{font-size:13px;color:#ddd;border-bottom:1px solid #777;padding:7px 0}
@media(max-width:1000px) and (min-width:761px){.studio-benefits>li{padding:15px 12px}.studio-benefits h3{font-size:14px}.studio-benefits p{font-size:11px}.space{gap:5%}.intro-facts strong{font-size:25px}.desktop-nav{gap:25px;margin-right:22px}.header-cta{padding:13px 19px}}
@media(max-width:760px){.hero .trial-hero-cta{font-size:13px;min-height:53px;padding:16px 21px}.site-header>.header-cta{font-size:11px;padding:12px 15px;white-space:nowrap}.intro-copy p:first-child{font-size:23px;max-width:100%}.intro-facts{grid-template-columns:1fr 1fr;gap:27px 22px}.intro-facts>div:first-child{grid-column:1/-1;display:flex;align-items:center;gap:20px}.intro-facts>div:first-child strong{font-size:47px}.intro-facts>div:first-child p{margin:0}.intro-facts strong{font-size:25px;line-height:1.12;letter-spacing:-.6px}.intro-facts p{font-size:12px;line-height:1.5;margin-top:11px}.class-instrument{font-size:10px;letter-spacing:1px;margin-top:18px}.class-card h3{font-size:23px;letter-spacing:-.7px;margin:10px 0 12px;min-height:2.2em}.class-card>p{font-size:12px;line-height:1.65}.classes .section-heading>p{font-size:15px;max-width:330px}.studio-benefits{gap:12px}.studio-benefits>li{padding:18px 16px;gap:14px}.studio-benefits h3{font-size:15px}.studio-benefits p{font-size:12px}.space-copy>p{font-size:15px}.trial-panel{padding:40px 27px 29px}.trial-panel>h2{font-size:37px;letter-spacing:-1.4px}.trial-panel>.eyebrow{font-size:10px;margin-bottom:18px}.trial-panel>.trial-lead{font-size:14px;margin:19px 0 25px}.trial-field{margin-bottom:19px}.trial-page-main{padding:28px 16px 45px}.trial-close{right:10px;top:10px;width:33px;height:33px}.trial-submit{font-size:13px;margin-top:24px}}
@media(max-width:380px){.intro-facts strong{font-size:22px}.class-card h3{font-size:21px;letter-spacing:-.65px}.studio-benefits>li{padding:16px 12px}.studio-benefits h3{font-size:14px}.studio-benefits p{font-size:11px}.trial-panel{padding-left:23px;padding-right:23px}.trial-panel>h2{font-size:34px}}

@media(max-width:760px){.intro-facts>div:nth-child(2) strong{font-size:clamp(18px,5vw,25px)}}

/* Quiet, persistent payment access for existing students. */
.student-payments{display:flex;align-items:center;gap:21px;margin-top:31px;padding:25px 28px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--red);border-radius:4px}.student-payments-icon{display:grid;place-items:center;width:48px;height:48px;flex:0 0 auto;background:#f7edf0;border-radius:50%;color:var(--red)}.student-payments-icon svg{width:25px;height:25px}.student-payments-copy{min-width:0;flex:1}.student-payments h3{font-size:21px;line-height:1.25;letter-spacing:-.4px;margin:0 0 8px}.student-payments p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}.student-payments>.button{flex:0 0 auto;min-height:46px;padding:13px 21px;font-size:12px;line-height:1.4}footer .footer-payments-link{font-size:12px;color:#eee;text-decoration:underline;text-decoration-color:#777;text-underline-offset:5px}footer .footer-payments-link:hover{text-decoration-color:var(--red)}
@media(max-width:760px){.student-payments{display:grid;grid-template-columns:40px minmax(0,1fr);gap:13px 15px;padding:22px 20px;margin-top:25px}.student-payments-icon{width:40px;height:40px;align-self:start}.student-payments-icon svg{width:22px;height:22px}.student-payments h3{font-size:19px;margin-bottom:6px}.student-payments p{font-size:12px;line-height:1.6}.student-payments>.button{grid-column:1/-1;width:100%;margin-top:5px;min-height:46px;font-size:12px}footer .footer-payments-link{font-size:11px}}

/* Two equally visible actions in the persistent header. */
.site-header .desktop-nav{gap:28px;margin-right:0}.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.header-actions .header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:13px 20px;margin:0;white-space:nowrap;line-height:1.4;color:#fff;transition:background .2s}.header-actions .header-cta:hover{background:var(--red-hover)}
@media(min-width:761px) and (max-width:1050px){.site-header{gap:18px;padding-left:4%;padding-right:4%}.site-header .desktop-nav{gap:18px}.header-actions{gap:9px}.header-actions .header-cta{padding:13px 14px;font-size:12px}}
@media(max-width:760px){html{scroll-padding-top:136px}.site-header:has(.header-actions){height:auto;min-height:126px;display:grid;grid-template-columns:1fr;gap:8px 16px;padding:9px 6% 12px}.site-header:has(.header-actions)>.brand{grid-column:1/-1;grid-row:1;justify-self:center}.site-header:has(.header-actions) .brand img{width:55px;max-height:48px}.header-actions{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 1fr;gap:10px}.header-actions .header-cta{font-size:12px;min-height:44px;padding:11px 8px}.site-header:has(.header-actions) .menu-button{grid-column:2;grid-row:1}}

.header-actions{margin-left:auto}@media(max-width:760px){.header-actions{margin-left:0;width:100%}}

/* An editorial invitation built around the wish to finally begin. */
.class-desire-heading{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(35px,6vw,90px);padding:24px 0 30px}.class-desire-question{min-width:0}.class-desire-question .eyebrow{margin-bottom:23px}.class-desire-question h2{font-size:clamp(42px,5.15vw,74px);line-height:1.07;letter-spacing:-2.8px}.class-desire-emphasis{position:relative;display:inline-block;color:var(--red);padding-bottom:12px}.class-desire-emphasis svg{position:absolute;bottom:-1px;left:0;width:100%;height:16px;opacity:.7}.class-desire-answers{padding:7px 0 7px 34px;border-left:1px solid #9e193338;min-width:0}.class-desire-answers>p{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 22px}.class-desire-answers ul{list-style:none;margin:0;padding:0;display:grid;gap:0}.class-desire-answers li{font-size:clamp(19px,2vw,27px);font-weight:400;line-height:1.3;letter-spacing:-.5px;padding:16px 0;border-bottom:1px solid var(--line)}.class-desire-answers li:first-child{padding-top:0}.class-desire-answers li:last-child{padding-bottom:0;border-bottom:0}.class-desire-answers li>span{font-weight:700;color:var(--red)}.classes .class-grid{margin-top:24px}
@media(max-width:1000px) and (min-width:761px){.class-desire-heading{grid-template-columns:1.15fr 1fr;gap:28px}.class-desire-question h2{font-size:46px;letter-spacing:-2px}.class-desire-answers{padding-left:24px}.class-desire-answers li{font-size:20px}}
@media(max-width:760px){.class-desire-heading{grid-template-columns:1fr;gap:30px;padding:10px 0 12px}.class-desire-question .eyebrow{margin-bottom:19px}.class-desire-question h2{font-size:clamp(39px,8vw,57px);letter-spacing:-1.8px;line-height:1.08}.class-desire-emphasis{padding-bottom:11px}.class-desire-emphasis svg{height:13px}.class-desire-answers{padding:0 0 0 22px;border-left:2px solid var(--red)}.class-desire-answers>p{font-size:11px;margin-bottom:16px}.class-desire-answers li{font-size:21px;line-height:1.35;padding:13px 0}.classes .class-grid{margin-top:32px}}

/* Wide film frames preserve the composition of the four supplied clips. */
.instrument-motion-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}.instrument-motion-toolbar>span{font-size:13px;font-weight:700;color:var(--ink)}.classes .instrument-video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px;margin-top:18px}.instrument-video-grid .class-card{min-width:0;padding-bottom:26px;border-bottom:1px solid var(--line)}.instrument-video-grid .class-photo{height:auto;aspect-ratio:16/9;background:#111}.instrument-video{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.instrument-video-grid .class-photo:after{background:linear-gradient(0deg,#0b080830,transparent 35%)}.instrument-video-grid .class-instrument{margin-top:24px}.instrument-video-grid .class-card h3{font-size:clamp(25px,2.55vw,36px);line-height:1.12;letter-spacing:-.9px;min-height:2.24em;margin:13px 0 15px}.instrument-video-grid .class-card>p{max-width:470px;font-size:14px;line-height:1.7}.instrument-video-grid .class-action{left:20px;right:auto;bottom:20px;padding:13px 18px;transform:none;background:#faf9f7ed;border-radius:3px;text-align:left;font-size:12px}.instrument-video-grid .class-card:hover .class-action,.instrument-video-grid .class-card:focus-visible .class-action{background:#fff}
@media(max-width:760px){.instrument-motion-toolbar{margin-top:22px;padding-top:16px}.classes .instrument-video-grid{grid-template-columns:1fr;gap:30px;margin-top:16px}.instrument-video-grid .class-card{padding-bottom:25px}.instrument-video-grid .class-instrument{margin-top:21px}.instrument-video-grid .class-card h3{font-size:29px;letter-spacing:-.65px;min-height:0;margin:11px 0 13px}.instrument-video-grid .class-card>p{font-size:13px;line-height:1.7;max-width:100%}.instrument-video-grid .class-action{left:13px;bottom:13px;padding:11px 13px;font-size:11px}.instrument-motion-toolbar>span{font-size:12px}}
@media(prefers-reduced-motion:reduce){.instrument-video-grid .class-action{transition:none}}

/* A clear invitation and three benefits with a little more presence. */
.classes .instrument-motion-toolbar{padding-top:28px;margin-top:28px}
.classes .instrument-motion-toolbar>span{font-size:clamp(25px,2.6vw,34px);line-height:1.2;letter-spacing:-.7px;color:var(--red);font-weight:700}
.classes .class-note{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:38px;padding:24px 12px;border:1px solid #9e19331c;border-radius:5px;background:#9e193306;color:var(--ink);font-size:16px;line-height:1.4;font-weight:700;text-align:center}
.classes .class-note span{padding:5px 16px}
.classes .class-note span+span{border-left:1px solid #9e19332b;padding-left:16px}
@media(max-width:760px){.classes .instrument-motion-toolbar{padding-top:23px;margin-top:25px}.classes .class-note{grid-template-columns:1fr;padding:10px 22px;font-size:15px;text-align:left;margin-top:28px}.classes .class-note span{padding:14px 0}.classes .class-note span+span{border-left:0;border-top:1px solid #9e19331c;padding-left:0}}

/* A subtle dark veil behind existing hero gradients keeps copy and wine accents prominent. */
.hero-overlay{background-color:rgba(0,0,0,.18)}

/* Owner-supplied finished image: preserve its color, with only the existing page overlay. */
.hero-image{width:100%;max-width:100%;object-position:50% 58%;filter:none}
@media(max-width:760px){.hero-image{object-position:54% 55%}}

/* Reveal more of the supplied 4:3 photograph without stretching it or adding borders.
   Wider screens need more vertical room; portrait screens need a shorter crop. */
@media(min-width:761px){.hero{min-height:clamp(750px,58vw,960px)}}
@media(max-width:760px){.hero{min-height:600px}.hero-content{padding-top:72px;padding-bottom:120px}}

/* Desktop: balance the invitation across the taller photograph. */
@media(min-width:1051px){
  .hero-content{min-height:inherit;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:70px 6% 140px}
  .hero-content>p{font-size:clamp(24px,1.8vw,28px);line-height:1.5;letter-spacing:-.25px;margin:40px 0 48px;color:#f2f0ed}
  .hero .trial-hero-cta{min-height:60px;padding:18px 30px;font-size:16px}
}


/* Clear, self-contained learning facts across desktop, iPad and phones. */
.intro .learning-highlights{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0;padding:0;border:0}
.learning-highlight{min-width:0;padding:28px 26px 30px;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 4px 18px #17171703}
.learning-label{display:block;margin-bottom:20px;color:#62605f;font-size:11px;font-weight:700;line-height:1.5;letter-spacing:1px;text-transform:uppercase}
.learning-highlight h3{margin:0;font-size:clamp(25px,2.25vw,34px);line-height:1.18;letter-spacing:-.7px;text-wrap:balance}
.learning-highlight h3 span{color:var(--red)}
.learning-highlight p{margin:18px 0 0;color:#62605f;font-size:15px;line-height:1.65;max-width:36ch}
@media(max-width:1000px){.intro .learning-highlights{gap:14px}.learning-highlight{padding:24px 20px}.learning-highlight h3{font-size:25px}.learning-highlight p{font-size:14px}}
@media(max-width:760px){.intro .learning-highlights{grid-template-columns:minmax(0,1fr);gap:14px;margin-top:8px}.learning-highlight{padding:23px 24px 25px}.learning-label{margin-bottom:12px;font-size:11px}.learning-highlight h3{font-size:27px;line-height:1.2;letter-spacing:-.6px}.learning-highlight p{margin-top:12px;font-size:15px;line-height:1.6;max-width:none}}
@media(max-width:380px){.learning-highlight{padding:22px 20px}.learning-highlight h3{font-size:25px}}

@media(min-width:761px){.learning-highlight h3{min-height:2.36em}}

/* Teachers belong to the editorial flow of the academy, not a separate card. */
.space-copy .teacher-feature{margin:0 0 28px;padding:26px 0 27px;border:0;border-top:1px solid #ffffff38;border-bottom:1px solid #ffffff38;border-radius:0;background:none;box-shadow:none}
.teacher-label{display:block;margin-bottom:13px;color:#aaa;font-size:11px;font-weight:700;line-height:1.5;letter-spacing:1.1px;text-transform:uppercase}
.teacher-feature h3{margin:0;max-width:600px;font-size:clamp(25px,2.35vw,33px);line-height:1.17;letter-spacing:-.65px;text-wrap:balance}
.teacher-feature h3 em{color:var(--bright);font-style:normal}
.teacher-feature>p{max-width:55ch;margin:17px 0 0;color:#bbb;font-size:15px;line-height:1.65}
@media(max-width:760px){.space-copy .teacher-feature{margin-bottom:25px;padding:24px 0}.teacher-feature h3{font-size:clamp(25px,7vw,32px)}.teacher-feature>p{font-size:14px}}

/* Accessible PDF policy links, secondary to the main action. */
.service-policy-link{display:inline-flex;flex-wrap:wrap;align-items:center;gap:5px 12px;min-height:44px;font-size:12px;font-weight:700;line-height:1.5;color:var(--red);text-decoration:underline;text-underline-offset:4px}
.service-policy-link span{font-size:11px;font-weight:400;text-decoration:none;color:#6b6663}
.service-policy-note{margin-top:15px}
footer .service-policy-link{color:#ddd;text-align:right;justify-content:flex-end}
footer .service-policy-link span{color:#aaa}
footer>div .service-policy-link{max-width:290px}
@media(max-width:760px){footer>div:has(.service-policy-link){flex-direction:column;align-items:flex-start;gap:7px}footer .service-policy-link{justify-content:flex-start;text-align:left}}

/* Separate, direct download action beside the policy viewer link. */
.service-policy-actions{display:inline-flex;flex-wrap:wrap;align-items:center;gap:0 20px;max-width:100%}
.service-policy-download{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:12px;font-weight:700;line-height:1.5;color:var(--red);text-decoration:none;white-space:nowrap}
.service-policy-download svg{width:15px;height:15px;flex:none}
.service-policy-download:hover{text-decoration:underline;text-underline-offset:4px}
footer .service-policy-actions{justify-content:flex-end}
footer .service-policy-download{color:#ddd}
@media(max-width:760px){footer .service-policy-actions{justify-content:flex-start}}
