:root{--navy:#17324d;--coral:#f46f5e;--blue:#69bfe7;--yellow:#f7c84b;--cream:#fffdf8;--pale:#eaf7fc;--ink:#17324d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}.site-header{z-index:5;background:#fff;border-bottom:1px solid #e7edf1;align-items:center;gap:42px;height:88px;padding:0 clamp(24px,7vw,112px);display:flex;position:relative}.brand{color:var(--navy);letter-spacing:-.4px;white-space:nowrap;align-items:center;gap:12px;font-size:20px;font-weight:800;text-decoration:none;display:flex}.brand b{color:var(--coral)}.brand-mark{background:var(--coral);color:#fff;border-radius:13px;place-items:center;width:42px;height:42px;font-size:14px;display:grid;box-shadow:inset -5px -5px #00000014}nav{gap:34px;margin-left:auto;display:flex}nav a{color:#456078;font-size:14px;font-weight:700;text-decoration:none}nav a:hover{color:var(--coral)}.button{cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:0 22px;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--coral);color:#fff;box-shadow:0 8px 18px #f46f5e3d}.button-primary:hover{background:#df5b4d}.button-outline{color:var(--coral);background:#fff;border:2px solid #f5a095}.button-dark{background:var(--navy);color:#fff}.hero{background:linear-gradient(120deg,#fff3eb 0 54%,#eaf7fc 54%);grid-template-columns:1.05fr .95fr;min-height:560px;display:grid;overflow:hidden}.hero-copy{z-index:2;padding:82px 30px 104px clamp(24px,9vw,145px);position:relative}.eyebrow{color:#288ab8;letter-spacing:.15em;text-transform:uppercase;margin:0 0 18px;font-size:13px;font-weight:900}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-3.5px;color:var(--navy);margin-bottom:24px;font-size:clamp(48px,5.2vw,78px);line-height:.99}h1 span{color:var(--coral)}.hero-text{color:#526a7d;max-width:570px;font-size:19px;line-height:1.65}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:34px;display:flex}.text-link,.card-link{color:var(--navy);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #f4b54e;padding:8px 0;font-weight:800}.hero-art{background:#bde9f9 url(/assets/perth-skyline-bootsteps.png) 50%/cover no-repeat;border-bottom-left-radius:100px;min-height:500px;overflow:hidden}.search-wrap{z-index:4;background:#fff;border-radius:24px;grid-template-columns:1.55fr 1fr .8fr 1fr auto;align-items:end;gap:14px;max-width:1180px;margin:-60px auto 0;padding:24px;display:grid;position:relative;box-shadow:0 20px 50px #17324d26}.search-wrap label,.modal label{color:#597084;gap:8px;font-size:12px;font-weight:800;display:grid}.search-wrap label>span{padding-left:3px}input,select,textarea{width:100%;color:var(--navy);background:#fbfdfe;border:1.5px solid #dbe5eb;border-radius:12px;outline:none}input,select{height:48px;padding:0 13px}textarea{resize:vertical;min-height:90px;padding:13px}input:focus,select:focus,textarea:focus{border-color:var(--coral);box-shadow:0 0 0 3px #f46f5e26}.keyword{position:relative}.keyword span{color:#7c91a2;font-size:24px;position:absolute;bottom:13px;left:14px}.keyword input{padding-left:43px}.search-button{height:48px}.classes-section{max-width:1480px;margin:auto;padding:92px clamp(24px,7vw,112px)}.section-heading{justify-content:space-between;align-items:end;margin-bottom:32px;display:flex}.section-heading h2,.how-section h2,.instructor-banner h2,.modal h2{letter-spacing:-2px;margin:0;font-size:clamp(34px,4vw,54px);line-height:1.05}.section-heading>p{color:#718697;font-weight:700}.class-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.class-card{background:#fff;border:1px solid #e5edf2;border-radius:22px;transition:all .2s;overflow:hidden;box-shadow:0 8px 26px #17324d12}.class-card:hover{transform:translateY(-5px);box-shadow:0 14px 32px #17324d21}.card-art{height:110px;padding:18px;position:relative;overflow:hidden}.card-art:after{content:"";border:18px solid #ffffff73;border-radius:50%;width:170px;height:170px;position:absolute;top:-55px;right:-40px}.card-art span{text-transform:uppercase;background:#fff;border-radius:10px;padding:8px 11px;font-weight:900;display:inline-block}.card-art b{color:#fffc;font-size:62px;position:absolute;bottom:5px;right:32px;transform:rotate(-8deg)}.card-art.coral{background:#ffa091}.card-art.blue{background:#8dd7f1}.card-art.yellow{background:#f8d76f}.card-body{padding:22px}.level-pills{flex-wrap:wrap;gap:6px;display:flex}.level-pill{color:#247da5;text-transform:uppercase;letter-spacing:.05em;background:#edf8fc;border-radius:30px;padding:6px 10px;font-size:10px;font-weight:900;display:inline-block}.card-body h3{margin:15px 0 4px;font-size:21px}.school{color:var(--coral);font-size:13px;font-weight:800}.instructor-name{color:#526a7d;margin:6px 0;font-size:13px;font-weight:700}dl{border-top:1px solid #edf1f4;grid-template-columns:1.2fr .8fr;gap:12px;margin:21px 0;padding-top:17px;display:grid}dl div{gap:9px;display:flex}dt{color:#58add4;font-size:20px}dd{margin:0;font-size:13px;font-weight:800}dd small{color:#8092a1;margin-top:4px;font-weight:500;display:block}.card-link{text-align:left;color:#314f68;border-bottom:0;justify-content:space-between;width:100%;text-decoration:none;display:flex}.listing-meta,.listing-contact{color:#5f7688;overflow-wrap:anywhere;margin:10px 0 0;font-size:13px;line-height:1.45}.listing-contact{min-height:38px;margin-bottom:12px}.empty{text-align:center;background:#f3fafc;border-radius:24px;padding:60px}.empty h3{margin-bottom:10px;font-size:28px}.events-section{max-width:1480px;margin:auto;padding:20px clamp(24px,7vw,112px) 92px}.event-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.event-card{background:#fff;border:1px solid #e5edf2;border-radius:20px;grid-template-columns:100px 1fr;align-items:start;gap:20px;padding:20px;display:grid;box-shadow:0 8px 24px #17324d0f}.event-card h3{margin:2px 0 5px;font-size:20px}.event-card p{color:#61788a;margin:0 0 5px;font-size:14px}.event-card small{color:#718697;overflow-wrap:anywhere}.event-date{background:var(--coral);color:#fff;text-align:center;border-radius:14px;place-items:center;min-height:66px;padding:10px;font-size:14px;font-weight:900;display:grid}.event-organiser{font-weight:800;color:var(--coral)!important}.verification-note{color:#735e1f;background:#fff8dc;border-radius:14px;margin:24px 0 0;padding:16px 18px;font-size:13px;line-height:1.5}.how-section{background:var(--pale);grid-template-columns:.8fr 1.2fr;align-items:start;gap:80px;padding:80px clamp(24px,9vw,145px);display:grid}.how-section ol{gap:12px;margin:0;padding:0;list-style:none;display:grid}.how-section li{background:#fff;border-radius:18px;align-items:center;gap:20px;padding:20px;display:flex}.how-section li>b{color:var(--coral);font-size:25px}.how-section li span{color:#62798b;font-size:14px}.how-section li strong{color:var(--navy);margin-bottom:5px;font-size:17px;display:block}.instructor-banner{background:var(--yellow);border-radius:28px;justify-content:space-between;align-items:center;gap:40px;margin:76px clamp(24px,7vw,112px);padding:54px 60px;display:flex}.instructor-banner>div{max-width:720px}.instructor-banner .eyebrow{color:#9b5f10}.instructor-banner h2{margin-bottom:15px}.instructor-banner p:last-child{margin-bottom:0;line-height:1.6}footer{color:#6c8191;border-top:1px solid #e6edf1;grid-template-columns:1fr 1fr auto;align-items:center;gap:30px;padding:45px clamp(24px,7vw,112px);font-size:13px;display:grid}.modal-backdrop{z-index:50;background:#102639ab;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-backdrop[hidden],[hidden]{display:none!important}.modal{background:#fff;border-radius:26px;width:min(760px,100%);max-height:92vh;padding:38px;position:relative;overflow:auto;box-shadow:0 30px 80px #00000040}.modal-close{cursor:pointer;background:#eef5f8;border:0;border-radius:50%;width:40px;height:40px;font-size:25px;position:absolute;top:14px;right:18px}.modal>p:not(.eyebrow),#form-view>p:not(.eyebrow){color:#6a8091}.form-grid{grid-template-columns:1fr 1fr;gap:15px;margin:26px 0 15px;display:grid}.modal label{color:#3e5a70;font-size:13px}.optional,.level-picker legend span,.logo-upload>span{color:#8293a0;font-weight:500}.full-button{width:100%;margin-top:20px}.level-picker{border:1.5px solid #dbe5eb;border-radius:15px;margin:0 0 17px;padding:16px}.level-picker legend{color:#3e5a70;padding:0 6px;font-size:13px;font-weight:800}.level-picker legend span{margin-left:6px}.level-picker>div{flex-wrap:wrap;gap:9px;display:flex}.level-picker label{cursor:pointer;background:#f2f8fb;border-radius:10px;align-items:center;gap:7px;padding:9px 12px;display:flex}.level-picker input{width:17px;height:17px;accent-color:var(--coral)}.logo-upload{background:#f7fcfe;border:1.5px dashed #b8d3e1;border-radius:15px;margin-bottom:17px;padding:16px}.logo-upload input{cursor:pointer;background:#fff;height:auto;padding:10px}.logo-upload input::file-selector-button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:9px;margin-right:12px;padding:9px 12px;font-weight:800}.success{text-align:center;padding:30px 15px}.success>span{color:#198954;background:#dff7ea;border-radius:50%;place-items:center;width:72px;height:72px;margin:0 auto 24px;font-size:38px;display:grid}.success p{color:#637b8d;max-width:500px;margin:0 auto 25px;line-height:1.6}@media (max-width:1000px){nav{display:none}.header-cta{margin-left:auto}.hero{grid-template-columns:1fr}.hero-copy{padding:65px 7vw 85px}.hero-art{border-radius:0;min-height:360px}.search-wrap{grid-template-columns:1fr 1fr;margin:-35px 24px 0}.keyword{grid-column:1/-1}.class-grid{grid-template-columns:1fr 1fr}.how-section{grid-template-columns:1fr;gap:30px}}@media (max-width:680px){.site-header{height:76px;padding:0 18px}.header-cta{display:none}.brand{font-size:17px}.hero-copy{padding:52px 22px 72px}h1{letter-spacing:-2px}.hero-art{min-height:290px}.search-wrap{grid-template-columns:1fr;margin:-28px 14px 0;padding:18px}.keyword{grid-column:auto}.classes-section{padding:70px 18px}.class-grid{grid-template-columns:1fr}.events-section{padding:0 18px 70px}.section-heading{align-items:start}.section-heading>p{display:none}.how-section{padding:64px 20px}.instructor-banner{flex-direction:column;align-items:flex-start;margin:52px 18px;padding:35px 25px}.instructor-banner .button{width:100%}footer{grid-template-columns:1fr;padding:35px 20px}.form-grid{grid-template-columns:1fr}.modal{padding:30px 20px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.class-card{transition:none}}.search-wrap{grid-template-columns:1.45fr .95fr .75fr .9fr 1.05fr auto;gap:12px;max-width:1320px}.card-art>span{text-transform:uppercase;background:#fff;border-radius:10px;padding:8px 11px;font-weight:900;display:inline-block}.card-art b{display:none}.boot-icon{color:#fff;opacity:.78;z-index:1;width:66px;height:66px;position:absolute;bottom:4px;right:26px;transform:rotate(-10deg)}.card-logo{object-fit:contain;z-index:2;background:#fff;border:4px solid #ffffffb8;border-radius:50%;width:76px;height:76px;padding:7px;position:absolute;top:16px;right:22px}.frequency-pill{color:#7a5b00;background:#fff3c4}.calendar-shell{background:#fff;border:1px solid #e5edf2;border-radius:24px;padding:24px;box-shadow:0 8px 28px #17324d0f}.calendar-toolbar{justify-content:center;align-items:center;gap:22px;margin-bottom:22px;display:flex}.calendar-toolbar h3{text-align:center;min-width:210px;margin:0;font-size:25px}.calendar-nav{color:var(--navy);cursor:pointer;background:#edf8fc;border:0;border-radius:12px;width:42px;height:42px;font-size:22px;font-weight:900}.calendar-nav:hover{background:#d9f1fa}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays{color:#6a8091;text-align:center;text-transform:uppercase;letter-spacing:.05em;padding-bottom:10px;font-size:12px;font-weight:900}.calendar-day{background:#fff;border-top:1px solid #e7edf1;border-left:1px solid #e7edf1;min-height:126px;padding:10px;position:relative}.calendar-day:nth-child(7n){border-right:1px solid #e7edf1}.calendar-day:nth-last-child(-n+7){border-bottom:1px solid #e7edf1}.calendar-day.is-outside{color:#a8b5be;background:#f8fbfc}.calendar-day-number{font-size:13px;font-weight:900}.calendar-event{background:var(--coral);color:#fff;text-align:left;cursor:pointer;border:0;border-radius:9px;width:100%;margin-top:7px;padding:8px;font-size:11px;font-weight:800;line-height:1.25;display:block}:is(.calendar-event:hover,.calendar-event:focus-visible){outline-offset:2px;background:#df5b4d;outline:2px solid #17324d}.calendar-event small{opacity:.86;margin-top:3px;font-size:10px;font-weight:600;display:block}.event-modal{width:min(660px,100%)}.event-modal-image{background-position:50%;background-size:cover;border-radius:18px;height:240px;margin:-10px 0 28px}.event-modal-organiser{margin:12px 0 0;font-weight:800;color:var(--coral)!important}.event-details{grid-template-columns:1fr 1fr}.event-modal-description{color:#637b8d;line-height:1.65}@media (max-width:1000px){.search-wrap{grid-template-columns:1fr 1fr}.keyword{grid-column:1/-1}}@media (max-width:680px){.search-wrap{grid-template-columns:1fr}.keyword{grid-column:auto}.calendar-shell{padding:12px;overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:700px}.calendar-day{min-height:112px;padding:7px}.event-details{grid-template-columns:1fr}.event-modal-image{height:180px}}.boot-icon{filter:drop-shadow(0 3px #17324d18);width:78px;height:78px;bottom:-1px;right:20px;transform:rotate(-7deg)}.boot-stitch{fill:none;stroke:#17324d;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;opacity:.28}.boot-heel{opacity:.96}.brand-mark{object-fit:cover;flex:0 0 42px;padding:0}.hero-art{background-image:url(/assets/perth-skyline-bootsteps.png)}.boot-icon{object-fit:contain}.calendar-agenda{display:none}.agenda-event{color:var(--navy);text-align:left;cursor:pointer;background:#fff;border:1px solid #e3ebef;border-radius:16px;grid-template-columns:88px 1fr auto;align-items:center;gap:14px;width:100%;padding:14px}:is(.agenda-event:hover,.agenda-event:focus-visible){border-color:var(--coral);box-shadow:0 7px 20px #17324d12}.agenda-date{color:#bd4e40;text-align:center;background:#fff0ed;border-radius:11px;padding:10px 8px;font-size:12px;font-weight:900}.agenda-event strong{display:block}.agenda-event small{color:#718697;margin-top:4px;display:block}.agenda-arrow{color:var(--coral);font-size:20px;font-weight:900}.agenda-empty{color:#718697;text-align:center;background:#f7fbfc;border-radius:14px;margin:0;padding:22px}:focus-visible{outline-offset:3px;outline:3px solid #17324d}@media (max-width:680px){.calendar-shell{overflow:visible}.calendar-weekdays,.calendar-grid{min-width:0;display:none}.calendar-agenda{gap:10px;display:grid}.calendar-toolbar{gap:10px}.calendar-toolbar h3{min-width:170px;font-size:21px}.agenda-event{grid-template-columns:74px 1fr auto;gap:10px;padding:11px}.agenda-event small{line-height:1.35}.calendar-nav{flex:0 0 42px}}.listing-updated{color:#93a1ab;text-align:right;border-top:1px solid #edf1f4;margin:4px 0 0;padding-top:12px;font-size:11px}.listing-kind-picker label{border:1.5px solid #0000;transition:border-color .15s,background .15s}.listing-kind-picker label:has(input:checked){color:var(--navy);background:#fff0ed;border-color:#f5a095}.search-wrap{grid-template-columns:1.55fr .75fr .9fr 1.05fr auto;max-width:1180px}@media (max-width:1000px){.search-wrap{grid-template-columns:1fr 1fr}.keyword{grid-column:1/-1}}@media (max-width:680px){.search-wrap{grid-template-columns:1fr}.keyword{grid-column:auto}}
