.site-header{background:#0b0a09}.header-inner{min-height:84px}.brand img{width:172px;height:65px}.section{padding-block:clamp(55px,7vw,100px)}.button{border-radius:9px;min-height:48px;letter-spacing:-.01em}.page-hero.rm-page-intro{background:#e9e8e7;color:#1a1917;padding:35px 0 62px;border-bottom:1px solid #d6d4d1}.rm-page-intro .breadcrumbs{color:#66625a;margin:0 0 48px}.rm-page-heading{display:grid;grid-template-columns:1.5fr 1fr;gap:55px;align-items:end}.rm-page-heading h1{font-size:clamp(2.5rem,5.3vw,5rem);margin:0;max-width:16ch}.rm-page-heading>div{border-left:1px solid #c0bdb7;padding-left:28px}.rm-page-heading>div>p{max-width:38ch;color:#66625a;font-size:.95rem;margin-bottom:0}.rm-page-heading .eyebrow{font-size:.6rem}.packages-section{background:#151413}.packages-section .section-heading{align-items:center}.packages-section h2{font-size:clamp(2.2rem,3.8vw,3.8rem)}.package{background:#21201d;border-color:#4c4842;border-radius:16px;padding:20px}.package:nth-child(2),.package:nth-child(3),.package:nth-child(4){background:#21201d}.package.featured{background:#2a2824;border-color:#979289}.package .package-icon{font-size:1.2rem;margin-top:15px}.package h3{font-size:1.3rem;min-height:2.2em}.package-media{border-radius:10px;aspect-ratio:1.6}.package .price{font-size:2.25rem}.package .price-block{min-height:120px}.package .button{width:100%;justify-content:space-between;font-size:.75rem}.package p a{font-size:.7rem;color:#c4c1bc}.package-badge{background:#e2e1de;color:#1e1c1a}.package.featured .package-badge{background:#ffdf00}.duration-tabs{border-color:#67625a}.duration-tabs button{min-height:44px}.success-gallery{columns:3;display:block;column-gap:24px}.success-gallery .success-photo{break-inside:avoid;margin-bottom:22px}.success-gallery .success-photo:nth-child(3n+2) img{aspect-ratio:4/5}.success-gallery .success-photo img{object-fit:cover}.success-gallery .success-photo figcaption{font-size:.65rem;letter-spacing:.07em}.faq{border-top:1px solid #c0bdb7}.faq details{padding:23px 0;border-color:#d8d6d2}.faq summary{font-size:1rem;display:list-item;line-height:1.4}.faq details p{font-size:.88rem;padding-right:25px;line-height:1.7}.finder{background:#e7e6e4;border:1px solid #cdcac6;padding:40px}.finder-result{border-left-color:#a78e00}.integration-box{border-radius:18px;border-color:#d1ceca;background:#fff;min-height:200px;box-shadow:var(--rm-shadow)}.integration-box>p{font-size:.85rem}.integration-status{font-size:.75rem}.photo-editorial{grid-template-columns:1fr 1.15fr;gap:80px}.photo-editorial h2{font-size:clamp(2.3rem,4vw,4rem)}.photo-editorial img{aspect-ratio:4/5;object-position:center 65%}.card{border-color:#d7d5d2;box-shadow:var(--rm-shadow)}.form-grid{gap:22px}input,textarea,select{border-color:#cbc8c3;border-radius:8px;background:#fcfdf9}label{font-size:.8rem;letter-spacing:.01em}.site-footer{background:#131210}.footer-grid{gap:60px}.footer-logo{display:block;max-width:172px}.site-footer h3{font-size:.8rem;letter-spacing:.07em;text-transform:uppercase;margin-bottom:22px}.site-footer a{font-size:.8rem}.footer-bottom{font-size:.68rem;border-color:#34322e}.rm-floating{position:fixed;right:22px;bottom:calc(22px + env(safe-area-inset-bottom,0px));z-index:90;display:flex;gap:8px}.rm-floating a,.rm-floating button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #8c867c;border-radius:50%;background:#1d1c1a;color:#fff;text-decoration:none;box-shadow:0 6px 20px #0003;padding:0;transition:transform .18s}.rm-floating .rm-float-book{background:#ffdf00;color:#111;border-color:#d2b800}.rm-floating svg{width:22px;height:22px}@media(min-width:1025px){.rm-floating a:hover,.rm-floating button:hover{transform:translateY(-2px)}}.site-footer{padding-bottom:100px}body:has(.menu-toggle[aria-expanded=true]) .rm-floating{visibility:hidden}.rm-floating :focus-visible{outline:3px solid #a07800;outline-offset:4px}@media(max-width:1024px){.rm-floating{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}body:has(input:focus,textarea:focus,select:focus) .rm-floating{visibility:hidden}}@media(max-width:1000px){.header-phone{display:none}.photo-editorial{gap:40px}.success-gallery{columns:2}}@media(max-width:700px){.rm-page-intro .breadcrumbs{margin-bottom:28px}.page-hero.rm-page-intro{padding:24px 0 38px}.rm-page-heading{grid-template-columns:1fr;gap:22px}.rm-page-heading>div{border-left:0;border-top:1px solid #c0bdb7;padding:18px 0 0}.rm-page-heading h1{font-size:2.7rem}.photo-editorial{grid-template-columns:1fr;gap:28px}.photo-editorial img{max-height:480px}.finder{padding:25px}.footer-grid{gap:28px}.success-gallery{columns:2;column-gap:12px}.success-gallery .success-photo figcaption span:first-child{font-size:.5rem}}@media(max-width:430px){.success-gallery{columns:1}.success-gallery .success-photo img{object-fit:contain;aspect-ratio:auto}.rm-page-heading h1{font-size:2.4rem}}
.rm-article .editor-content{max-width:780px}.rm-article h1{font-size:clamp(36px,5vw,68px);line-height:1.08}.rm-article-image{width:100%;height:auto;border-radius:16px;margin-bottom:32px}.rm-article .editor-content p{line-height:1.8;margin-bottom:24px}.rm-article .editor-content h2{margin-top:48px}.rm-article{padding-bottom:64px}

/* Shared course-detail price hierarchy. */
.card .price{font-size:clamp(2.5rem,4vw,3.5rem);font-weight:800;line-height:1.1;letter-spacing:-.04em;margin:12px 0 18px}.card>del{font-size:.85rem;color:#6f6a61}.card:has(>.price){align-self:start}.card:has(>.price) .button{width:100%}

/* Warm charcoal and gold palette: shared across all routes. */
:root{--rm-black:#0c0d10;--rm-charcoal:#202126;--rm-ivory:#faf8f3;--rm-canvas:#f6f3ed;--rm-text-primary:#202126;--rm-text-secondary:#66645f;--rm-border:#dedad2;--rm-shadow:0 20px 60px #19140b0a;--rm-gradient-gold:linear-gradient(125deg,#fff078 0%,#ffdf00 48%,#efbb21 100%);--rm-gradient-charcoal:linear-gradient(135deg,#292a30 0%,#15161a 58%,#101114 100%)}
.site-header{background:#101114f5;backdrop-filter:blur(16px)}
.page-hero.rm-page-intro{background:radial-gradient(ellipse at 95% 0%,#f4d77a42,transparent 60%),linear-gradient(125deg,#faf8f3,#eee9df);color:var(--rm-text-primary)}
.packages-section{background:radial-gradient(ellipse at 100% 0%,#c8971920,transparent 55%),var(--rm-gradient-charcoal)}
.package,.package:nth-child(2),.package:nth-child(3),.package:nth-child(4){background:linear-gradient(145deg,#292a30,#1b1c21);border-color:#45454a}
.package.featured{background:linear-gradient(145deg,#3a3322,#25231e);border-color:#b99a43}
.button:not(.secondary):not(.button-secondary):not(.button-outline),.rm-floating .rm-float-book{background:var(--rm-gradient-gold);color:#171717}
.rm-bento-small.yellow,.rm-stats-spotlight{background:var(--rm-gradient-gold)}
.rm-bento-feature,.rm-editorial-feature,.finder{background:linear-gradient(135deg,#f3eee3,#ebe6dc)}

/* Keep the approach section light while giving all three numbered cards a
   consistent, contained dark treatment. */
.rm-why{background:#f7f5f0;color:#191917}
.rm-why .rm-bento-feature,.rm-why .rm-bento-small,.rm-why .rm-bento-small.yellow{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#262624,#171716);color:#f5f3ed;border:1px solid #5a574f;box-shadow:0 16px 34px rgba(28,25,18,.1);transition:transform .32s cubic-bezier(.22,1,.36,1),border-color .32s ease,box-shadow .32s ease}
.rm-why .rm-bento-feature{border-color:#777166}
.rm-why .rm-bento-small.yellow{border-color:#c9aa13;background:linear-gradient(145deg,#302c17,#191813)}
.rm-why .rm-bento-feature p,.rm-why .rm-bento-small p{color:#c9c5bd}
.rm-why .rm-index{color:#ffdf00}
.rm-why .rm-bento-feature a{color:#fff;text-underline-offset:4px}
.rm-why .rm-bento-feature::after,.rm-why .rm-bento-small::after{content:"";position:absolute;z-index:-1;right:-52px;bottom:-64px;width:150px;height:150px;border:1px solid rgba(255,223,0,.26);border-radius:50%;box-shadow:0 0 0 22px rgba(255,223,0,.035);transition:transform .45s cubic-bezier(.22,1,.36,1),border-color .32s ease}
.rm-why .rm-bento-feature:hover,.rm-why .rm-bento-feature:focus-within,.rm-why .rm-bento-small:hover,.rm-why .rm-bento-small:focus-within{transform:translateY(-7px);border-color:#ffdf00;box-shadow:0 24px 48px rgba(28,25,18,.22)}
.rm-why .rm-bento-feature:hover::after,.rm-why .rm-bento-feature:focus-within::after,.rm-why .rm-bento-small:hover::after,.rm-why .rm-bento-small:focus-within::after{transform:translate(-14px,-12px) scale(1.08);border-color:rgba(255,223,0,.7)}
.rm-why .rm-bento-feature:hover .rm-index,.rm-why .rm-bento-small:hover .rm-index{animation:rm-approach-index-pulse .65s ease}
@keyframes rm-approach-index-pulse{50%{letter-spacing:.18em;color:#fff}}
@media(prefers-reduced-motion:reduce){.rm-why .rm-bento-feature,.rm-why .rm-bento-small,.rm-why .rm-bento-feature::after,.rm-why .rm-bento-small::after{transition:none}.rm-why .rm-bento-feature:hover,.rm-why .rm-bento-feature:focus-within,.rm-why .rm-bento-small:hover,.rm-why .rm-bento-small:focus-within{transform:none}.rm-why .rm-bento-feature:hover .rm-index,.rm-why .rm-bento-small:hover .rm-index{animation:none}}

/* Keep every package card on the same left-aligned content system. */
.packages .package:nth-child(4)>h3+p,.packages .package:nth-child(4) .price-block{display:block;text-align:left;margin-inline:0}
.rm-proof{background:linear-gradient(100deg,#f4f0e7,#eeeae2)}
.site-footer{background:linear-gradient(150deg,#202126,#101114 70%)}
.rm-square-background{background:radial-gradient(ellipse at 80% 10%,#c9972833,transparent 65%),linear-gradient(145deg,#222329,#141519 55%,#101114)}
.rm-square-vignette{background:linear-gradient(180deg,transparent,#10111477),radial-gradient(ellipse at center,transparent 30%,#10111499)}
.rm-square-grid{background-image:linear-gradient(#ddbd6820 1px,transparent 1px),linear-gradient(90deg,#ddbd6820 1px,transparent 1px)}

.packages-section .section-heading p{color:#c8c5be}.package p a{color:#d0ccc3}


/* Compact footer columns and consistent vertical rhythm. */
.site-footer{padding-top:40px;padding-bottom:82px}.footer-grid{grid-template-columns:1.25fr 1fr 1fr;gap:clamp(28px,5vw,64px);align-items:start}.footer-grid>div{min-width:0}.site-footer h3{margin:6px 0 18px}.site-footer p{margin:16px 0;max-width:32ch;line-height:1.65}.site-footer a{line-height:1.6}.rm-footer-marquee{margin-top:18px;padding-top:12px;max-width:310px}.rm-footer-word-window{height:80px;mask-image:linear-gradient(transparent,#000 25%,#000 75%,transparent)}.rm-footer-marquee-visual{font-size:1rem}.footer-bottom{margin-top:26px;padding-top:18px;align-items:center}.footer-bottom a{margin-bottom:0}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;column-gap:28px;align-items:center}.footer-grid>div:first-child>.footer-logo{grid-column:1}.footer-grid>div:first-child>p{grid-column:1}.footer-grid>div:first-child>.rm-footer-marquee{grid-column:2;grid-row:1/3;width:100%;margin:0}.site-footer{padding-top:32px}}
@media(max-width:480px){.footer-grid{gap:24px 18px}.footer-grid>div:first-child{display:block}.rm-footer-marquee{max-width:none;margin-top:16px}.site-footer h3{font-size:.72rem}.site-footer a,.site-footer p{font-size:.77rem}.footer-bottom{gap:12px;margin-top:24px}.site-footer{padding-bottom:100px}}
@media(prefers-reduced-motion:reduce){.rm-footer-word-window{height:40px;mask-image:none}}

.rm-beginners-badge{display:table;margin:0 0 16px;padding:7px 12px;border:1px solid #cfab21;border-radius:999px;background:var(--rm-gradient-gold);color:#202126;font-size:.72rem;font-weight:750;line-height:1.4}.package-badge{white-space:normal;max-width:calc(100% - 24px)}

/* Structured mobile and tablet navigation, aligned with the charcoal/gold system. */
@media(max-width:1024px){.site-nav,.header-phone{display:none}.menu-toggle{display:block;min-width:96px;min-height:46px;border-color:#ffffff45;background:#ffffff08;font-weight:650;font-size:.85rem}.menu-toggle[aria-expanded=true]{border-color:#ffdf00;color:#ffdf00}.header-inner{min-height:84px;gap:16px}.brand img{width:155px;height:60px}.mobile-menu{position:absolute;top:100%;left:0;right:0;padding:0;background:linear-gradient(140deg,#24252a,#111216);border-top:1px solid #ffffff18;border-bottom:1px solid #ffffff25;box-shadow:0 20px 35px #0004;max-height:calc(100dvh - 84px);overflow-y:auto;overscroll-behavior:contain}.rm-menu-inner{max-width:900px;margin:auto;padding:28px 32px 30px;display:grid;grid-template-columns:1fr 1fr;gap:26px 40px}.rm-menu-heading{margin:0 0 12px;color:#ffe55c;font-size:.65rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.mobile-menu .rm-menu-group a{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:11px 12px;margin:0;border-bottom:1px solid #ffffff10;border-radius:6px;color:#f4f1e9;font-size:.9rem;line-height:1.4}.mobile-menu .rm-menu-group a:hover,.mobile-menu .rm-menu-group a[aria-current=page]{background:#ffdf0012;color:#ffe55c}.mobile-menu .rm-menu-group a[aria-current=page]:after{content:'•';color:#ffdf00}.mobile-menu a:focus-visible{outline:2px solid #ffdf00;outline-offset:2px}.rm-menu-actions{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:20px;display:flex;align-items:center;gap:24px}.mobile-menu .rm-menu-actions .button{display:flex;min-height:48px;min-width:220px;padding:13px 20px;margin:0}.mobile-menu .rm-menu-contact{color:#ddd8cf;font-size:.85rem;margin:0;padding:12px 0;min-height:46px}body.admin-bar .mobile-menu{max-height:calc(100dvh - 116px)}}
@media(max-width:600px){.rm-menu-inner{grid-template-columns:1fr;padding:22px 20px 26px;gap:24px}.rm-menu-actions{display:grid;gap:8px}.mobile-menu .rm-menu-actions .button{width:100%}.mobile-menu .rm-menu-contact{text-align:center}.mobile-menu .rm-menu-group a{min-height:48px;font-size:.92rem}body.admin-bar .mobile-menu{max-height:calc(100dvh - 84px)}}

.mobile-menu{scrollbar-width:thin;scrollbar-color:#5e5d55 #17181c}


@media(max-width:1024px){.mobile-menu{opacity:0;transform:translateY(-12px);pointer-events:none;transition:opacity 220ms ease,transform 220ms cubic-bezier(.2,.7,.2,1)}.mobile-menu.is-open{opacity:1;transform:translateY(0);pointer-events:auto}.mobile-menu .rm-menu-group,.mobile-menu .rm-menu-actions{opacity:0;transform:translateY(8px);transition:opacity 180ms ease,transform 220ms ease}.mobile-menu.is-open .rm-menu-group,.mobile-menu.is-open .rm-menu-actions{opacity:1;transform:translateY(0);transition-delay:55ms}.mobile-menu.is-open .rm-menu-group:nth-child(2){transition-delay:85ms}.mobile-menu.is-open .rm-menu-actions{transition-delay:110ms}}
@media(prefers-reduced-motion:reduce){.mobile-menu,.mobile-menu .rm-menu-group,.mobile-menu .rm-menu-actions{transition:none;transform:none}}

/* Mobile and tablet helpful-links disclosure. */
@media(max-width:1024px){.rm-menu-group-toggle{width:100%;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 12px;border:1px solid #ffffff18;border-radius:8px;background:#ffffff08;color:#ffe55c;font:inherit;font-size:.72rem;font-weight:760;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}.rm-menu-group-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s cubic-bezier(.22,1,.36,1)}.rm-menu-group-toggle[aria-expanded=true]{background:#ffdf0012;border-color:#ffdf0066}.rm-menu-group-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.rm-menu-group-toggle:focus-visible{outline:2px solid #ffdf00;outline-offset:3px}.rm-menu-group.is-collapsible .rm-menu-links{padding-top:7px}.rm-menu-group.is-collapsible .rm-menu-links[hidden]{display:none}.rm-menu-group.is-collapsible.is-expanded .rm-menu-links{animation:rm-helpful-links-in .24s cubic-bezier(.22,1,.36,1) both}}
@keyframes rm-helpful-links-in{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.rm-menu-group-toggle svg{transition:none}.rm-menu-group.is-collapsible.is-expanded .rm-menu-links{animation:none}}
.rm-office-address{margin:16px 0;padding:14px 16px;border-left:3px solid #ffdf00;background:#ffdf000d;border-radius:0 9px 9px 0}.rm-office-address>span,.footer-grid>div:last-child>p:before,body[data-page=contact] main .grid.two>div:first-child>p:first-of-type:before{display:block;margin-bottom:6px;color:#ffe55c;font-size:.62rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.rm-office-address>p{margin:0;color:#e5e1da}.rm-office-address-light{background:#ffdf0018;border:1px solid #d3b61c;border-left-width:3px}.rm-office-address-light>span{color:#6e5c00}.rm-office-address-light>p{color:var(--rm-text-primary)}
.footer-grid>div:last-child>p{padding:14px 16px;border-left:3px solid #ffdf00;background:#ffdf000d;border-radius:0 9px 9px 0}.footer-grid>div:last-child>p:before,body[data-page=contact] main .grid.two>div:first-child>p:first-of-type:before{content:'Office address'}
body[data-page=contact] main .grid.two>div:first-child>p:first-of-type{padding:16px 18px;border:1px solid #d3b61c;border-left-width:3px;border-radius:0 9px 9px 0;background:#ffdf0018}
.package:nth-child(4) .package-badge{background:var(--rm-gradient-gold);color:#171717;border:1px solid #d4b700;box-shadow:0 5px 16px #0004;font-size:.66rem;padding:6px 11px}.package:nth-child(4)>h3+p{display:block;min-height:4.5em;text-align:left;color:#e0ddd6}.package:nth-child(4) .price-block{display:block;text-align:left}.package:nth-child(4) .price-block del{display:inline;margin:0 6px 0 0;font-size:.78rem;text-decoration-thickness:2px;text-decoration-color:#ffdf00}.package:nth-child(4) .price{display:inline;font-size:2.35rem;line-height:1}.package:nth-child(4) .package-note{display:block;text-align:left;margin-top:12px}
.rm-success-home .success-strip.rm-success-marquee{display:block;max-width:100%;overflow:hidden;padding:0;scrollbar-width:none}.rm-success-home .success-strip.rm-success-marquee::-webkit-scrollbar{display:none}.rm-success-home .rm-success-marquee-track{display:flex;width:max-content;gap:20px}.rm-success-home .rm-success-marquee .success-photo{flex:0 0 280px;padding-top:0;transform:none}.rm-success-home .rm-success-marquee .success-photo:nth-child(3n+2){transform:translateY(24px)}.rm-success-home .rm-success-marquee .success-photo img{width:100%;height:370px;aspect-ratio:auto;object-fit:cover;object-position:center 65%}@media(max-width:700px){.rm-success-home .rm-success-marquee .success-photo{flex-basis:230px}.rm-success-home .rm-success-marquee .success-photo img{height:310px}}
.duration-tabs button{display:grid;place-items:center;align-content:center;gap:2px;position:relative;line-height:1.05}.duration-tabs button small{display:block;color:#ffdf00;font-size:.42rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.duration-tabs button:has(small){box-shadow:inset 0 0 0 1px #ffdf008c;background:#ffdf0010}.duration-tabs button[aria-pressed=true] small{color:#403700}.duration-tabs button:has(small)::before{content:"★";position:absolute;top:-9px;right:2px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#ffdf00;color:#171512;font-size:.52rem;box-shadow:0 3px 9px #0006}.duration-tabs{overflow:visible}
.rm-popular-rate{display:inline-flex;align-items:center;margin-left:5px;padding:3px 6px;border-radius:999px;background:#ffdf00;color:#1a1814;font-size:.5rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}

/* Halifax photo-led page heroes. Each route family uses a purpose-built scene. */
body:not([data-page=home]) .page-hero.rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-areas-1920.webp');position:relative;isolation:isolate;display:grid;align-items:end;min-height:clamp(390px,47vw,570px);overflow:hidden;padding:38px 0 66px;border-bottom:1px solid #ffffff24;background:#121313;color:#fff}
body:not([data-page=home]) .page-hero.rm-page-intro::before{content:"";position:absolute;inset:-2%;z-index:-2;background-image:var(--rm-page-hero);background-position:var(--rm-page-hero-position,center);background-size:cover;transform:scale(1.035);animation:rm-page-hero-arrive 1.1s cubic-bezier(.2,.72,.25,1) both}
body:not([data-page=home]) .page-hero.rm-page-intro::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#080909f2 0%,#080909c9 37%,#08090962 68%,#08090924 100%),linear-gradient(0deg,#090a09dc 0%,transparent 62%);background-size:auto}
body:not([data-page=home]) .rm-page-intro .wrap{width:min(1180px,calc(100% - 40px))}
body:not([data-page=home]) .rm-page-intro .breadcrumbs{margin:0 0 clamp(60px,9vw,120px);color:#e7e3da;font-size:.72rem;text-shadow:0 1px 12px #000}
body:not([data-page=home]) .rm-page-intro .breadcrumbs a{color:#fff}
body:not([data-page=home]) .rm-page-heading{grid-template-columns:minmax(0,1.45fr) minmax(270px,.75fr);gap:clamp(30px,6vw,80px)}
body:not([data-page=home]) .rm-page-heading h1{color:#fff;text-wrap:balance;text-shadow:0 3px 30px #0009}
body:not([data-page=home]) .rm-page-heading>div{border-left-color:#ffffff6b}
body:not([data-page=home]) .rm-page-heading .eyebrow{color:#ffea65}
body:not([data-page=home]) .rm-page-heading>div>p{color:#f0ece4;text-shadow:0 2px 16px #000}

body[data-page=lessons] .rm-page-intro,
body[data-page=one-on-one-session] .rm-page-intro,
body[data-page=courses-one-on-one-session] .rm-page-intro,
body[data-page=one-on-one-90-minute-lesson] .rm-page-intro,
body[data-page=courses-one-on-one-90-minute-lesson] .rm-page-intro,
body[data-page=one-on-one-120-minute-lesson] .rm-page-intro,
body[data-page=courses-one-on-one-120-minute-lesson] .rm-page-intro,
body[data-page=driver-education] .rm-page-intro,
body[data-page=courses-driver-education] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-lessons-1920.webp') !important;--rm-page-hero-position:center 46%}
body[data-page=about] .rm-page-intro,
body[data-page=instructors] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-instructor-1920.webp') !important;--rm-page-hero-position:center 18%;min-height:clamp(560px,48vw,680px)}
body[data-page=student-success] .rm-page-intro,
body[data-page=reviews] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-success-1920.webp') !important;--rm-page-hero-position:center 42%}
body[data-page=blog] .rm-page-intro,
body[data-page=faqs] .rm-page-intro,
body[data-page=how-it-works] .rm-page-intro,
body[data-page=privacy-policy] .rm-page-intro,
body[data-page=terms] .rm-page-intro,
body[data-page=cancellation-policy] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-knowledge-1920.webp') !important;--rm-page-hero-position:center 54%}
body[data-page=vehicles] .rm-page-intro,
body[data-page=vehicle-for-road-test] .rm-page-intro,
body[data-page=courses-vehicle-for-road-test] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-fleet-1920.webp') !important;--rm-page-hero-position:center 48%}
body[data-page=defensive-driving-course] .rm-page-intro,
body[data-page=courses-defensive-driving-course] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-defensive-1920.webp') !important;--rm-page-hero-position:center 50%}
body[data-page=book] .rm-page-intro,
body[data-page=contact] .rm-page-intro,
body[data-page=booking-manage] .rm-page-intro,
body[data-page=booking-confirmation] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-booking-1920.webp') !important;--rm-page-hero-position:center 50%}
body[data-page=service-areas] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-areas-1920.webp');--rm-page-hero-position:center 53%}

@keyframes rm-page-hero-arrive{from{opacity:.55;transform:scale(1.085)}to{opacity:1;transform:scale(1.035)}}
@media(max-width:900px){body:not([data-page=home]) .page-hero.rm-page-intro{min-height:430px;padding:28px 0 48px}body:not([data-page=home]) .rm-page-intro .breadcrumbs{margin-bottom:72px}body:not([data-page=home]) .rm-page-heading{grid-template-columns:1fr;gap:22px}body:not([data-page=home]) .rm-page-heading>div{border-left:0;border-top:1px solid #ffffff52;padding:18px 0 0}}
@media(max-width:700px){body:not([data-page=home]) .page-hero.rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-areas-mobile.webp');min-height:470px;padding:24px 0 38px}body[data-page=lessons] .rm-page-intro,body[data-page=one-on-one-session] .rm-page-intro,body[data-page=courses-one-on-one-session] .rm-page-intro,body[data-page=driver-education] .rm-page-intro,body[data-page=courses-driver-education] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-lessons-mobile.jpg') !important}body[data-page=about] .rm-page-intro,body[data-page=instructors] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-instructor-mobile.webp') !important;--rm-page-hero-position:62% 18%;min-height:540px}body[data-page=student-success] .rm-page-intro,body[data-page=reviews] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-success-mobile.webp') !important}body[data-page=blog] .rm-page-intro,body[data-page=faqs] .rm-page-intro,body[data-page=how-it-works] .rm-page-intro,body[data-page=privacy-policy] .rm-page-intro,body[data-page=terms] .rm-page-intro,body[data-page=cancellation-policy] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-knowledge-mobile.webp') !important}body[data-page=vehicles] .rm-page-intro,body[data-page=vehicle-for-road-test] .rm-page-intro,body[data-page=courses-vehicle-for-road-test] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-fleet-mobile.webp') !important}body[data-page=defensive-driving-course] .rm-page-intro,body[data-page=courses-defensive-driving-course] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-defensive-mobile.webp') !important}body[data-page=book] .rm-page-intro,body[data-page=contact] .rm-page-intro,body[data-page=booking-manage] .rm-page-intro,body[data-page=booking-confirmation] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-booking-mobile.webp') !important}body:not([data-page=home]) .page-hero.rm-page-intro::after{background:linear-gradient(0deg,#080909f3 0%,#080909aa 58%,#08090942 100%),radial-gradient(circle at 24% 30%,#ffdf0019 0 1px,transparent 1.6px);background-size:auto,5px 5px}body:not([data-page=home]) .rm-page-intro .breadcrumbs{margin-bottom:105px}body:not([data-page=home]) .rm-page-heading h1{font-size:clamp(2.35rem,11vw,3.25rem)}}
@media(prefers-reduced-motion:reduce){body:not([data-page=home]) .page-hero.rm-page-intro::before{animation:none}}
@media(max-width:700px){body[data-page=one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-120-minute-lesson] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-lessons-mobile.jpg') !important}}

/* Mobile photo audit: stable proportions, useful crops and compact image cards. */
img{max-width:100%}
@media(max-width:700px){
  .package{padding:16px}
  .package-media{aspect-ratio:16/10;border-radius:10px}
  .package-media img{object-position:center 55%}
  .package>h3+p,.package h3,.package .price-block{min-height:0}
  .package:not(.featured) .price-block::before{display:none}
  .package .price-block{padding-top:14px}
  .package .button{margin:12px 0}
  .rm-bento-photo{height:auto;min-height:0;aspect-ratio:4/3}
  .rm-bento-photo img{object-position:center 58%}
  .rm-fleet-layout img,.fleet-image{aspect-ratio:4/3;object-position:center}
  .rm-editorial-feature img,.editorial-figure img{aspect-ratio:4/3;object-position:center 58%}
  .photo-editorial img{width:100%;height:auto;max-height:none;aspect-ratio:4/3;object-position:center 60%}
  .rm-private-intro figure{min-height:0;aspect-ratio:4/3}
  .rm-private-intro img{position:absolute;inset:0;width:100%;height:100%;object-position:center 55%}
  .rm-offer-story figure img,.rm-course-panel figure img{aspect-ratio:4/3;object-position:center 58%}
  .rm-reviews-intro img{height:auto;aspect-ratio:4/3;object-position:center 62%}
  #soro-blog .soro-blog-card-image,.rm-native-journal img{aspect-ratio:4/3;object-position:center}
}
@media(max-width:430px){
  .rm-success-page .success-photo img,
  .rm-success-page .success-photo:nth-child(3n+2) img,
  .rm-success-page .success-photo:first-child img{height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 68%;background:#e8e6e1}
  .rm-student-carousel .rm-student-slide img{display:block;width:100%;height:auto;max-height:460px;aspect-ratio:4/5;object-fit:contain;background:#e8e6e1}
  .rm-success-home .rm-success-marquee .success-photo img{height:290px;object-position:center 62%}
  .rm-success-home .rm-success-marquee .success-photo{flex-basis:215px}
}

/* How It Works: each image explains the action in its section. */
body[data-page=how-it-works] .rm-how-process-photo,
body[data-page=how-it-works] .rm-how-finder-photo{position:relative;margin:28px 0;overflow:hidden;border-radius:16px;background:#1b1b18}
body[data-page=how-it-works] .rm-how-process-photo img,
body[data-page=how-it-works] .rm-how-finder-photo img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .65s cubic-bezier(.2,.72,.25,1),filter .4s ease}
body[data-page=how-it-works] .rm-how-process-photo img{object-position:center 52%}
body[data-page=how-it-works] .rm-how-finder-photo img{object-position:center 55%}
body[data-page=how-it-works] .rm-how-process-photo:hover img,
body[data-page=how-it-works] .rm-how-finder-photo:hover img{transform:scale(1.025);filter:saturate(1.05)}
body[data-page=how-it-works] .rm-how-process-photo figcaption,
body[data-page=how-it-works] .rm-how-finder-photo figcaption{position:absolute;inset:auto 12px 12px;padding:8px 10px;border-radius:8px;background:#0c0c0ad9;color:#fff;font-size:.61rem;letter-spacing:.04em;line-height:1.45}
body[data-page=how-it-works] .rm-how-lab-photo img{aspect-ratio:16/10;object-position:center 58%}
body[data-page=how-it-works] .driving-film{aspect-ratio:16/9;object-fit:cover;background:#080807}
@media(max-width:700px){body[data-page=how-it-works] .rm-how-process-photo,body[data-page=how-it-works] .rm-how-finder-photo{margin:22px 0}body[data-page=how-it-works] .rm-how-process-photo img,body[data-page=how-it-works] .rm-how-finder-photo img,body[data-page=how-it-works] .rm-how-lab-photo img{aspect-ratio:4/3}body[data-page=how-it-works] .rm-how-process-photo figcaption,body[data-page=how-it-works] .rm-how-finder-photo figcaption{position:static;border-radius:0;background:#151411;color:#d7d3ca}body[data-page=how-it-works] .driving-film{aspect-ratio:4/3;max-height:none}}
@media(prefers-reduced-motion:reduce){body[data-page=how-it-works] .rm-how-process-photo img,body[data-page=how-it-works] .rm-how-finder-photo img{transition:none}}

/* Responsive hero art direction: page-specific height, asset size and crop. */
body:not([data-page=home]) .page-hero.rm-page-intro{min-height:var(--rm-hero-desktop,540px)}
body[data-page=lessons] .rm-page-intro{--rm-hero-desktop:590px}body[data-page=about] .rm-page-intro{--rm-hero-desktop:640px}body[data-page=how-it-works] .rm-page-intro{--rm-hero-desktop:550px}body[data-page=instructors] .rm-page-intro{--rm-hero-desktop:600px}body[data-page=vehicles] .rm-page-intro{--rm-hero-desktop:510px}body[data-page=student-success] .rm-page-intro{--rm-hero-desktop:570px}body[data-page=reviews] .rm-page-intro{--rm-hero-desktop:520px}body[data-page=blog] .rm-page-intro{--rm-hero-desktop:500px}body[data-page=faqs] .rm-page-intro{--rm-hero-desktop:490px}body[data-page=contact] .rm-page-intro{--rm-hero-desktop:535px}body[data-page=book] .rm-page-intro{--rm-hero-desktop:560px}body[data-page=service-areas] .rm-page-intro{--rm-hero-desktop:500px}body[data-page=one-on-one-session] .rm-page-intro,body[data-page=driver-education] .rm-page-intro,body[data-page=defensive-driving-course] .rm-page-intro,body[data-page=vehicle-for-road-test] .rm-page-intro{--rm-hero-desktop:560px}
@media(min-width:701px) and (max-width:1024px){body:not([data-page=home]) .page-hero.rm-page-intro{min-height:var(--rm-hero-tablet,470px)}body[data-page=lessons] .rm-page-intro,body[data-page=student-success] .rm-page-intro,body[data-page=book] .rm-page-intro{--rm-hero-tablet:520px}body[data-page=how-it-works] .rm-page-intro,body[data-page=contact] .rm-page-intro{--rm-hero-tablet:490px}body[data-page=lessons] .rm-page-intro,body[data-page=one-on-one-session] .rm-page-intro,body[data-page=courses-one-on-one-session] .rm-page-intro,body[data-page=one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=driver-education] .rm-page-intro,body[data-page=courses-driver-education] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-lessons-tablet.webp')!important;--rm-page-hero-position:57% 47%}body[data-page=about] .rm-page-intro,body[data-page=instructors] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-instructor-tablet.webp')!important;--rm-page-hero-position:58% 18%;--rm-hero-tablet:560px}body[data-page=student-success] .rm-page-intro,body[data-page=reviews] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-success-tablet.webp')!important;--rm-page-hero-position:60% 42%}body[data-page=blog] .rm-page-intro,body[data-page=faqs] .rm-page-intro,body[data-page=how-it-works] .rm-page-intro,body[data-page=privacy-policy] .rm-page-intro,body[data-page=terms] .rm-page-intro,body[data-page=cancellation-policy] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-knowledge-tablet.webp')!important;--rm-page-hero-position:56% 54%}body[data-page=vehicles] .rm-page-intro,body[data-page=vehicle-for-road-test] .rm-page-intro,body[data-page=courses-vehicle-for-road-test] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-fleet-tablet.webp')!important;--rm-page-hero-position:58% 50%}body[data-page=defensive-driving-course] .rm-page-intro,body[data-page=courses-defensive-driving-course] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-defensive-tablet.webp')!important;--rm-page-hero-position:60% 51%}body[data-page=book] .rm-page-intro,body[data-page=contact] .rm-page-intro,body[data-page=booking-manage] .rm-page-intro,body[data-page=booking-confirmation] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-booking-tablet.webp')!important;--rm-page-hero-position:59% 50%}body[data-page=service-areas] .rm-page-intro{--rm-page-hero:url('../../images/optimized/hero-halifax-areas-tablet.webp')!important}.rm-hero-layout{min-height:650px}.rm-hero-backdrop{background-image:linear-gradient(90deg,#090807f2 0,#090807c7 38%,#09080726 74%),linear-gradient(0deg,#090807aa,transparent 42%),url('../../images/optimized/hero-coastal-v2-tablet.webp');background-position:58% center}}
@media(max-width:700px){body:not([data-page=home]) .page-hero.rm-page-intro{min-height:var(--rm-hero-mobile,510px)}body[data-page=lessons] .rm-page-intro,body[data-page=student-success] .rm-page-intro,body[data-page=book] .rm-page-intro{--rm-hero-mobile:560px}body[data-page=blog] .rm-page-intro,body[data-page=faqs] .rm-page-intro,body[data-page=privacy-policy] .rm-page-intro,body[data-page=terms] .rm-page-intro{--rm-hero-mobile:470px}body[data-page=contact] .rm-page-intro,body[data-page=how-it-works] .rm-page-intro{--rm-hero-mobile:530px}body[data-page=student-success] .rm-page-intro,body[data-page=reviews] .rm-page-intro{--rm-page-hero-position:68% 44%}body[data-page=about] .rm-page-intro,body[data-page=instructors] .rm-page-intro{--rm-page-hero-position:66% 18%;--rm-hero-mobile:540px}body[data-page=lessons] .rm-page-intro,body[data-page=one-on-one-session] .rm-page-intro,body[data-page=driver-education] .rm-page-intro{--rm-page-hero-position:63% 48%}body[data-page=vehicles] .rm-page-intro,body[data-page=vehicle-for-road-test] .rm-page-intro{--rm-page-hero-position:65% 50%}body[data-page=defensive-driving-course] .rm-page-intro{--rm-page-hero-position:64% 52%}body[data-page=book] .rm-page-intro,body[data-page=contact] .rm-page-intro{--rm-page-hero-position:67% 50%}}

.knowledge-tabs button{position:relative;overflow:hidden}.rm-tab-progress{position:absolute;left:12px;right:12px;bottom:3px;height:2px;border-radius:2px;background:#171713;transform:scaleX(0);transform-origin:left}.knowledge-tabs button.is-progressing .rm-tab-progress{animation:rm-tab-progress 5s linear both}.knowledge-panel.is-active{animation:rm-panel-in .38s cubic-bezier(.22,1,.36,1)}@keyframes rm-tab-progress{to{transform:scaleX(1)}}@keyframes rm-panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.rm-tab-progress{display:none}.knowledge-panel.is-active{animation:none}}

/* Site-wide hero art direction: protect subjects and retain the Halifax setting. */
@media(min-width:1025px){
body:not([data-page=home]) .page-hero.rm-page-intro{min-height:var(--rm-hero-desktop,600px)}
body[data-page=lessons] .rm-page-intro,body[data-page=one-on-one-session] .rm-page-intro,body[data-page=courses-one-on-one-session] .rm-page-intro,body[data-page=one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=driver-education] .rm-page-intro,body[data-page=courses-driver-education] .rm-page-intro{--rm-hero-desktop:660px;--rm-page-hero-position:center 36%}
body[data-page=about] .rm-page-intro,body[data-page=instructors] .rm-page-intro{--rm-hero-desktop:640px;--rm-page-hero-position:center 18%}
body[data-page=student-success] .rm-page-intro,body[data-page=reviews] .rm-page-intro{--rm-hero-desktop:640px;--rm-page-hero-position:center 24%}
body[data-page=blog] .rm-page-intro,body[data-page=faqs] .rm-page-intro,body[data-page=how-it-works] .rm-page-intro,body[data-page=privacy-policy] .rm-page-intro,body[data-page=terms] .rm-page-intro,body[data-page=cancellation-policy] .rm-page-intro{--rm-hero-desktop:600px;--rm-page-hero-position:center 48%}
body[data-page=vehicles] .rm-page-intro,body[data-page=vehicle-for-road-test] .rm-page-intro,body[data-page=courses-vehicle-for-road-test] .rm-page-intro{--rm-hero-desktop:620px;--rm-page-hero-position:center 43%}
body[data-page=defensive-driving-course] .rm-page-intro,body[data-page=courses-defensive-driving-course] .rm-page-intro{--rm-hero-desktop:620px;--rm-page-hero-position:center 43%}
body[data-page=book] .rm-page-intro,body[data-page=contact] .rm-page-intro,body[data-page=booking-manage] .rm-page-intro,body[data-page=booking-confirmation] .rm-page-intro{--rm-hero-desktop:620px;--rm-page-hero-position:center 42%}
body[data-page=service-areas] .rm-page-intro{--rm-hero-desktop:620px;--rm-page-hero-position:center 45%}
}
@media(min-width:701px) and (max-width:1024px){
body:not([data-page=home]) .page-hero.rm-page-intro{min-height:var(--rm-hero-tablet,520px)}
body[data-page=lessons] .rm-page-intro,body[data-page=one-on-one-session] .rm-page-intro,body[data-page=courses-one-on-one-session] .rm-page-intro,body[data-page=one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=driver-education] .rm-page-intro,body[data-page=courses-driver-education] .rm-page-intro{--rm-hero-tablet:570px;--rm-page-hero-position:58% 34%}
body[data-page=about] .rm-page-intro,body[data-page=instructors] .rm-page-intro{--rm-hero-tablet:570px;--rm-page-hero-position:60% 16%}
body[data-page=student-success] .rm-page-intro,body[data-page=reviews] .rm-page-intro{--rm-hero-tablet:560px;--rm-page-hero-position:61% 22%}
body[data-page=blog] .rm-page-intro,body[data-page=faqs] .rm-page-intro,body[data-page=how-it-works] .rm-page-intro,body[data-page=privacy-policy] .rm-page-intro,body[data-page=terms] .rm-page-intro,body[data-page=cancellation-policy] .rm-page-intro{--rm-hero-tablet:530px;--rm-page-hero-position:58% 46%}
body[data-page=vehicles] .rm-page-intro,body[data-page=vehicle-for-road-test] .rm-page-intro,body[data-page=courses-vehicle-for-road-test] .rm-page-intro,body[data-page=defensive-driving-course] .rm-page-intro,body[data-page=courses-defensive-driving-course] .rm-page-intro{--rm-hero-tablet:550px;--rm-page-hero-position:61% 42%}
body[data-page=book] .rm-page-intro,body[data-page=contact] .rm-page-intro,body[data-page=booking-manage] .rm-page-intro,body[data-page=booking-confirmation] .rm-page-intro,body[data-page=service-areas] .rm-page-intro{--rm-hero-tablet:550px;--rm-page-hero-position:61% 42%}
}
@media(max-width:700px){
body:not([data-page=home]) .page-hero.rm-page-intro{min-height:var(--rm-hero-mobile,520px)}
body[data-page=lessons] .rm-page-intro,body[data-page=one-on-one-session] .rm-page-intro,body[data-page=courses-one-on-one-session] .rm-page-intro,body[data-page=one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-90-minute-lesson] .rm-page-intro,body[data-page=one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=courses-one-on-one-120-minute-lesson] .rm-page-intro,body[data-page=driver-education] .rm-page-intro,body[data-page=courses-driver-education] .rm-page-intro{--rm-hero-mobile:570px;--rm-page-hero-position:66% 24%}
body[data-page=about] .rm-page-intro,body[data-page=instructors] .rm-page-intro{--rm-hero-mobile:570px;--rm-page-hero-position:68% 14%}
body[data-page=student-success] .rm-page-intro,body[data-page=reviews] .rm-page-intro{--rm-hero-mobile:560px;--rm-page-hero-position:70% 18%}
body[data-page=blog] .rm-page-intro,body[data-page=faqs] .rm-page-intro,body[data-page=how-it-works] .rm-page-intro,body[data-page=privacy-policy] .rm-page-intro,body[data-page=terms] .rm-page-intro,body[data-page=cancellation-policy] .rm-page-intro{--rm-hero-mobile:520px;--rm-page-hero-position:64% 40%}
body[data-page=vehicles] .rm-page-intro,body[data-page=vehicle-for-road-test] .rm-page-intro,body[data-page=courses-vehicle-for-road-test] .rm-page-intro,body[data-page=defensive-driving-course] .rm-page-intro,body[data-page=courses-defensive-driving-course] .rm-page-intro{--rm-hero-mobile:550px;--rm-page-hero-position:68% 38%}
body[data-page=book] .rm-page-intro,body[data-page=contact] .rm-page-intro,body[data-page=booking-manage] .rm-page-intro,body[data-page=booking-confirmation] .rm-page-intro,body[data-page=service-areas] .rm-page-intro{--rm-hero-mobile:550px;--rm-page-hero-position:68% 38%}
}

/* Responsive density audit: consistent section rhythm without flattening page-specific layouts. */
.section{padding-block:clamp(54px,5.8vw,82px)}
.section-heading{margin-bottom:clamp(24px,3vw,34px)}
.section-heading h2,.rm-lessons-heading h2{margin-block:12px 0}
.grid{gap:clamp(16px,2.2vw,24px)}
.card{padding:clamp(22px,2.2vw,28px)}
.rm-page-heading{gap:clamp(30px,4.5vw,52px)}
.rm-page-intro .breadcrumbs{margin-bottom:clamp(30px,4vw,46px)}
.rm-contact-help header,.rm-lessons-heading,.rm-success-heading,.rm-reviews-intro{margin-bottom:clamp(28px,4vw,42px)}
.rm-contact-layout,.photo-editorial,.rm-private-included{gap:clamp(30px,5vw,58px)}
.rm-contact-topics,.rm-choice-grid,.rm-skills-grid,.rm-private-prices{gap:clamp(12px,1.7vw,18px)}
.rm-private-shell{gap:clamp(18px,2.2vw,24px)}
.rm-private-duration,.rm-private-included,.rm-private-process{padding:clamp(34px,5vw,58px)}
.rm-reviews-cta{margin-top:clamp(32px,4vw,44px);padding:clamp(28px,4vw,38px)}
.rm-faq-heading{margin-bottom:clamp(24px,3vw,32px)}
.rm-faq-tabs .knowledge-tabs{margin-bottom:clamp(28px,3vw,38px)}
@media(min-width:1025px){body:not([data-page=home]) .page-hero.rm-page-intro{min-height:min(var(--rm-hero-desktop,560px),600px)}}
@media(min-width:701px) and (max-width:1024px){
  .section{padding-block:62px}
  body:not([data-page=home]) .page-hero.rm-page-intro{min-height:min(var(--rm-hero-tablet,500px),520px)}
  .wrap{width:min(var(--rm-container),calc(100% - 40px))}
  .rm-contact-topics,.rm-choice-grid{gap:14px}
  .rm-contact-topics a,.rm-choice-grid a{padding:24px}
  .rm-private-copy{padding:clamp(30px,4vw,46px)}
}
@media(max-width:700px){
  .section{padding-block:46px}
  .wrap{width:calc(100% - 28px)}
  body:not([data-page=home]) .page-hero.rm-page-intro{min-height:min(var(--rm-hero-mobile,500px),520px)}
  body:not([data-page=home]) .rm-page-intro .breadcrumbs{margin-bottom:72px}
  .rm-page-heading{gap:18px}
  .rm-page-heading h1{font-size:clamp(2.25rem,10.5vw,3rem);line-height:.98}
  .section-heading{margin-bottom:24px}
  .section-heading>p{margin-top:12px}
  .card{padding:20px}
  .rm-contact-help header,.rm-success-heading,.rm-reviews-intro{margin-bottom:28px}
  .rm-contact-topics a,.rm-choice-grid a{min-height:220px;padding:22px}
  .rm-contact-layout,.photo-editorial,.rm-private-included{gap:24px}
  .rm-contact-info,.rm-contact-form-panel{padding:24px 20px}
  .rm-private-duration,.rm-private-included,.rm-private-process{padding:28px 20px}
  .rm-private-prices{margin-top:28px}
  .rm-private-price{padding:24px}
  .rm-faq-tabs .knowledge-tabs{gap:8px;margin-bottom:28px}
  .rm-faq-tabs .knowledge-tabs button{padding:10px 13px}
  .rm-faq-tabs .faq summary{min-height:62px;padding:17px 18px}
  .rm-faq-tabs .faq details>p,.rm-faq-tabs .faq details>div{padding:0 18px 20px}
}
@media(max-width:430px){
  .section{padding-block:40px}
  body:not([data-page=home]) .page-hero.rm-page-intro{min-height:500px}
  .rm-page-heading h1{font-size:2.3rem}
  .rm-contact-topics a,.rm-choice-grid a{min-height:200px;padding:20px}
  .rm-contact-info,.rm-contact-form-panel{padding:22px 18px}
  .rm-reviews-cta{padding:24px 20px}
}

/* Typography audit: readable measures, intentional wrapping and consistent hierarchy. */
body{font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
:is(h1,h2,h3,h4){overflow-wrap:normal;text-wrap:balance}
h1{line-height:.99;letter-spacing:-.058em}
h2{line-height:1.04;letter-spacing:-.048em}
h3{line-height:1.16;letter-spacing:-.028em}
:is(p,li,figcaption,summary){text-wrap:pretty}
p{line-height:1.72}
.eyebrow,.rm-label,.rm-mini{display:inline-block;line-height:1.45;letter-spacing:.145em;text-wrap:balance}
.section-heading h2,.rm-section-heading h2,.rm-lessons-heading h2,.rm-page-heading h1{max-width:18ch}
.section-heading>p,.rm-section-heading>p,.rm-lessons-heading>p,.rm-page-heading>div>p{max-width:46ch;line-height:1.72}
.card h3,.package h3,.rm-choice-grid h3,.rm-skills-grid h3{margin-bottom:12px}
.card p,.package p,.rm-choice-grid p,.rm-skills-grid p{line-height:1.68}
.button,.rm-text-link,.rm-contact-topics b,.rm-choice-grid b{line-height:1.25;text-wrap:balance}
.price,.rm-private-cost strong,.rm-stats-value,.rm-success-status,.rates{font-variant-numeric:tabular-nums}
.faq summary,.rm-faq-tabs .faq summary{line-height:1.45;text-wrap:pretty}
.editor-content{font-size:1.02rem}.editor-content p{max-width:68ch;line-height:1.82}.editor-content li{margin-block:7px;line-height:1.7}.editor-content h2{max-width:22ch}.editor-content h3{max-width:28ch}
@media(min-width:701px) and (max-width:1024px){
  h1{letter-spacing:-.052em}
  h2{letter-spacing:-.043em}
  .section-heading h2,.rm-section-heading h2,.rm-lessons-heading h2{max-width:16ch}
  .rm-contact-topics h3,.rm-choice-grid h3{font-size:clamp(1.35rem,2.6vw,1.75rem)}
}
@media(max-width:700px){
  body{font-size:15.5px;line-height:1.65}
  h1{line-height:1;letter-spacing:-.05em}
  h2{font-size:clamp(2rem,9vw,2.75rem);line-height:1.02;letter-spacing:-.044em}
  h3{font-size:clamp(1.2rem,5.6vw,1.48rem);line-height:1.14}
  p{line-height:1.68}
  .eyebrow,.rm-label,.rm-mini{font-size:.64rem;letter-spacing:.13em}
  .section-heading h2,.rm-section-heading h2,.rm-lessons-heading h2,.rm-page-heading h1{max-width:16ch}
  .section-heading>p,.rm-section-heading>p,.rm-lessons-heading>p,.rm-page-heading>div>p{max-width:38ch}
  .button{font-size:.82rem;line-height:1.25}
  .editor-content{font-size:1rem}.editor-content p{line-height:1.76}
  .rm-contact-topics p,.rm-choice-grid p,.rm-skills-grid p,.package p{font-size:.86rem}
  .rm-skills{overflow:clip}
}
@media(max-width:430px){
  h2{font-size:clamp(1.9rem,9.5vw,2.4rem)}
  .rm-page-heading h1{font-size:2.25rem}
  .eyebrow,.rm-label,.rm-mini{letter-spacing:.115em}
}

/* Audit remediation: reliable targets for standalone interactive controls. */
:where(button,.button,.menu-toggle,.site-nav a,.mobile-menu a,.rm-action-dock a,.rm-action-dock button,.rm-student-controls button,.knowledge-tabs button){min-block-size:44px}
.rm-reviews-feed.is-fallback{min-height:0;padding-block:18px 34px}
.rm-reviews-feed.is-fallback [data-reviews-widget]{display:none}

/* Contain the Learn Beyond the Lesson image inside its editorial card. */
.rm-editorial-feature{overflow:hidden;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.rm-editorial-feature>*{min-width:0}.rm-editorial-feature>img{display:block;width:100%;max-width:100%;height:100%;object-fit:cover}
.rm-wide-content-page{padding-block:clamp(28px,4vw,58px)}.rm-wide-content-page>.wrap{width:min(var(--rm-container),calc(100% - 48px));max-width:none}.rm-wide-content-page .rmb-web-dashboard{max-width:none;padding:0}.rm-wide-content-page .rmb-dashboard-locked{max-width:820px;margin-inline:auto}.rm-wide-content-page .rmb-manage-shell,.rm-wide-content-page .rmb-staff-portal{max-width:1180px;margin-inline:auto}
@media(max-width:800px){.rm-wide-content-page>.wrap{width:calc(100% - 32px)}}
@media(max-width:480px){.rm-wide-content-page{padding-block:20px}.rm-wide-content-page>.wrap{width:calc(100% - 20px)}}
@media(max-width:700px){.rm-editorial-feature{grid-template-columns:minmax(0,1fr)}.rm-editorial-feature>img{height:auto;aspect-ratio:4/3;object-position:center 58%}}

/* Homepage final CTA: light section with a contained Reviews-style panel. */
.rm-home-cta-copy{display:none}
body[data-page=home] .rm-final-cta{padding:clamp(58px,7vw,92px) 0;background:#f5f3ee;color:#171713}
body[data-page=home] .rm-final-cta>.rm-square-background{display:none}
body[data-page=home] .rm-final-cta .rm-final-layout{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:clamp(30px,4vw,46px);border:1px solid #d2b400;border-radius:16px;background:#111214;color:#f3f2ee;box-shadow:0 22px 54px rgba(26,23,16,.18)}
body[data-page=home] .rm-final-cta .rm-final-layout::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.72;background-image:radial-gradient(circle,rgba(255,223,0,.075) 0 1px,transparent 1.2px),linear-gradient(rgba(255,223,0,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,223,0,.055) 1px,transparent 1px),radial-gradient(circle at 82% 22%,rgba(255,223,0,.09),transparent 34%);background-size:8px 8px,42px 42px,42px 42px,auto;mask-image:linear-gradient(110deg,rgba(0,0,0,.45),#000 38%,#000 82%,rgba(0,0,0,.62))}
body[data-page=home] .rm-final-cta .rm-final-layout::after{content:"";position:absolute;z-index:-1;right:-80px;top:-95px;width:230px;aspect-ratio:1;border:1px solid #ffdf0026;border-radius:50%;box-shadow:0 0 0 32px #ffdf0005;pointer-events:none}
body[data-page=home] .rm-final-cta .rm-home-cta-copy{display:inline}
body[data-page=home] .rm-final-cta .rm-default-cta-copy,body[data-page=home] .rm-final-cta .rm-text-link,body[data-page=home] .rm-final-cta .rm-mini{display:none}
body[data-page=home] .rm-final-cta h2{font-size:clamp(2rem,3.4vw,3rem);line-height:1.08;letter-spacing:-.045em;margin:18px 0 14px}
body[data-page=home] .rm-final-cta p{margin:0;color:#c7c5c0}
body[data-page=home] .rm-final-layout>div:last-child{display:block;margin:0}
body[data-page=home] .rm-final-cta .button{min-width:190px;justify-content:space-between}
@media(max-width:700px){body[data-page=home] .rm-final-cta{padding:46px 0}body[data-page=home] .rm-final-cta .rm-final-layout{display:block;padding:28px 26px;border-radius:15px}body[data-page=home] .rm-final-cta .rm-final-layout>div:last-child{margin-top:28px}body[data-page=home] .rm-final-cta .button{width:min(100%,190px)}body[data-page=home] .rm-final-cta .rm-final-layout::after{right:-105px;top:-90px;width:210px}}

/* Lessons closing CTA: light canvas with a contained dark card. */
body[data-page=lessons] .rm-lessons-close{padding:clamp(58px,7vw,92px) 0;background:#f5f3ee;color:#171713}
body[data-page=lessons] .rm-lessons-close>.rm-square-background,body[data-page=lessons] .rm-lessons-close::before,body[data-page=lessons] .rm-lessons-close::after{display:none}
body[data-page=lessons] .rm-lessons-close>.wrap{position:relative;isolation:isolate;overflow:hidden;padding:clamp(34px,5vw,58px);border:1px solid #d2b400;border-radius:16px;background:#111214;color:#f3f2ee;box-shadow:0 22px 54px rgba(26,23,16,.18)}
body[data-page=lessons] .rm-lessons-close>.wrap::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.72;background-image:radial-gradient(circle,rgba(255,223,0,.075) 0 1px,transparent 1.2px),linear-gradient(rgba(255,223,0,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,223,0,.055) 1px,transparent 1px);background-size:8px 8px,42px 42px,42px 42px;mask-image:linear-gradient(110deg,rgba(0,0,0,.45),#000 38%,#000 82%,rgba(0,0,0,.62))}
body[data-page=lessons] .rm-lessons-close h2{font-size:clamp(2.5rem,5vw,4.6rem);margin:18px 0 16px}
body[data-page=lessons] .rm-lessons-close p{margin-inline:auto;max-width:42ch}
body[data-page=lessons] .rm-lessons-close .button{min-width:190px;justify-content:space-between}
@media(max-width:700px){body[data-page=lessons] .rm-lessons-close{padding:46px 0}body[data-page=lessons] .rm-lessons-close>.wrap{padding:30px 24px;border-radius:15px}body[data-page=lessons] .rm-lessons-close h2{font-size:clamp(2.4rem,11vw,3.35rem)}body[data-page=lessons] .rm-lessons-close .button{width:min(100%,210px)}}

/* Contained closing cards across supporting pages. */
:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta,
body[data-page=contact] .rm-contact-next{padding:clamp(58px,7vw,92px) 0;background:#f5f3ee;color:#171713}
:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta>.rm-square-background,
:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta::before,
:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta::after,
body[data-page=contact] .rm-contact-next>.rm-square-background,
body[data-page=contact] .rm-contact-next::before,
body[data-page=contact] .rm-contact-next::after{display:none}
:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta>.wrap,
body[data-page=contact] .rm-contact-next>.wrap{position:relative;isolation:isolate;overflow:hidden;padding:clamp(34px,5vw,58px);border:1px solid #d2b400;border-radius:16px;background:#111214;color:#f3f2ee;box-shadow:0 22px 54px rgba(26,23,16,.18)}
:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta>.wrap::before,
body[data-page=contact] .rm-contact-next>.wrap::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.72;background-image:radial-gradient(circle,rgba(255,223,0,.075) 0 1px,transparent 1.2px),linear-gradient(rgba(255,223,0,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,223,0,.055) 1px,transparent 1px),radial-gradient(circle at 84% 18%,rgba(255,223,0,.075),transparent 30%);background-size:8px 8px,42px 42px,42px 42px,auto;mask-image:linear-gradient(110deg,rgba(0,0,0,.45),#000 38%,#000 82%,rgba(0,0,0,.62))}
:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta h2{font-size:clamp(2.3rem,4.5vw,4rem);line-height:1;letter-spacing:-.05em;margin:18px 0 16px}
:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta p,
body[data-page=contact] .rm-contact-next p{color:#c7c5c0}
body[data-page=contact] .rm-contact-next>.wrap{display:grid;grid-template-columns:minmax(0,.85fr) minmax(280px,1fr);align-items:center;gap:clamp(32px,6vw,86px)}
body[data-page=contact] .rm-contact-next h2{font-size:clamp(2.3rem,4.5vw,4rem);line-height:1;letter-spacing:-.05em;margin:18px 0 0}
body[data-page=contact] .rm-contact-next p{max-width:52ch;margin-top:0}
body[data-page=contact] .rm-contact-next .button{margin-top:18px;min-width:190px;justify-content:space-between}
@media(max-width:900px){body[data-page=contact] .rm-contact-next>.wrap{grid-template-columns:1fr;gap:24px}}
@media(max-width:700px){:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta,body[data-page=contact] .rm-contact-next{padding:46px 0}:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta>.wrap,body[data-page=contact] .rm-contact-next>.wrap{padding:30px 24px;border-radius:15px}:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-layout{display:block}:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-layout>div:last-child{margin-top:28px}:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta h2,body[data-page=contact] .rm-contact-next h2{font-size:clamp(2.35rem,11vw,3.35rem)}:is(body[data-page=about],body[data-page=vehicles],body[data-page=how-it-works]) .rm-final-cta .button,body[data-page=contact] .rm-contact-next .button{width:min(100%,220px)}}

/* Final launch polish. Hero overlays stay photographic and free of dither. */
@media(max-width:700px){body:not([data-page=home]) .page-hero.rm-page-intro::after{background:linear-gradient(0deg,#080909f3 0%,#080909aa 58%,#08090942 100%);background-size:auto}}
.rm-personal-support .rm-meet-button{background:linear-gradient(125deg,#fff078,#ffdf00 50%,#efbb21);color:#171717;border-color:#d8ba00;box-shadow:0 10px 24px #9d790d20}
.rm-personal-support .rm-meet-button:hover,.rm-personal-support .rm-meet-button:focus-visible{background:#171717;color:#ffdf00;border-color:#171717}
.rm-choice-grid b i,.rm-explore-grid b i{font-style:normal;color:#b09000;margin-left:7px}
.rm-explore-grid>a::after{content:"+"}
@media(max-width:620px){body[data-page=how-it-works] .knowledge-tabs[role=tablist]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}body[data-page=how-it-works] .knowledge-tabs[role=tablist] button{min-width:0;padding:10px 5px;font-size:clamp(.64rem,2.7vw,.76rem);white-space:nowrap}}

/* 1.2 course-link and contrast refinements */
.rm-course-detail-link{display:inline-flex;align-items:center;gap:8px;margin:15px 0 4px;color:#f2f0e9;font-size:.75rem;font-weight:700;text-decoration:underline;text-underline-offset:4px}.package.featured .rm-course-detail-link{color:#fff}.rm-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1050px){.rm-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.rm-choice-grid{grid-template-columns:1fr}}

/* Lessons journey card: light section with contained dark dither panel */
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta{padding:clamp(58px,7vw,92px) 0;background:#f5f3ee;color:#171713}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta>.rm-square-background,:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta::before,:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta::after{display:none}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .rm-final-layout{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:clamp(30px,4vw,46px);border:1px solid #d2b400;border-radius:16px;background:#111214;color:#f3f2ee;box-shadow:0 22px 54px rgba(26,23,16,.18)}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .rm-final-layout::before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.72;background-image:radial-gradient(circle,rgba(255,223,0,.075) 0 1px,transparent 1.2px),linear-gradient(rgba(255,223,0,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,223,0,.055) 1px,transparent 1px),radial-gradient(circle at 82% 22%,rgba(255,223,0,.09),transparent 34%);background-size:8px 8px,42px 42px,42px 42px,auto;mask-image:linear-gradient(110deg,rgba(0,0,0,.45),#000 38%,#000 82%,rgba(0,0,0,.62))}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .rm-final-layout::after{content:"";position:absolute;z-index:-1;right:-80px;top:-95px;width:230px;aspect-ratio:1;border:1px solid #ffdf0026;border-radius:50%;box-shadow:0 0 0 32px #ffdf0005;pointer-events:none}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta h2{font-size:clamp(2rem,3.4vw,3rem);line-height:1.08;letter-spacing:-.045em;margin:18px 0 14px}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta p{margin:0;color:#c7c5c0}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-layout>div:last-child{display:block;margin:0}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .button{min-width:190px;justify-content:space-between}
:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .rm-text-link,:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .rm-mini{display:none}
@media(max-width:700px){:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta{padding:46px 0}:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .rm-final-layout{display:block;padding:28px 26px;border-radius:15px}:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .rm-final-layout>div:last-child{margin-top:28px}:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .button{width:min(100%,190px)}:is(body[data-page=lessons],body[data-page=contact],body[data-page=student-success]) .rm-final-cta .rm-final-layout::after{right:-105px;top:-90px;width:210px}}
.rm-reviews-feed a[href*="elfsight.com/google-reviews-widget"]{display:none!important;visibility:hidden!important;width:0!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}

/* Course-page section navigation: keep every destination visible on phones. */
@media(max-width:600px){
  .rm-course-nav{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    width:100%;
    margin-inline:0;
    padding:8px;
    overflow:visible;
    box-sizing:border-box;
  }
  .rm-course-nav a{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    min-height:46px;
    padding:10px 8px;
    text-align:center;
    white-space:normal;
    line-height:1.25;
  }
  .rm-course-nav a:last-child:nth-child(odd){grid-column:1/-1}
}
/* Shared footer: brand, explore, lessons, contact. */
/* Equal-width course links; three destinations stay on one row on phones. */
main .rm-course-nav:not([hidden]){display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-columns:none;gap:6px;padding:6px;width:100%;margin-inline:0;box-sizing:border-box;overflow:visible;border-radius:12px}
main .rm-course-nav:not([hidden]) a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:10px 12px;border-radius:8px;text-align:center;white-space:normal;line-height:1.35;font-size:.85rem}
main .rm-course-nav:not([hidden]) a:last-child:nth-child(odd){grid-column:auto}
main .rm-course-nav:not([hidden]) a:hover{transform:none;background:#171713;color:#ffdf00}
main .rm-course-nav:not([hidden]) a:focus-visible{outline:2px solid #8c7500;outline-offset:2px}
@media(max-width:600px){main .rm-course-nav:not([hidden]) a{font-size:.78rem;padding:9px 6px;min-height:46px}main .rm-course-nav:not([hidden]):has(>a:nth-child(4)){grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-columns:auto}}
.site-footer .rm-footer-info-row{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:24px;padding-top:20px;border-top:1px solid #ffffff20}
.site-footer .rm-footer-info-row .rm-footer-detail{margin:0;padding:0;border:0}
.site-footer .rm-footer-info-row .rm-footer-detail p{max-width:none}
.site-footer .rm-footer-info-row+.footer-bottom{margin-top:20px;padding-top:16px}
.site-footer .rm-footer-marquee{margin-top:14px;padding-top:10px}
.site-footer .rm-footer-word-window{height:40px;mask-image:none}
@media(max-width:600px){.site-footer .rm-footer-info-row{grid-template-columns:1fr;gap:18px}}
.site-footer .footer-grid{grid-template-columns:1.15fr .8fr 1fr 1.15fr;gap:clamp(24px,3vw,44px);align-items:start}
.site-footer .footer-grid>*{min-width:0}
.site-footer .footer-grid h3{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;margin:6px 0 22px}
.site-footer .footer-grid a{font-size:.84rem;line-height:1.6;overflow-wrap:anywhere;margin-bottom:10px}
.site-footer .rm-footer-detail{margin:20px 0;padding-top:16px;border-top:1px solid #ffffff20}
.site-footer .rm-footer-detail>span{display:block;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:#ffe55c;margin-bottom:7px}
.site-footer .rm-footer-detail p{margin:0;font-size:.84rem;line-height:1.7;color:#d3d0c8}
.site-footer .rm-footer-link-note{display:block;font-size:.67rem;color:#aaa69d;margin-top:3px}
@media(max-width:1000px){.site-footer .footer-grid{grid-template-columns:1fr 1fr;gap:32px}.site-footer .footer-grid>div:first-child{grid-column:1/-1;display:block}.site-footer .footer-grid>.rm-footer-contact{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.site-footer .rm-footer-contact h3{grid-column:1/-1}}
@media(max-width:480px){.site-footer .footer-grid{gap:28px 20px}.site-footer .footer-grid a{font-size:.8rem;min-height:36px}.site-footer .footer-grid>.rm-footer-contact{display:block}.site-footer .rm-footer-detail{margin:18px 0}.site-footer .footer-grid h3{line-height:1.5;margin-bottom:16px}}
