/* Shared public design system. */
:root{--primary:#9b7425;--primary-dark:#795516;--primary-light:#ed702d;--secondary:#f49a62;--dark:#0d233b;--darker:#091b2e;--light:#fff;--cream:#faf6f0;--gray:#536171;--font-display:'Inter',system-ui,sans-serif;--font-body:'Inter',system-ui,sans-serif}
body{background:#fff;font-size:15px;line-height:1.65;overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{letter-spacing:-.035em;line-height:1.18}h2{font-size:clamp(1.8rem,3vw,2.7rem)}a,button,input,select,textarea{touch-action:manipulation}:focus-visible{outline:3px solid #9b7425;outline-offset:4px}img{max-width:100%}
.skip-link{position:fixed;left:16px;top:-80px;padding:12px 20px;background:white;color:var(--dark);z-index:9999}.skip-link:focus{top:12px}.top-bar{display:none!important}
.main-nav,.main-nav.scrolled{padding:10px 0;background:white;box-shadow:none;border-bottom:1px solid #e8e9ec;backdrop-filter:none}.navbar-logo,.main-nav.scrolled .navbar-logo{height:54px;max-width:150px}.main-nav .nav-link{font-size:13px;font-weight:500;padding:12px 14px!important;color:var(--dark)}.main-nav .nav-link.active{color:var(--primary)}.main-nav .navbar-nav{gap:4px}
.btn,.btn-enroll,.btn-event-booking,.btn-form-submit,.btn-course,.btn-primary-hero,.btn-outline-hero{border-radius:7px;min-height:44px;padding:12px 22px;font-size:14px;font-weight:600;box-shadow:none;transform:none}.btn-enroll,.btn-primary,.btn-form-submit,.btn-course,.btn-primary-hero{background:var(--primary);color:white;border:1px solid var(--primary)}.btn-enroll:hover,.btn-primary:hover,.btn-form-submit:hover,.btn-course:hover,.btn-primary-hero:hover{background:var(--primary-dark);color:white;border-color:var(--primary-dark);box-shadow:none;transform:none}.btn-navy-outline,.btn-event-booking{background:transparent;border:1px solid var(--dark);color:var(--dark)}.btn-navy-outline:hover,.btn-event-booking:hover{background:var(--dark);color:white}.btn i{margin-left:10px;font-size:12px}
.eyebrow{display:block;font-size:11px;letter-spacing:.17em;font-weight:700;text-transform:uppercase;color:var(--primary);margin-bottom:14px}.home-hero{background:var(--cream)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;min-height:500px}.home-hero-copy{padding:66px 30px 52px 0;align-self:center;position:relative;z-index:1}.home-hero h1{font-size:clamp(2.7rem,4.6vw,4.5rem);font-weight:750;line-height:1.04;letter-spacing:-.055em;margin-bottom:24px;max-width:610px}.home-hero-copy>p{font-size:17px;color:#435164;max-width:460px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.home-hero-copy .heritage{font-size:11px;letter-spacing:.15em;margin:30px 0 0}.home-hero-photo{position:relative;min-width:0}.home-hero-photo img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center}.home-hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--cream),transparent 20%);pointer-events:none}
.service-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0;border-bottom:1px solid #f0dccb}.service-strip a{display:flex;align-items:center;justify-content:center;gap:15px;padding:4px 18px;font-size:13px;border-right:1px solid #f0dccb}.service-strip a:last-child{border:0}.service-strip i{color:var(--primary);font-size:23px}
.section-padding{padding:68px 0}.section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.section-heading-row h2{margin:0}.section-heading-row .eyebrow{margin-bottom:10px}.text-action{display:inline-flex;align-items:center;gap:12px;color:var(--primary);font-size:13px;font-weight:600;min-height:44px}.text-action:hover{color:var(--primary-dark);text-decoration:underline}
.course-card,.offer-card,.info-card,.form-card,.testimonial-card{border:1px solid #e5e8ec;border-radius:10px;box-shadow:none;overflow:hidden}.course-card:hover,.offer-card:hover,.info-card:hover{transform:none;box-shadow:0 8px 28px #0d233b0a}.home-course-card{height:100%;display:flex;flex-direction:column}.home-course-card .course-image{display:block;height:225px;flex-shrink:0}.home-course-card .course-image img{width:100%;height:100%;object-fit:cover}.home-course-card .course-content{padding:22px;display:flex;flex:1;flex-direction:column}.home-course-card h3{font-size:21px;margin:0 0 12px}.home-course-card p{font-size:14px;color:var(--gray);margin-bottom:18px}.home-course-card .eyebrow{font-size:10px;margin-bottom:10px}.home-course-card .course-meta{margin-top:auto;font-size:12px;display:flex;justify-content:space-between;gap:10px;padding-bottom:12px}.home-course-card .text-action{align-self:start}
.home-event{background:var(--dark);color:white}.event-banner{display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:48px}.event-banner>div{padding:42px 0}.event-banner h2{font-size:clamp(1.8rem,2.7vw,2.6rem);max-width:640px}.event-banner p{color:#c9d4df;max-width:560px;font-size:15px}.event-banner img{width:100%;height:300px;object-fit:cover}.event-banner .eyebrow{color:#e4c777}.home-story{background:var(--cream)}.story-image{width:100%;max-height:400px;object-fit:contain;border-radius:12px}.home-story p{max-width:580px;color:var(--gray);margin-top:24px}
.page-header{background:var(--cream);padding:55px 0;color:var(--dark)}.page-header:before{display:none}.page-title{color:var(--dark);font-size:clamp(2rem,4vw,3rem)}.page-breadcrumb,.page-breadcrumb a{color:var(--gray)}.section-label{color:var(--primary);font-size:11px;letter-spacing:.13em}.section-title{margin-bottom:36px}.section-title p{color:var(--gray)}
.form-control,.form-select{border:1px solid #cfd5dd;border-radius:7px;min-height:46px;font-size:15px;padding:12px 14px}.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #9b74251c}.form-card{padding:32px}.form-label{font-size:13px}.form-check-input:checked{background-color:var(--primary);border-color:var(--primary)}.info-card{padding:28px}.info-icon,.offer-icon{background:#fff1e6;color:var(--primary);border-radius:12px;width:54px;height:54px;font-size:21px}.accordion-item{border:1px solid #e5e8ec;box-shadow:none;border-radius:8px!important}.accordion-button{font-size:15px}
.footer-section{background:#fff;color:var(--dark);border-top:1px solid #e5e8ec}.footer-title{color:var(--dark);font-size:16px}.footer-title:after{background:var(--primary)}.footer-text,.footer-links a,.footer-contact li{color:var(--gray);font-size:13px}.footer-bottom{background:#fafafa;border-top:1px solid #e5e8ec;color:var(--gray);font-size:12px}.footer-social a{background:#f1f3f5;color:var(--dark)}.footer-contact i{color:var(--primary)}.whatsapp-float{width:48px;height:48px;bottom:22px;right:20px;font-size:26px;box-shadow:0 3px 12px #0002}.reveal{opacity:1;transform:none}
@media(min-width:1400px){.container{max-width:1280px}}
@media(max-width:991.98px){.main-nav .navbar-nav{align-items:stretch!important;padding:12px 0}.main-nav .nav-item{margin:0!important}.main-nav .nav-link{padding:12px 0!important}.main-nav .nav-item .btn{width:100%;margin-top:8px}.hero-grid{min-height:440px}.home-hero-copy{padding:40px 12px 40px 0}.home-hero h1{font-size:42px}.service-strip a{font-size:12px;gap:10px;padding:4px 10px}.event-banner{gap:24px}}
@media(max-width:767.98px){.container{padding-left:22px;padding-right:22px}.navbar-logo{height:48px}.hero-grid{display:flex;flex-direction:column;padding:0}.home-hero-copy{padding:38px 22px 30px}.home-hero h1{font-size:43px;max-width:470px}.home-hero-copy>p{font-size:15px}.hero-actions{margin-top:22px}.hero-actions .btn{flex:1;white-space:nowrap}.home-hero-photo{height:290px}.home-hero-photo:after{display:none}.home-hero-photo img{object-position:center}.home-hero-copy .heritage{font-size:10px;margin-top:22px}.service-strip{grid-template-columns:1fr 1fr;padding:0}.service-strip a{flex-direction:column;gap:8px;padding:22px 8px;border-bottom:1px solid #f0dccb}.service-strip a:nth-child(2){border-right:0}.service-strip a:nth-child(3),.service-strip a:nth-child(4){border-bottom:0}.section-padding{padding:42px 0}.section-heading-row{align-items:start;flex-direction:column;gap:4px;margin-bottom:22px}.section-heading-row h2{max-width:320px}.home-course-card .course-image{height:240px}.event-banner{grid-template-columns:1fr;gap:0}.event-banner>div{padding:34px 0}.event-banner img{height:210px;margin-bottom:28px;border-radius:8px}.home-story .row{--bs-gutter-y:24px}.story-image{height:290px}.page-header{padding:38px 0}.form-card,.info-card{padding:22px}.footer-top{padding:36px 0!important}}
@media(max-width:380px){.hero-actions{flex-direction:column}.home-hero h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.main-nav .brand-wrapper{width:130px;height:54px;overflow:hidden;justify-content:center}.main-nav .navbar-logo,.main-nav.scrolled .navbar-logo{width:158px;height:107px;max-width:none;flex-shrink:0}.main-nav .dropdown-toggle:after{position:static;display:inline-block;width:0!important;height:0;margin-left:6px;background:none;border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent;vertical-align:middle}

@media(max-width:767.98px){.container .row{--bs-gutter-x:24px}}
/* Compact interior page headings; centre the constrained intro text as a block. */
.page-header{padding:28px 0 24px}.page-title{font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.15;margin-bottom:10px}.page-breadcrumb{font-size:13px;margin:0}.page-header+.section-padding{padding-top:32px}.section-title.text-center p{margin-left:auto;margin-right:auto;max-width:680px}.section-title.text-start p{margin-left:0;margin-right:0}.section-title h2{font-size:clamp(1.7rem,2.8vw,2.3rem);line-height:1.2;margin-bottom:12px}.section-title p{font-size:15px;line-height:1.6;margin-bottom:0}.page-header+.section-padding .section-title{margin-bottom:24px}.course-filters{margin-bottom:26px!important}
@media(max-width:767.98px){.page-header{padding:24px 0 20px}.page-header+.section-padding{padding-top:26px}.section-title h2{font-size:1.8rem}.section-title p{font-size:14px}.page-title{font-size:1.9rem}.course-filters{margin-bottom:22px!important}}
.reveal{transition:none}

/* Keep the contact shortcut at the lower left on every public page. */
.whatsapp-float{left:20px;right:auto}
.whatsapp-tooltip{left:70px;right:auto}
.whatsapp-tooltip::after{left:-6px;right:auto;border-width:6px 6px 6px 0;border-color:transparent #333 transparent transparent}
.whatsapp-float:hover .whatsapp-tooltip{left:75px;right:auto}

:root{--primary:#99701e;--primary-dark:#795516;--primary-light:#d9b65c;--secondary:#d5ae4b}.btn-enroll,.btn-primary,.btn-form-submit,.btn-course{background:#d5ae4b;border-color:#d5ae4b;color:#0d233b}.btn-enroll:hover,.btn-primary:hover,.btn-form-submit:hover{background:#c49a35;border-color:#c49a35;color:#0d233b}.main-nav .brand-wrapper{width:155px}.main-nav .navbar-logo,.main-nav.scrolled .navbar-logo{width:155px;height:auto;max-width:155px}.studio-faq details{padding:22px 0;border-bottom:1px solid #e0d9ca}.studio-faq summary{cursor:pointer;font-weight:600}.studio-faq p{margin-top:16px}

/* Larger public header branding, with room reserved for navigation. */
.main-nav .brand-wrapper{width:261px;height:64px;overflow:visible}
.main-nav .navbar-logo,.main-nav.scrolled .navbar-logo{width:261px;max-width:100%;height:auto;max-height:57.6px;object-fit:contain}
@media(min-width:992px) and (max-width:1199.98px){
 .main-nav .brand-wrapper{width:171px}
 .main-nav .nav-link{padding-left:9px!important;padding-right:9px!important}
}
@media(max-width:991.98px){.main-nav .brand-wrapper{width:207px;height:58px}.main-nav .navbar-logo,.main-nav.scrolled .navbar-logo{max-height:52.2px}}
@media(max-width:380px){.main-nav .brand-wrapper{width:180px}}
