*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fcfbfa;color:#231e1b;font-family:'IBM Plex Sans','IBM Plex Sans Thai',system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-wrap:pretty}
a{color:#c1272d;text-decoration:none}
a:hover{color:#9d1f24}
h1,h2,h3,h4{margin:0;font-family:'Archivo','IBM Plex Sans Thai',sans-serif;letter-spacing:-0.03em;line-height:1.05}
img{max-width:100%}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* --- Responsive. Layouts are authored as inline styles, so breakpoints match on the
   browser-normalised style attribute (space after every colon and comma) and override
   with !important. Keep these strings in sync with the page templates. --- */
@media (max-width:1080px){
  [style*="repeat(6, 1fr)"]{grid-template-columns:repeat(3,1fr)!important}
  [style*="repeat(4, 1fr)"]{grid-template-columns:repeat(2,1fr)!important}
  [style*="repeat(3, 1fr)"]{grid-template-columns:repeat(2,1fr)!important}
  [style*="0.85fr 1.15fr"],[style*="1.15fr 0.85fr"],[style*="0.9fr 1.1fr"],[style*="1.1fr 0.9fr"],
  [style*="1.3fr 0.7fr"],[style*="1.4fr 1fr 1fr 1fr"]{grid-template-columns:1fr!important}
  [style*="gap: 80px"],[style*="gap: 72px"]{gap:44px!important}
  [style*="gap: 64px"],[style*="gap: 56px"]{gap:36px!important}
  [style*="font-size: 74px"]{font-size:48px!important}
  [style*="padding: 64px"],[style*="padding: 56px"]{padding:36px!important}
}
@media (max-width:1000px){
  [data-nav="links"]{display:none!important}
  [data-nav="tag"]{display:none!important}
  [data-nav="burger"]{display:flex!important}
}
@media (max-width:760px){
  [style*="repeat(2, 1fr)"],[style*="repeat(3, 1fr)"],[style*="repeat(4, 1fr)"],
  [style*="repeat(6, 1fr)"],[style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important}
  section{padding-left:20px!important;padding-right:20px!important}
  h1{font-size:34px!important}
  h2{font-size:25px!important}
  [style*="font-size: 74px"]{font-size:34px!important}
  [style*="font-size: 56px"]{font-size:32px!important}
  [style*="padding: 64px"],[style*="padding: 56px"],[style*="padding: 36px"],
  [style*="padding: 34px"],[style*="padding: 30px"]{padding:24px!important}
  footer{padding-left:20px!important;padding-right:20px!important}
}
