html,body{max-width:100%;overflow-x:hidden}img,svg{max-width:100%}code{overflow-wrap:anywhere}.menu,.btn,.nav a{min-height:44px}.menu{min-width:44px;align-items:center;justify-content:center}.nav a{display:inline-flex;align-items:center}.content{width:100%}

@media(max-width:1080px){.wrap{width:min(960px,92%)}.header-inner{gap:16px}.nav{gap:12px}.hero{gap:24px}.card{padding:21px}}

@media(max-width:900px){.brand{font-size:14px}.nav{font-size:12px;gap:9px}.hero{min-height:500px}.visual{max-width:320px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

@media(max-width:820px){.header-inner{height:64px}.site-header{position:sticky}.nav{top:64px;max-height:calc(100vh - 64px);overflow-y:auto;box-shadow:0 14px 25px #0d302018}.nav a{width:100%;padding:9px 0}.nav .lang{width:auto;padding:8px 11px}.menu{display:flex}.hero{min-height:auto;grid-template-columns:1fr;padding:52px 0 58px}.visual{max-width:240px}.grid{grid-template-columns:1fr}.page-hero{padding:46px 0 40px}.page-hero h1{margin-bottom:16px}.content h2{margin-top:36px}.footer .wrap{align-items:flex-start}}

@media(max-width:640px){.wrap{width:92%}.notice{padding:8px 4%;line-height:1.45}.brand img{width:32px;height:32px}.hero{padding:42px 0 48px}.hero>div:first-child{min-width:0}h1{font-size:clamp(40px,14vw,58px);letter-spacing:-2.2px;margin:18px 0}h2{font-size:clamp(28px,9vw,38px);letter-spacing:-1.2px}.lead{font-size:15px}.actions{flex-direction:column;align-items:stretch}.actions .btn{width:100%;padding:13px 16px}.visual{max-width:205px}.strip .wrap{display:grid;grid-template-columns:1fr 1fr;padding:18px 0;gap:13px}.section{padding:48px 0}.card{min-height:0;padding:20px}.resource{min-height:112px}.content h2{font-size:27px}.content ol,.content ul{padding-left:22px}.callout,.legal{padding:16px}.footer{padding:28px 0}.footer .wrap{flex-direction:column;gap:12px}.breadcrumb{padding-top:24px}.page-hero h1{font-size:clamp(38px,13vw,54px)}code{font-size:.9em}}

@media(max-width:390px){.brand{letter-spacing:-.3px}.brand img{width:30px;height:30px}.strip .wrap{grid-template-columns:1fr}h1{font-size:39px}.page-hero h1{font-size:37px}.card{padding:18px}.resource{align-items:flex-start}}

@media(orientation:landscape) and (max-height:520px) and (max-width:900px){.nav{max-height:calc(100vh - 64px)}.hero{grid-template-columns:1.15fr .85fr;padding:32px 0}.visual{max-width:180px}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

