@import url('tokens.css');
@font-face{font-family:Barlow;src:url('../fonts/barlow-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Barlow;src:url('../fonts/barlow-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Barlow;src:url('../fonts/barlow-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Kanit;src:url('../fonts/kanit-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Kanit;src:url('../fonts/kanit-500.ttf') format('truetype');font-weight:500;font-display:swap}
@font-face{font-family:Kanit;src:url('../fonts/kanit-600.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Kanit;src:url('../fonts/kanit-700.ttf') format('truetype');font-weight:700;font-display:swap}


*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Barlow,Arial,sans-serif;font-size:17px;line-height:1.6}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,.brand{font-family:Kanit,Arial,sans-serif;font-weight:600;line-height:1.05;letter-spacing:-.025em}h1{font-size:clamp(48px,6.7vw,96px);margin:0;text-wrap:balance}h2{font-size:clamp(34px,4vw,56px);margin:0 0 24px;text-wrap:balance}h3{font-size:28px;margin:0 0 16px}p{margin:0 0 20px;max-width:65ch}a,button{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}.wrap{width:min(1200px,calc(100% - 96px));margin:auto}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-head p{max-width:40ch;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:12px 24px;background:var(--red);color:var(--paper);border:1px solid var(--red);text-decoration:none;font-weight:600;white-space:nowrap;border-radius:2px}.btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.text-link{display:inline-block;text-underline-offset:6px;min-height:44px;padding:8px 0;font-weight:600}.tag{font-size:15px;color:var(--muted)}.skip{position:fixed;top:-100px;left:16px;z-index:100;background:var(--paper);padding:12px}.skip:focus{top:12px}header{height:88px;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between;height:100%;gap:24px}.brand{display:flex;gap:12px;align-items:center;font-size:24px;text-decoration:none;line-height:1;max-width:330px;overflow-wrap:anywhere}.brand-mark{width:32px;height:32px;flex:none;border:5px solid var(--red);border-radius:2px;transform:rotate(-8deg)}.brand small{display:block;font-family:Barlow,sans-serif;font-size:11px;font-weight:600;letter-spacing:.12em;margin-top:5px}nav{display:flex;gap:24px;align-items:center}nav a{text-decoration:none;min-height:44px;display:flex;align-items:center;font-size:15px;font-weight:600;white-space:nowrap}nav a[aria-current]{border-bottom:2px solid var(--red)}.menu-toggle{display:none}.mobile-book{display:none}footer{background:var(--blue);color:var(--paper);padding:64px 0 32px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:48px}.footer-grid h2{font-size:32px}footer a{display:inline-block;min-height:36px;text-underline-offset:5px}footer small{display:block;margin-top:32px;color:#c6d1df}.demo-note{font-size:13px;color:#c6d1df}.page-intro{padding:72px 0 48px}.page-intro h1{max-width:13ch}.page-intro p{margin-top:24px;max-width:54ch}.page-intro .tag{margin-bottom:16px}.empty{padding:32px;border:1px solid var(--line)}[hidden]{display:none!important}
@media(hover:hover) and (pointer:fine){.btn:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}nav a:hover,.text-link:hover{color:var(--red)}}.btn:active{transform:scale(.98)}
@media(max-width:1050px){nav{gap:14px}.header-inner{gap:12px}.brand{font-size:21px}.wrap{width:calc(100% - 48px)}}
@media(max-width:760px){body{font-size:16px;padding-bottom:72px}header{height:76px}.brand{font-size:21px;max-width:calc(100% - 75px)}.brand small{font-size:10px}.wrap{width:calc(100% - 48px)}.menu-toggle{display:block;border:1px solid var(--line);background:none;min-width:48px;min-height:44px;padding:8px;font-size:14px}nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:24px;box-shadow:0 16px 24px #171e2615;flex-direction:column;align-items:stretch;gap:4px}nav.open{display:flex}.mobile-book{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:var(--paper);border-top:1px solid var(--line);padding:10px 24px calc(10px + env(safe-area-inset-bottom));gap:12px}.mobile-book .btn{flex:1;padding:8px 12px}.mobile-book .call{min-width:56px;display:flex;align-items:center;justify-content:center;font-weight:600;text-decoration:none}h1{font-size:56px}.section-head{display:block}.section-head p{margin-top:20px}.page-intro{padding:48px 0 32px}.footer-grid{grid-template-columns:1fr;gap:24px}footer{padding:48px 0 32px}.footer-grid h2{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.badge-logo .brand>span:last-child{display:none}.badge-logo .brand-mark{width:54px;height:54px;border-width:8px}.wide-logo .brand-mark{display:none}.wide-logo .brand{font-size:30px;max-width:460px}.wide-logo .brand small{letter-spacing:.05em}@media(max-width:760px){.wide-logo .brand{font-size:23px;max-width:calc(100% - 65px)}}
