/* ADR: a continuous public experience. Fonts and photography are served locally. */
.public-home{--canvas:#f3f1ea;--coal:#14292e;--accent:#bd1625;--soft:#e8e5db;--secondary:#526365;background:var(--canvas);color:var(--coal);--hero-progress:0}
html:has(.public-home){scroll-padding-top:100px}
.public-home *{min-width:0}.public-home ::selection{background:#bd1625;color:#fff}
.public-home :is(a,button,input,select,textarea):focus-visible{outline:3px solid #bd1625;outline-offset:6px}
.public-home :is(input,textarea){caret-color:#bd1625}.public-home svg{width:23px;height:23px;flex-shrink:0}
.public-home h2{font:700 clamp(55px,6.3vw,96px)/.98 var(--heading);letter-spacing:-.025em}
.public-home h2 em{font-style:normal;color:var(--accent)}
.public-home .home-link{display:inline-flex;align-items:center;gap:28px;font-weight:600;font-size:15px;min-height:48px;border-bottom:1px solid currentColor;padding:8px 0;color:var(--accent)}
.public-home .home-link svg{transition:transform .25s}.public-home .home-link:hover svg{transform:translateX(5px)}
.home-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--accent);color:#fff;border:1px solid var(--accent);padding:17px 23px;min-height:58px;font-size:16px;font-weight:600;transition:background .2s}
.home-button:hover{background:#95101b}.home-button svg{width:23px;height:23px}
.machine-story{position:relative;background:var(--canvas);color:var(--coal);--landscape:0;--intro:1;--practice:0;--machine-x:0%;--machine-y:0px;--machine-scale:1;--title-x:0px;--title-y:0px}
.machine-stage{position:relative;height:clamp(700px,calc(100svh - var(--header-space,126px)),1080px);overflow:hidden;isolation:isolate;background:var(--canvas)}
.machine-story.motion-ready{height:245svh}.motion-ready .machine-stage{position:sticky;top:92px}
.machine-story:not(.motion-ready) .machine-navigation,.machine-story:not(.motion-ready) .machine-skip{display:none}
.machine-landscape{position:absolute;inset:0;opacity:var(--landscape);transform:scale(1.03) translateY(calc(var(--hero-progress)*-24px));will-change:transform,opacity}
.machine-landscape img{width:100%;height:100%;object-fit:cover;object-position:50% 62%}
.machine-atmosphere{position:absolute;inset:0;opacity:var(--landscape);background:linear-gradient(90deg,#10252910 20%,#10252966 52%,#102529f2 100%),linear-gradient(0deg,#102529a6,transparent 58%);pointer-events:none}
.machine-intro{position:absolute;left:max(6%,calc((100vw - 1800px)/2));top:13%;z-index:1;opacity:var(--intro);transform:translate(var(--title-x),var(--title-y));will-change:transform,opacity}
.machine-intro h1{font:700 clamp(130px,16vw,270px)/.87 var(--heading);text-transform:uppercase;letter-spacing:-.035em;margin:0}
.machine-intro h1>span{display:block;color:var(--accent);padding-left:1.5vw;font-size:.9em}
.machine-object{display:block;position:absolute;z-index:3;width:min(78vw,calc((100svh - 126px)*1.25),1448px);right:4%;bottom:10%;transform:translate(var(--machine-x),var(--machine-y)) scale(var(--machine-scale));transform-origin:50% 85%;will-change:transform;pointer-events:none}
.machine-object img{display:block;width:100%;height:auto;filter:drop-shadow(0 20px 12px #251a131c)}
.machine-ground{position:absolute;right:9%;bottom:12%;width:50%;height:4%;border-radius:50%;background:#221911;filter:blur(20px);opacity:.16;transform:translateX(var(--machine-x));pointer-events:none}
.machine-message{position:absolute;z-index:4;right:max(6%,calc((100vw - 1800px)/2));top:24%;width:35%;max-width:650px;color:#f9f6ed;opacity:var(--practice);transform:translateY(calc((1 - var(--practice))*35px));pointer-events:none}
.machine-message h2{font:700 clamp(64px,7vw,117px)/.95 var(--heading);letter-spacing:-.025em;margin:0 0 30px}.machine-message p{font-size:18px;line-height:1.7;color:#e1e7e0}
.machine-detail{position:absolute;left:max(6%,calc((100vw - 1800px)/2));bottom:17%;z-index:4;opacity:var(--intro);transform:translateY(var(--title-y))}.machine-detail p{font-size:18px;line-height:1.55;margin:0;max-width:360px}
.machine-cta{position:absolute;left:max(6%,calc((100vw - 1800px)/2));bottom:7.5%;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:9px 10px 9px 23px;min-height:62px;background:var(--accent);color:#fff;font-size:14px;font-weight:600;transition:background .2s}
.machine-cta>span{display:grid;place-items:center;width:42px;height:42px;background:#ffffff20}.machine-cta:hover{background:#93101b}
.machine-skip{position:absolute;top:5%;right:6%;z-index:6;border:0;background:none;color:#526365;font-size:12px;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.machine-pause{position:absolute;top:5%;left:max(6%,calc((100vw - 1800px)/2));z-index:6;border:0;background:none;padding:0;color:#526365;font-size:12px;min-height:44px;text-decoration:underline;text-underline-offset:5px}.machine-pause[hidden]{display:none}.machine-story[data-beat="1"] .machine-pause,.machine-story[data-beat="2"] .machine-pause{color:#e0e6dc}
.machine-navigation{position:absolute;right:6%;bottom:7.5%;z-index:6;display:flex;gap:26px}
.machine-navigation button{background:transparent;border:0;border-top:1px solid #9eaca3;padding:10px 0;display:flex;gap:11px;align-items:center;min-height:44px;color:#526365;font-size:12px}
.machine-navigation button>span{font:700 19px var(--heading)}.machine-navigation button[aria-current=step]{border-color:var(--accent);color:var(--accent)}
.machine-story[data-beat="1"] .machine-skip,.machine-story[data-beat="2"] .machine-skip,.machine-story[data-beat="1"] .machine-navigation button,.machine-story[data-beat="2"] .machine-navigation button{color:#e0e6dc}
.machine-story[data-beat="1"] .machine-navigation button[aria-current=step],.machine-story[data-beat="2"] .machine-navigation button[aria-current=step]{color:#fff;border-color:#ed6367}
.machine-edge{position:absolute;bottom:-1px;left:0;right:0;height:65px;z-index:7;pointer-events:none}.machine-edge svg{width:100%;height:100%;display:block;fill:var(--canvas)}

/* The course collection is a photographic composition, with prices on paper. */
.home-courses{padding:80px 0 90px;scroll-margin-top:100px;outline:0}
.home-section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:60px}.home-section-heading>p{max-width:350px;font-size:18px;line-height:1.7;margin-bottom:6px;color:var(--secondary)}
.course-mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:60px 32px;align-items:start}
.course-tile{grid-column:span 4;display:block;position:relative}
.course-tile-image{overflow:hidden;background:#dddcd3;aspect-ratio:1.16}.course-tile-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.3,1)}
.course-tile-1{grid-column:span 7}.course-tile-1 .course-tile-image{aspect-ratio:1.55}.course-tile-2{grid-column:span 5;padding-top:85px}.course-tile-2 .course-tile-image{aspect-ratio:1.2}
.course-tile-3 .course-tile-image{aspect-ratio:.94}.course-tile-4{padding-top:65px}.course-tile-5{padding-top:115px}
.course-tile-6,.course-tile-7{grid-column:span 6;display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center}.course-tile-6 .course-tile-image,.course-tile-7 .course-tile-image{aspect-ratio:.9}
.course-tile-body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 18px;padding:24px 0 0}
.course-tile h3{font:700 clamp(28px,2.7vw,43px)/1.03 var(--heading);margin:0}.course-tile-1 h3,.course-tile-2 h3{font-size:clamp(39px,3.8vw,58px)}
.course-tile-body>p{grid-column:1/-1;color:var(--secondary);font-size:15px;line-height:1.6;max-width:32ch}
.course-tile-price{text-align:right;font-variant-numeric:tabular-nums}.course-tile-price strong{font:400 clamp(24px,2.2vw,34px)/1.15 var(--body);white-space:nowrap;display:block}.course-tile-price span{display:block;font-size:12px;color:var(--secondary);margin-top:5px}.course-tile-price.is-request strong{font-size:16px;line-height:1.3;white-space:normal;max-width:100px}.course-tile-price.is-request span{font-size:11px;max-width:100px}
.course-tile-link{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:49px;border-bottom:1px solid #aeb8b2;color:var(--coal);font-size:14px;font-weight:600;padding:8px 0}.course-tile-link svg{color:var(--accent);transition:transform .25s}
.course-tile:hover img{transform:scale(1.035)}.course-tile:hover .course-tile-link{color:var(--accent)}.course-tile:hover .course-tile-link svg{transform:translateX(5px)}
.course-tile-6 .course-tile-body,.course-tile-7 .course-tile-body{grid-template-columns:1fr;padding:0}.course-tile-6 .course-tile-price,.course-tile-7 .course-tile-price{text-align:left}.course-tile-6 .course-tile-price strong,.course-tile-7 .course-tile-price strong,.course-tile-6 .course-tile-price span,.course-tile-7 .course-tile-price span{max-width:none}
.course-index-end{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:65px;padding-top:25px;border-top:1px solid #b8bfb7}.course-index-end p{color:var(--secondary);font-size:16px}

/* A connected learning journey: the line fills as the visitor moves through it. */
.learning-section{background:var(--coal);color:var(--canvas);padding:110px 0 100px;--route-progress:0;--photo-shift:0px}
.learning-layout{display:grid;grid-template-columns:1fr .85fr;gap:12%;align-items:start}.learning-intro{position:sticky;top:135px}.learning-section h2{font-size:clamp(62px,6vw,92px)}.learning-section h2 em{color:#e4bd91}.learning-intro>p{margin-top:25px;max-width:370px;color:#c7d2cf;font-size:17px;line-height:1.7}
.learning-photo{margin:36px 0 0;position:relative;max-width:500px;overflow:hidden}.learning-photo img{width:100%;height:auto;aspect-ratio:1.9;object-fit:cover;object-position:50% 56%;transform:translateY(var(--photo-shift)) scale(1.08)}.learning-photo figcaption{position:relative;background:var(--coal);font-size:13px;color:#c7d2cf;padding-top:14px}
.learning-route{position:relative;display:flex;flex-direction:column;gap:0;padding:40px 0 0}.learning-track{position:absolute;width:1px;background:#60716e;left:28px;top:68px;bottom:70px}.learning-track span{display:block;width:1px;height:calc(var(--route-progress)*100%);background:#e4bd91}
.learning-step{position:relative;display:grid;grid-template-columns:58px 1fr;gap:35px;min-height:300px;padding-bottom:55px;align-content:start}.learning-step:last-child{padding-bottom:0;min-height:240px}.learning-number{position:relative;display:grid;place-items:center;align-self:start;width:58px;height:58px;border-radius:50%;border:1px solid #899991;background:var(--coal);color:#cad4ce;font:700 24px var(--heading);transition:background .35s,color .35s,border-color .35s}.learning-step.is-current .learning-number{background:#e4bd91;border-color:#e4bd91;color:var(--coal)}
.learning-step h3{font-size:clamp(36px,3.5vw,53px);margin:4px 0 22px}.learning-step p{font-size:17px;line-height:1.75;color:#c7d2cf;max-width:340px}.learning-step .home-link{color:#e4bd91;margin-top:24px;font-size:14px}

/* A red chapter for teams, with its own photograph and no text over the image. */
.team-section{display:grid;grid-template-columns:1.1fr 1fr;min-height:700px;background:var(--accent);color:white}.team-photo{position:relative;overflow:hidden}.team-photo picture{display:block;width:100%;height:100%}.team-photo img{width:100%;height:100%;min-height:700px;object-fit:cover;object-position:60% center}
.team-content{padding:80px clamp(40px,6vw,110px);align-self:center}.team-content h2{font-size:clamp(55px,5.4vw,86px)}.team-content h2 em{color:#fff;font-style:normal}.team-content>p{font-size:17px;line-height:1.7;color:#fff;max-width:410px;margin:28px 0 0}.team-content>p+p{font-size:15px;color:#ffe5e5;margin-top:17px}.team-content .home-button{background:var(--canvas);color:var(--coal);border-color:var(--canvas);margin-top:34px;font-size:15px}.team-content .home-button:hover{background:#e6dfce}

.home-dates{padding:115px 0;background:var(--canvas)}.home-dates-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:10%;align-items:start}.home-dates h2{font-size:clamp(55px,5.7vw,84px)}.home-dates-layout>div:first-child>p{margin:28px 0 23px;font-size:17px;line-height:1.7;color:var(--secondary)}
.home-event{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:25px;align-items:center;padding:28px 0;border-top:1px solid #aeb8b2}.home-event:last-child{border-bottom:1px solid #aeb8b2}.home-event time{font-variant-numeric:tabular-nums}.home-event time strong{font:700 62px/.9 var(--heading)}.home-event time span{display:block;margin-top:9px;color:var(--secondary);font-size:13px}.home-event h3{font-size:31px;margin-bottom:10px;transition:color .2s}.home-event-copy p{color:var(--secondary);font-size:13px;line-height:1.7;max-width:30ch}.home-event h3:before{content:'';display:inline-block;width:9px;height:9px;border-radius:50%;background:var(--course-color,var(--accent));margin:0 8px 4px 0}.home-event-price{text-align:right;align-self:center}.home-event-price>strong{font:400 25px var(--body);font-variant-numeric:tabular-nums;white-space:nowrap}.home-event-price>span{display:flex;gap:12px;align-items:center;justify-content:end;font-size:12px;margin-top:15px;color:var(--accent)}.home-event-price svg{width:20px}.home-event:hover h3{color:var(--accent)}.home-event-empty{padding:40px 0;border-top:1px solid #aeb8b2}.home-event-empty p{margin:20px 0}

.home-gas{background:var(--soft);padding-bottom:85px}.home-gas-scene{margin:0;overflow:hidden;height:clamp(330px,38vw,590px)}.home-gas-scene img{width:100%;height:100%;object-fit:cover;object-position:50% 49%}.home-gas-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;padding-top:60px}.home-gas h2{font-size:clamp(52px,5.2vw,80px)}.home-gas h2 em{display:block;max-width:580px}.home-gas-copy>p{font-size:17px;color:#465b5c;line-height:1.7;max-width:440px}.home-gas-price{display:flex;gap:25px;align-items:center;margin:25px 0 15px}.home-gas-price strong{font:400 38px var(--body);white-space:nowrap}.home-gas-price span{font-size:13px;color:#465b5c;max-width:145px;line-height:1.6}

.home-contact{background:var(--coal);color:var(--canvas);padding:105px 0 90px}.home-contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%;align-items:start}.home-contact h2{font-size:clamp(64px,7vw,100px)}.home-contact h2 em{color:#e4bd91}.home-contact-copy>p{font-size:18px;line-height:1.7;max-width:360px;margin:28px 0 35px;color:#c7d2cf}.home-contact-phone{display:block;font-size:clamp(24px,2.4vw,35px);font-weight:600;margin-bottom:10px}.home-contact-email{display:block;font-size:16px;overflow-wrap:anywhere;color:#c7d2cf}.home-contact-copy address{font-style:normal;font-size:15px;line-height:1.8;margin-top:35px;color:#c7d2cf}.home-contact-signature{display:block;font:700 clamp(65px,7vw,110px)/.9 var(--heading);text-transform:uppercase;color:#78908a;margin-top:60px;letter-spacing:-.025em}
.home-contact-form{padding:35px 38px 30px;background:var(--canvas);color:var(--coal)}.home-contact-form h3{font-size:38px;margin-bottom:28px}.home-contact-form .field-grid{gap:22px}.home-contact-form .field{font-size:14px;color:var(--coal);font-weight:400}.home-contact-form :is(input,textarea,select){border:1px solid #a5b0a7;border-radius:0;background:#fcfbf6;color:var(--coal);box-shadow:none;min-height:49px;font-size:16px;padding:11px;width:100%}.home-contact-form .inquiry-security{background:#e4e6dd;border:0;padding:16px;margin-top:0}.home-contact-form .inquiry-security input{max-width:110px}.home-contact-form .inquiry-security small{font-size:12px;color:#4b6060}.home-form-note{font-size:12px;line-height:1.7;color:#4b6060;margin:19px 0}.home-form-note a{text-decoration:underline;text-underline-offset:3px}.home-contact-form .home-button{width:100%;margin:0;font-size:15px}
body:has(.public-home)>.footer{background:#102226;border-top:1px solid #405752}.public-home .honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

@media(min-width:1900px){.machine-object{right:max(4%,calc((100vw - 2200px)/2))}.machine-navigation,.machine-skip{right:max(6%,calc((100vw - 1800px)/2))}.team-content{padding-left:90px;padding-right:max(90px,calc((100vw - 1440px)/2))}.team-photo img{object-position:65% 50%}}
@media(max-width:1100px){.home-section-heading>p{max-width:290px;font-size:16px}.course-mosaic{gap:45px 25px}.course-tile-2{padding-top:60px}.course-tile-body{grid-template-columns:1fr;gap:11px}.course-tile-price{text-align:left}.course-tile-price.is-request strong,.course-tile-price.is-request span{max-width:none}.course-tile-6,.course-tile-7{gap:20px}.course-tile-4{padding-top:45px}.course-tile-5{padding-top:85px}.learning-layout{gap:7%}.learning-step{gap:22px}.learning-step p{font-size:16px}.team-content{padding:55px 35px}.team-content h2{font-size:62px}.home-dates-layout{gap:6%;grid-template-columns:.65fr 1.35fr}.home-event{gap:16px}.home-event h3{font-size:29px}.home-event-price>strong{font-size:23px}.home-event-price>span{font-size:11px}.home-contact-layout{gap:7%}.home-contact-form{padding:28px}.home-contact-signature{font-size:85px}}
@media(max-width:850px){.motion-ready .machine-stage{top:80px}.machine-stage{height:calc(100svh - var(--header-space,114px));min-height:700px}.machine-intro{top:18%;left:4%}.machine-intro h1{font-size:19vw}.machine-object{width:88%;right:3%;bottom:25%}.machine-detail{bottom:18%;left:4%}.machine-detail p{font-size:16px}.machine-message{right:4%;width:43%;top:23%}.machine-message h2{font-size:8vw}.machine-message p{font-size:16px}.machine-navigation{bottom:4%;right:4%;gap:13px}.machine-navigation button{font-size:11px;gap:5px}.machine-cta{left:4%;font-size:12px;gap:12px;padding-left:15px}.machine-edge{height:32px}.home-courses{padding:65px 0}.home-section-heading{gap:30px}.home-section-heading h2{font-size:64px}.home-section-heading>p{max-width:250px}.course-tile-1,.course-tile-2{grid-column:span 6}.course-tile-1 .course-tile-image{aspect-ratio:1.15}.course-tile-2 .course-tile-image{aspect-ratio:.92}.course-tile-1 h3,.course-tile-2 h3{font-size:43px}.course-tile h3{font-size:32px}.course-tile-3,.course-tile-4{grid-column:span 6}.course-tile-5{grid-column:span 5;padding-top:0}.course-tile-6,.course-tile-7{grid-column:span 7;display:grid;grid-template-columns:1fr 1fr}.course-tile-6{align-self:center}.course-tile-7{grid-column:span 12;grid-template-columns:1fr 1fr}.course-tile-7 .course-tile-image{aspect-ratio:1.7}.course-tile-3 .course-tile-image,.course-tile-4 .course-tile-image{aspect-ratio:1.4}.course-tile-4{padding-top:60px}.course-tile-7 .course-tile-body{max-width:260px}.course-index-end{align-items:start;margin-top:45px}.course-index-end p{font-size:14px;max-width:160px}.course-index-end .home-link{font-size:13px}.learning-section{padding:75px 0}.learning-layout{grid-template-columns:.9fr 1fr;gap:6%}.learning-section h2{font-size:64px}.learning-intro{top:115px}.learning-step{grid-template-columns:44px 1fr;gap:20px;min-height:325px}.learning-number{width:44px;height:44px;font-size:20px}.learning-track{left:21px;top:60px}.learning-step h3{font-size:39px}.learning-step p{font-size:15px}.learning-step .home-link{font-size:12px;gap:12px}.learning-photo img{aspect-ratio:1.3}.learning-intro>p{font-size:15px}.learning-photo figcaption{font-size:12px}.team-section{grid-template-columns:1fr 1fr;min-height:650px}.team-photo img{min-height:650px}.team-content{padding:45px 28px}.team-content h2{font-size:55px}.team-content>p{font-size:16px}.team-content>p+p{font-size:14px}.team-content .home-button{font-size:13px;padding:15px;gap:15px}.home-dates{padding:75px 0}.home-dates-layout{display:block}.home-dates h2{font-size:64px}.home-dates-layout>div:first-child{margin-bottom:35px}.home-dates-layout>div:first-child>p{margin:22px 0 14px}.home-event h3{font-size:34px}.home-event-price>strong{font-size:27px}.home-gas-layout{gap:7%;grid-template-columns:1fr 1fr;padding-top:45px}.home-gas h2{font-size:56px}.home-gas-copy>p{font-size:15px}.home-gas-price{gap:15px}.home-gas-price strong{font-size:30px}.home-gas-price span{font-size:12px}.home-gas .home-link{font-size:14px;gap:15px}.home-contact{padding:75px 0}.home-contact-layout{grid-template-columns:.8fr 1.2fr;gap:5%}.home-contact h2{font-size:65px}.home-contact-copy>p{font-size:16px}.home-contact-phone{font-size:24px}.home-contact-email{font-size:14px}.home-contact-form{padding:25px}.home-contact-form .field-grid{grid-template-columns:1fr;gap:18px}.home-contact-form .field.full{grid-column:auto}.home-contact-signature{font-size:65px}}
@media(max-width:600px){html:has(.public-home){scroll-padding-top:80px}.public-home h2{font-size:clamp(48px,13vw,67px)}.machine-story.motion-ready{height:225svh}.machine-stage{height:calc(100svh - var(--header-space,150px));min-height:630px;max-height:none}.motion-ready .machine-stage{top:76px}.machine-skip{top:2%;right:20px;font-size:11px}.machine-intro{left:20px;top:13%}.machine-intro h1{font-size:27vw;line-height:.86}.machine-intro h1>span{padding-left:9vw}.machine-object{width:100%;right:0;bottom:26%;max-width:none}.machine-ground{width:80%;bottom:30%;right:5%;height:3%}.machine-detail{left:20px;bottom:17%;max-width:300px}.machine-detail p{font-size:14px;line-height:1.5}.machine-cta{left:20px;right:20px;bottom:7.5%;padding:7px 8px 7px 18px;font-size:13px;min-height:56px}.machine-cta>span{width:39px;height:39px}.machine-navigation{left:20px;right:20px;bottom:.8%;justify-content:space-between;gap:13px}.machine-navigation button{font-size:11px;padding-top:7px;gap:7px;min-height:44px}.machine-navigation button>span{font-size:15px}.machine-edge{display:none}.machine-landscape img{object-position:47% 55%}.machine-atmosphere{background:linear-gradient(0deg,#11272df2 0%,#11272d77 35%,#11272d44 70%,#11272d99)}.machine-message{left:20px;right:20px;top:15%;width:auto;max-width:400px}.machine-message h2{font-size:clamp(53px,14vw,73px);margin:0 0 16px}.machine-message p{position:absolute;top:calc(100svh - 410px);font-size:14px;line-height:1.6;max-width:300px}.machine-story[data-beat="1"] .machine-object,.machine-story[data-beat="2"] .machine-object{z-index:2}.home-courses{padding:45px 0 55px;scroll-margin-top:80px}.home-section-heading{display:block;margin-bottom:35px}.home-section-heading>p{max-width:340px;font-size:16px;margin-top:23px}.course-mosaic{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 18px}.course-tile,.course-tile-1,.course-tile-2,.course-tile-3,.course-tile-4,.course-tile-5,.course-tile-6,.course-tile-7{grid-column:1/-1;padding:0;display:block}.course-tile-1 .course-tile-image{aspect-ratio:1.35}.course-tile-2 .course-tile-image{aspect-ratio:1.55}.course-tile-3,.course-tile-4{grid-column:span 1}.course-tile-3 .course-tile-image,.course-tile-4 .course-tile-image{aspect-ratio:.85}.course-tile-4{padding-top:35px}.course-tile-3 .course-tile-body,.course-tile-4 .course-tile-body{grid-template-columns:1fr;gap:12px}.course-tile-3 h3,.course-tile-4 h3{font-size:29px}.course-tile-3 .course-tile-body>p,.course-tile-4 .course-tile-body>p{font-size:13px}.course-tile-3 .course-tile-link,.course-tile-4 .course-tile-link{font-size:12px;gap:8px}.course-tile-3 .course-tile-link svg,.course-tile-4 .course-tile-link svg{width:20px}.course-tile-5{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.course-tile-5 .course-tile-image{aspect-ratio:.78}.course-tile-5 .course-tile-body{grid-template-columns:1fr;padding:0}.course-tile-6,.course-tile-7{display:grid;grid-template-columns:1fr 1fr;gap:20px}.course-tile-6 .course-tile-image,.course-tile-7 .course-tile-image{aspect-ratio:.9}.course-tile-7 .course-tile-body{max-width:none}.course-tile-body{padding-top:20px;grid-template-columns:minmax(0,1fr) auto;gap:12px 15px}.course-tile h3,.course-tile-1 h3,.course-tile-2 h3{font-size:37px}.course-tile-5 h3,.course-tile-6 h3,.course-tile-7 h3{font-size:30px}.course-tile-body>p{font-size:14px}.course-tile-price{text-align:right}.course-tile-price strong{font-size:28px}.course-tile-price.is-request strong{font-size:14px;max-width:90px}.course-tile-price.is-request span{font-size:11px}.course-tile-3 .course-tile-price,.course-tile-4 .course-tile-price,.course-tile-5 .course-tile-price,.course-tile-6 .course-tile-price,.course-tile-7 .course-tile-price{text-align:left}.course-tile-4 .course-tile-price strong,.course-tile-4 .course-tile-price span{max-width:none}.course-tile-link{font-size:13px}.course-index-end{display:block;margin-top:35px;padding-top:23px}.course-index-end p{max-width:none;font-size:14px}.course-index-end .home-link{font-size:14px;margin-top:13px}.learning-section{padding:55px 0}.learning-layout{display:block}.learning-intro{position:static}.learning-section h2{max-width:350px}.learning-intro>p{font-size:16px;max-width:340px}.learning-photo{margin-top:25px;max-width:none}.learning-photo img{aspect-ratio:1.7}.learning-photo figcaption{font-size:12px}.learning-route{padding:40px 0 0}.learning-step{min-height:0;padding-bottom:42px;grid-template-columns:44px 1fr;gap:22px}.learning-step:last-child{min-height:0}.learning-step h3{font-size:36px;margin:4px 0 15px}.learning-step p{font-size:16px;max-width:330px}.learning-track{bottom:95px}.learning-step .home-link{font-size:14px}.team-section{grid-template-columns:1fr;min-height:0}.team-photo{height:330px}.team-photo img{height:330px;min-height:0;object-position:center 50%}.team-content{padding:38px 22px 50px}.team-content h2{max-width:390px}.team-content>p{font-size:16px;max-width:360px;margin-top:24px}.team-content>p+p{font-size:15px;margin-top:16px}.team-content .home-button{font-size:15px;padding:17px 19px;max-width:400px;width:100%;margin-top:27px}.home-dates{padding:55px 0}.home-dates-layout>div:first-child{margin-bottom:25px}.home-event{grid-template-columns:57px 1fr;gap:17px;padding:23px 0}.home-event time{align-self:start;padding-top:5px}.home-event time strong{font-size:51px}.home-event time span{font-size:12px}.home-event h3{font-size:30px}.home-event-copy p{font-size:13px;max-width:26ch}.home-event-price{grid-column:2;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:-4px}.home-event-price>strong{font-size:23px}.home-event-price>span{font-size:11px;margin:0;gap:7px}.home-event-price svg{width:18px}.home-gas{padding-bottom:50px}.home-gas-scene{height:280px}.home-gas-scene img{object-position:58% 50%}.home-gas-layout{display:block;padding-top:33px}.home-gas h2{font-size:clamp(46px,12vw,62px)}.home-gas-copy{margin-top:25px}.home-gas-copy>p{font-size:16px;max-width:370px}.home-gas-price{gap:25px;margin:24px 0 12px}.home-gas-price strong{font-size:34px}.home-gas-price span{font-size:13px;max-width:150px}.home-contact{padding:50px 0}.home-contact-layout{display:block}.home-contact h2{font-size:clamp(60px,16vw,80px)}.home-contact-copy>p{font-size:16px;max-width:340px;margin:23px 0}.home-contact-phone{font-size:27px}.home-contact-email{font-size:15px}.home-contact-copy address{font-size:14px;margin-top:22px}.home-contact-signature{display:none}.home-contact-form{margin-top:35px;padding:26px 20px 20px}.home-contact-form h3{font-size:34px;margin-bottom:23px}.home-contact-form .field-grid{grid-template-columns:1fr}.home-contact-form .inquiry-security{padding:13px}.home-contact-form .home-form-note{font-size:12px}}
@media(max-width:359px){.machine-stage{min-height:650px}.machine-detail p{font-size:13px}.machine-cta{font-size:12px}.course-mosaic{gap:30px 15px}.course-tile h3,.course-tile-1 h3,.course-tile-2 h3{font-size:32px}.course-tile-3 h3,.course-tile-4 h3,.course-tile-5 h3,.course-tile-6 h3,.course-tile-7 h3{font-size:26px}.course-tile-5,.course-tile-6,.course-tile-7{gap:15px}.course-tile-price strong{font-size:25px}.home-event-price{display:block}.home-event-price>span{justify-content:start;margin-top:7px}}
@media(prefers-reduced-motion:reduce){body:not(.user-enabled-motion) .machine-story.motion-ready{height:auto}body:not(.user-enabled-motion) .motion-ready .machine-stage{position:relative;top:0}body:not(.user-enabled-motion) .machine-stage{min-height:660px;height:760px}body:not(.user-enabled-motion) .machine-intro,body:not(.user-enabled-motion) .machine-object,body:not(.user-enabled-motion) .machine-landscape{transform:none!important;will-change:auto}body:not(.user-enabled-motion) .machine-navigation,body:not(.user-enabled-motion) .machine-skip{display:none}body:not(.user-enabled-motion) .machine-cta{bottom:7%}body:not(.user-enabled-motion) .machine-detail{bottom:19%}body:not(.user-enabled-motion) .learning-intro{position:static}body:not(.user-enabled-motion) .learning-photo img{transform:none}body:not(.user-enabled-motion) .learning-track span{height:100%}body:not(.user-enabled-motion) .course-tile-image img{transition:none}body:not(.user-enabled-motion) .course-tile:hover img{transform:none}}
@media(max-height:639px){.machine-story.motion-ready{height:auto}.motion-ready .machine-stage{position:relative;top:0}.machine-stage{min-height:660px;height:760px}.machine-intro,.machine-object,.machine-landscape{transform:none!important;will-change:auto}.machine-navigation,.machine-skip{display:none}.machine-cta{bottom:7%}.machine-detail{bottom:19%}.learning-intro{position:static}.learning-photo img{transform:none}.learning-track span{height:100%}.course-tile-image img{transition:none}.course-tile:hover img{transform:none}}
@media(max-height:639px) and (max-width:600px){.machine-stage{height:auto;min-height:0;display:flex;flex-direction:column;padding:30px 20px 40px}.machine-intro{position:static;order:1}.machine-intro h1{font-size:clamp(72px,25vw,100px);line-height:.87}.machine-intro h1>span{padding-left:0;font-size:.9em}.machine-cta{position:static;order:2;margin:24px 0 0;min-height:54px}.machine-object{position:static;order:3;width:100%;margin:22px 0 15px}.machine-detail{position:static;order:4;max-width:none}.machine-detail p{font-size:14px}.machine-ground,.machine-message,.machine-edge{display:none}}
@media(prefers-reduced-motion:reduce){html:has(body:not(.user-enabled-motion) .public-home){scroll-behavior:auto}body:not(.user-enabled-motion) .public-home *{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:600px){.machine-pause{top:2%;left:20px;font-size:11px}}
body.user-reduced-motion .public-home *{scroll-behavior:auto!important;transition:none!important}body.user-reduced-motion .learning-photo img{transform:none}body.user-reduced-motion .course-tile:hover img{transform:none}
html:has(body.user-reduced-motion){scroll-behavior:auto}
body.user-reduced-motion .learning-intro{position:static}
.course-tile h3{hyphens:manual;overflow-wrap:anywhere}

/* Course prices: a clear, consistent price area across the existing mosaic. */
.public-home .course-tile-price{
  display:flex;flex-direction:column;align-items:flex-start;justify-self:start;
  align-self:start;width:max-content;max-width:100%;min-width:112px;
  padding:12px 16px;background:var(--accent);color:#fff;text-align:left;
}
.public-home .course-tile-price strong{
  font:600 clamp(34px,3vw,44px)/1.05 var(--body);color:inherit;
  white-space:nowrap;max-width:none;letter-spacing:-.025em;
}
.public-home .course-tile-price span{
  color:#fff;font-size:12px;line-height:1.4;margin-top:6px;max-width:none;
}
.public-home .course-tile-price.is-request strong{
  font-size:21px;line-height:1.2;white-space:normal;max-width:155px;letter-spacing:0;
}
.public-home .course-tile-price.is-request span{font-size:11px}
@media(max-width:600px){
  .public-home .course-tile-price{min-width:0;padding:11px 13px}
  .public-home .course-tile-price strong{font-size:34px}
  .public-home .course-tile-price.is-request strong{font-size:18px;max-width:145px}
  .public-home .course-tile-price span{font-size:11px}
}
@media(max-width:359px){
  .public-home .course-tile-price{padding:10px 11px}
  .public-home .course-tile-price strong{font-size:30px}
  .public-home .course-tile-price.is-request strong{font-size:17px}
}
@media(max-width:600px){
  .public-home .course-tile:is(.course-tile-3,.course-tile-4,.course-tile-5,.course-tile-6,.course-tile-7) .course-tile-body{grid-template-columns:minmax(0,1fr)}
  .public-home .course-tile-price.is-request strong,.public-home .course-tile-price.is-request span{max-width:100%}
}
