:root{--ink:#263b59;--blue:#a9dbea;--pink:#f1b8b7;--cream:#fff9e9;--coral:#dc655d;--yellow:#f4d767;--green:#c5dcae;--line:#263b5929}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Noto Sans TC",sans-serif;background:var(--cream);line-height:1.75}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;position:absolute;width:100%;z-index:10}.brand{display:grid;grid-template-columns:auto auto;line-height:.8;transform:rotate(-2deg)}.brand b{font-size:29px;font-weight:900}.brand span{font-size:13px;font-weight:700;align-self:end}.brand small{grid-column:1/-1;font-size:8px;letter-spacing:.5em;margin-top:8px}.site-header nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:500}.nav-cta{border:2px solid;border-radius:99px;padding:8px 18px;background:white;box-shadow:3px 3px 0}.menu-button{display:none;border:0;background:0}.hero{min-height:740px;height:100vh;display:grid;grid-template-columns:48% 52%;position:relative;overflow:hidden;background:linear-gradient(155deg,#fff8e7 0 40%,#f4c4c0)}.hero:before{content:"";position:absolute;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='90' height='90'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.hero-copy{align-self:center;padding:100px 3vw 50px 10vw;z-index:2}.kicker{font-size:10px;letter-spacing:.2em;font-weight:700;margin:0 0 18px}.hero h1,.section h2{font-family:Yomogi,sans-serif;line-height:1.3;margin:0;font-weight:400}.hero h1{font-size:clamp(48px,5.2vw,78px)}.hero h1 em{font-style:normal;color:var(--coral);position:relative}.hero h1 em:after{content:"";position:absolute;height:8px;background:var(--yellow);bottom:5px;left:0;right:0;z-index:-1;transform:rotate(-3deg)}.hero-copy>p:nth-of-type(2){margin:25px 0 32px}.hero-actions{display:flex;gap:25px;align-items:center}.button{border:2px solid;padding:13px 20px;display:flex;justify-content:space-between;min-width:180px;font-weight:700;cursor:pointer;box-shadow:4px 4px 0}.coral{background:var(--coral);color:white}.dark{background:var(--ink);color:white}.underlink{font-size:12px;font-weight:700;border-bottom:2px solid}.hero-art{position:relative;overflow:hidden}.paint-cloud{position:absolute;inset:-5%;background:radial-gradient(ellipse at 48% 45%,#9ed7e5 0 33%,transparent 34%),radial-gradient(ellipse at 75% 60%,#f3d3a9 0 34%,transparent 35%),radial-gradient(ellipse at 50% 90%,#df9c8c 0 31%,transparent 32%)}.polaroid{position:absolute;background:white;padding:22px 22px 10px;width:min(420px,62%);left:13%;top:17%;transform:rotate(4deg);box-shadow:7px 12px 25px #44536b26}.polaroid p{font-family:Yomogi;text-align:center;font-size:17px;margin:10px}.dog-art{height:400px;max-height:50vh;background:linear-gradient(140deg,#cdeaf0,#f2d4db);position:relative;overflow:hidden}.face{position:absolute;width:47%;aspect-ratio:1;background:#b87f52;border-radius:48%;left:28%;top:30%;box-shadow:0 -35px 0 25px #9f6948}.face:before,.face:after{content:"";position:absolute;width:12px;height:15px;background:#27313b;border-radius:50%;top:38%}.face:before{left:27%}.face:after{right:27%}.face b{position:absolute;width:22px;height:16px;background:#30251f;border-radius:50%;left:43%;top:57%}.ear{position:absolute;width:32%;height:44%;background:#996443;top:18%;border-radius:50%}.ear.left{left:13%;transform:rotate(25deg)}.ear.right{right:9%;transform:rotate(-25deg)}.tape{position:absolute;width:95px;height:30px;background:#f6e4a6aa;top:14%;left:40%;transform:rotate(-6deg)}.brush{position:absolute;width:230px;height:14px;background:#795231;border-radius:8px;transform:rotate(-48deg);right:-30px;bottom:19%}.brush:after{content:"";position:absolute;border-right:55px solid var(--coral);border-top:12px solid transparent;border-bottom:12px solid transparent;left:-55px;top:-5px}.hero-stamp{position:absolute;right:4vw;bottom:4vw;width:100px;height:100px;border:2px solid;border-radius:50%;display:grid;place-items:center;text-align:center;font-weight:900;font-size:12px;line-height:1.2;transform:rotate(9deg);background:var(--yellow)}.ticker{overflow:hidden;background:var(--ink);color:white;padding:11px 0;white-space:nowrap}.ticker div{font-family:Yomogi;font-size:18px;word-spacing:22px;animation:scroll 25s linear infinite}@keyframes scroll{to{transform:translateX(-50%)}}.section{padding:110px 10vw}.section h2{font-size:clamp(38px,4.2vw,60px)}.about{display:grid;grid-template-columns:52% 40%;gap:8%;align-items:center;background:#eff8f7}.about-pics{height:500px;position:relative}.pic{position:absolute;display:grid;place-items:center;border:15px solid white;box-shadow:7px 8px 0 #263b5920;font-family:Yomogi}.pic-a{width:60%;height:70%;left:2%;top:5%;background:linear-gradient(150deg,#85cbdc,#f8d9a7 60%,#da887c);transform:rotate(-5deg)}.pic-a span{background:white;padding:8px}.pic-b{width:48%;height:58%;right:4%;bottom:0;background:var(--yellow);font-size:60px;font-weight:900;transform:rotate(7deg)}.about-pics i{position:absolute;font-size:70px;right:4%;top:0;color:var(--coral)}.about-copy>p:nth-of-type(2){color:#56647a}.about-copy ul{padding:0;list-style:none;margin:25px 0}.about-copy li:before{content:"✓";display:inline-grid;place-items:center;background:var(--yellow);width:22px;height:22px;border-radius:50%;margin-right:10px}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-title>p{font-size:13px}.courses{background:#f5c8c4}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.course-card{background:var(--cream);border:2px solid;box-shadow:6px 6px 0;transition:.25s;cursor:pointer}.course-card:hover{transform:translate(-3px,-3px);box-shadow:9px 9px 0}.course-art{height:260px;display:grid;place-items:center;background:var(--card);border-bottom:2px solid;font-family:Yomogi;font-size:80px;position:relative}.course-art:after{content:"";width:180px;height:180px;border:4px dashed white;border-radius:50%;position:absolute;transform:rotate(15deg)}.course-art span{z-index:1}.course-body{padding:22px}.course-meta{font-size:9px;letter-spacing:.14em;font-weight:700}.course-body h3{font-family:Yomogi;font-size:27px;margin:6px 0}.course-body p{font-size:12px;color:#647087;min-height:65px}.course-footer{border-top:1px dashed;padding-top:12px;display:flex;justify-content:space-between;font-size:12px}.works{background:var(--blue)}.works-head{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:45px}.works-head .kicker{grid-column:1}.works-head h2{grid-row:2}.works-head>span{font-family:Yomogi;font-size:34px;transform:rotate(8deg);color:var(--coral);background:var(--cream);padding:5px 20px}.gallery{display:grid;grid-template-columns:1.2fr .8fr 1fr;grid-template-rows:260px 250px;gap:20px}.gallery figure{margin:0;background:white;padding:12px 12px 8px;box-shadow:5px 7px 0 #263b5933}.gallery .g1{grid-row:1/3}.gallery .g4{grid-column:2/4}.art{height:calc(100% - 35px);display:grid;place-items:center;font-size:90px}.pet{background:linear-gradient(140deg,#f2d1d0,#a8dce7)}.flower{background:#f4d263;color:var(--coral)}.macao{background:#dd8d82;font-family:Yomogi}.cat{background:#c1dba7}figcaption{font-family:Yomogi}.instagram-link{display:block;width:max-content;margin:45px auto 0;border-bottom:2px solid;font-weight:700}.schedule{background:var(--cream)}.month-switch{display:flex;align-items:center;gap:15px}.month-switch button{background:white;border:2px solid;width:36px;height:36px}.filter-row{display:flex;gap:10px;margin-bottom:25px}.filter-row button{border:2px solid;background:white;padding:7px 17px;border-radius:99px}.filter-row button.active{background:var(--ink);color:white}.schedule-item{display:grid;grid-template-columns:95px 1fr 150px 120px;align-items:center;padding:22px 15px;border-top:2px dashed var(--line)}.date-box strong{font-family:Yomogi;font-size:29px}.date-box span,.class-info p,.teacher{font-size:11px}.class-info h3{font-family:Yomogi;font-size:22px;margin:0}.schedule-item .button{min-width:0;padding:9px 12px;background:var(--yellow)}.empty-state{text-align:center;padding:40px}.signup{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--green)}.bubble{display:inline-block;background:var(--coral);color:white;padding:7px 15px;border-radius:50%;transform:rotate(-7deg);font-family:Yomogi;font-size:17px;margin-bottom:35px}.contact{margin-top:50px}.contact span{display:block;font-size:11px}.contact b{font-family:Yomogi;font-size:23px}.signup form{background:var(--cream);border:2px solid;padding:35px;box-shadow:8px 8px 0}form label{display:block;font-size:11px;font-weight:700;margin-bottom:18px}input,select,textarea{width:100%;border:0;border-bottom:2px solid var(--line);background:transparent;padding:9px 0;outline:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.consent{display:flex;gap:8px}.consent input{width:auto}.signup form .button{width:100%}#formStatus{text-align:center;font-size:12px}footer{background:var(--ink);color:white;padding:60px 10vw 30px;display:grid;grid-template-columns:1fr 1fr;gap:35px}footer>p{opacity:.65}footer>div{display:flex;gap:25px;justify-content:flex-end;font-size:11px}footer>small{grid-column:1/-1;border-top:1px solid #ffffff33;padding-top:20px;font-size:8px;opacity:.5}
@media(max-width:800px){.site-header{height:68px;padding:0 22px}.site-header nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--cream);padding:25px;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.menu-button{display:block}.menu-button i{display:block;width:22px;height:2px;background:var(--ink);margin:5px}.hero{height:auto;display:block;padding-top:68px}.hero-copy{padding:70px 24px 55px}.hero-art{height:520px}.polaroid{width:70%;left:12%;top:8%}.dog-art{height:350px}.section{padding:80px 24px}.about{grid-template-columns:1fr}.about-pics{height:400px}.section-title{display:block}.course-grid{grid-template-columns:1fr}.gallery{display:block}.gallery figure{height:320px;margin-bottom:20px}.works-head{display:block}.schedule-item{grid-template-columns:65px 1fr;gap:8px;padding:18px 0}.teacher,.schedule-item .button{grid-column:2}.schedule-item .button{width:max-content}.signup{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}footer{grid-template-columns:1fr;padding:50px 24px 25px}footer>div{justify-content:flex-start;flex-wrap:wrap}footer>small{grid-column:1}}
