@font-face{font-family:'IBM Plex Sans Thai';src:url('/fonts/IBMPlexSansThai-Regular.ttf')}@font-face{font-family:'IBM Plex Sans Thai';src:url('/fonts/IBMPlexSansThai-SemiBold.ttf');font-weight:600 800}:root{--yellow:#ffd928;--ink:#151515;--paper:#f7f4e9;--red:#c72b22;--green:#168358;--line:#1d1d1d}[hidden]{display:none!important}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'IBM Plex Sans Thai',sans-serif;line-height:1.55}a{color:inherit}.coursebar{padding:7px clamp(16px,4vw,60px);display:flex;justify-content:space-between;background:var(--ink);color:white;font-size:12px}.coursebar a{text-decoration:none}nav{height:88px;padding:0 clamp(16px,4vw,60px);display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid var(--ink);background:var(--yellow);position:sticky;top:0;z-index:10}.logo{font:30px 'IBM Plex Sans Thai';text-decoration:none;letter-spacing:-.08em}.logo span{color:var(--red)}nav div{display:flex;gap:30px;font-weight:700}nav div a{text-decoration:none}.hero{min-height:660px;display:grid;grid-template-columns:1fr 1fr;background:var(--yellow);border-bottom:3px solid var(--ink)}.hero>div{padding:clamp(60px,9vw,130px) clamp(20px,6vw,88px)}.kicker{font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}h1,h2,h3,p,figure{margin-top:0}h1,h2{font-family:'IBM Plex Sans Thai','IBM Plex Sans Thai';letter-spacing:-.06em;line-height:.91}h1{font-size:clamp(64px,9vw,132px);margin:30px 0}.lead{max-width:480px;font-size:19px}.cta{display:inline-block;margin-top:25px;padding:15px 20px;background:var(--ink);color:white;text-decoration:none;font-weight:700;box-shadow:7px 7px 0 var(--red)}.hero figure{margin:0;position:relative;border-left:3px solid var(--ink);overflow:hidden}.hero img{width:100%;height:100%;object-fit:cover}.tape{position:absolute;right:-45px;top:50px;z-index:1;transform:rotate(11deg);padding:12px 80px;background:var(--red);color:white;font-weight:700}.ticker{display:flex;justify-content:space-around;gap:30px;padding:13px;background:var(--ink);color:var(--yellow);font-size:12px;font-weight:700;text-transform:uppercase;overflow:hidden}.ticker span::before{content:'✦';margin-right:30px}.inventory{padding:110px clamp(18px,5vw,72px)}.inventory>header{display:grid;grid-template-columns:140px 1fr auto;align-items:end;margin-bottom:50px}.inventory h2,.booking h2{font-size:clamp(46px,6vw,82px);margin-bottom:0}.filters{display:flex;border:2px solid}.filters button{border:0;border-right:2px solid;padding:10px 14px;background:transparent;font:600 13px inherit;cursor:pointer}.filters button:last-child{border:0}.filters button.active{background:var(--ink);color:white}.catalog-state{padding:30px;border:2px dashed;display:flex;gap:15px;align-items:center}.catalog-state span{flex:1}.catalog-state button{padding:10px 16px;background:var(--yellow);border:2px solid;font:600 inherit}.gear-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.gear-card{border:2px solid;background:#fff}.gear-visual{height:240px;padding:18px;display:flex;justify-content:space-between;align-items:start;border-bottom:2px solid;background:repeating-linear-gradient(135deg,#efefef 0 12px,#fff 12px 24px)}.visual-light{background:repeating-radial-gradient(circle at center,#ffd928 0 18px,#fff 19px 35px)}.visual-audio{background:linear-gradient(90deg,#eb4d3d 0 28%,#ffcdd0 28% 65%,#151515 65%)}.gear-visual span{font:28px 'IBM Plex Sans Thai'}.gear-visual b{padding:4px 8px;background:var(--ink);color:white;font-size:11px}.gear-info{padding:22px}.gear-info small{font-weight:700;color:var(--green)}.gear-info h3{font-size:27px;margin:12px 0}.gear-info p{min-height:74px}.gear-info>div{display:flex;align-items:baseline;gap:6px}.gear-info strong{font:28px 'IBM Plex Sans Thai'}.gear-info button{width:100%;margin-top:20px;padding:13px;border:2px solid;background:var(--yellow);font:700 15px inherit;cursor:pointer}.booking{padding:100px clamp(18px,5vw,72px);display:grid;grid-template-columns:1fr 1.2fr;gap:7vw;background:var(--yellow);border-block:3px solid}.booking-intro aside{margin-top:45px;padding:20px;border:2px solid;background:#fff}.booking-intro aside b,.booking-intro aside span{display:block}fieldset{padding:0;border:0;margin:0 0 30px}label{display:block;margin-bottom:20px;font-weight:700;font-size:13px}input,select{display:block;width:100%;padding:13px 10px;border:2px solid;background:white;font:inherit}.form-row{display:grid;grid-template-columns:1fr 1fr 100px;gap:12px}.date-note{font-size:12px;font-weight:500;margin-top:-8px}.date-note+.availability{min-height:76px;padding:14px 16px;border:2px dashed;background:rgba(255,255,255,.4)}.availability b,.availability span{display:block}.availability.ok{border-style:solid;background:#d9f4e8}.availability.unavailable{border-style:solid;background:#ffd9d5}.consent{display:flex;gap:10px;font-weight:500}.consent input{width:auto}.trap,.sr-only{position:absolute;left:-9999px}.reserve{width:100%;padding:16px 20px;display:flex;justify-content:space-between;background:var(--ink);color:white;border:0;font:700 17px inherit;cursor:pointer}.reserve:disabled{opacity:.45}.form-status{min-height:28px}.success{color:#075a38;font-weight:700}.error{color:#a51e16;font-weight:700}footer{padding:45px clamp(18px,5vw,72px);display:flex;align-items:end;justify-content:space-between;background:var(--ink);color:white}footer p{font-size:12px;margin:0}@media(max-width:800px){.coursebar span{display:none}.hero{grid-template-columns:1fr}.hero figure{height:480px;border-left:0;border-top:3px solid}.inventory>header{grid-template-columns:1fr}.filters{margin-top:25px;overflow:auto}.gear-grid{grid-template-columns:1fr}.booking{grid-template-columns:1fr}.form-row{grid-template-columns:1fr 1fr}.form-row label:last-child{grid-column:1/-1}footer{gap:25px;align-items:start;flex-direction:column}.ticker{justify-content:flex-start}}
